
/* WARNING: Enum "GravityType": Some values do not have unique names */
/* WARNING: Enum "DisposeType": Some values do not have unique names */
/* WARNING: Enum "ChannelType": Some values do not have unique names */
/* WARNING: Enum "PixelChannel": Some values do not have unique names */
/* WARNING: Enum "ExceptionType": Some values do not have unique names */

size_t convertHTMLcodes(char *s)

{
  undefined1 uVar16;
  char *pcVar1;
  int iVar2;
  int iVar3;
  size_t sVar4;
  undefined1 *puVar5;
  char cVar17;
  int iVar6;
  int iVar7;
  byte bVar18;
  int iVar8;
  int iVar9;
  int iVar10;
  Image *ofile;
  Image *ifile;
  undefined4 uVar11;
  uint uVar12;
  int iVar13;
  int iVar14;
  undefined4 uVar15;
  undefined4 extraout_v1;
  uint extraout_v1_00;
  uint extraout_v1_01;
  undefined4 extraout_v1_02;
  undefined4 extraout_v1_03;
  undefined4 extraout_v1_04;
  undefined4 extraout_v1_05;
  char *in_a1;
  int iVar19;
  int iVar20;
  undefined1 *puVar21;
  int iVar22;
  char *unaff_s1;
  char *pcVar23;
  char *unaff_s2;
  int iVar24;
  int unaff_s3;
  undefined4 *puVar25;
  char *unaff_s4;
  int iVar26;
  BlobInfo *pBVar27;
  char *unaff_s5;
  char *pcVar28;
  int unaff_s6;
  int iVar29;
  uint uVar30;
  int unaff_s7;
  undefined *puVar31;
  int *unaff_s8;
  code *pcVar32;
  Image *pIStack_10fc;
  undefined1 *puStack_10ec;
  uint uStack_10e4;
  undefined1 *puStack_10dc;
  uint uStack_10d4;
  int iStack_10cc;
  uint uStack_10c8;
  undefined1 uStack_10b0;
  undefined1 uStack_10af;
  char cStack_10ae;
  undefined1 uStack_10ad;
  undefined4 uStack_10ac;
  int iStack_10a8;
  undefined4 uStack_10a4;
  undefined4 uStack_10a0;
  undefined4 uStack_109c;
  undefined4 uStack_1098;
  undefined1 auStack_1094 [4];
  undefined4 uStack_1090;
  undefined4 uStack_108c;
  undefined1 uStack_1088;
  undefined1 auStack_1084 [4096];
  int iStack_84;
  char *pcStack_80;
  char *pcStack_7c;
  char *pcStack_78;
  int iStack_74;
  char *pcStack_70;
  char *pcStack_6c;
  int iStack_68;
  int iStack_64;
  int *piStack_60;
  code *pcStack_5c;
  int value;
  int local_2c;
  
  puVar31 = PTR_s__003f9950;
  local_2c = *(int *)PTR___stack_chk_guard_003fa248;
  if (*s == '\0') {
    pcVar1 = (char *)0x0;
  }
  else {
    unaff_s2 = s;
    if (*s == ';') {
      pcVar1 = (char *)0x1;
LAB_0028466c:
      if (s == (char *)0x0) {
        pcVar1 = (char *)0x0;
      }
      else {
        if (((char *)0x3 < pcVar1) && (s[1] == '#')) {
          in_a1 = PTR_s__003f9950 + -0x4900;
          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(s,in_a1,&value);
          unaff_s4 = puVar31 + -0x46bf;
          if (iVar20 == 1) {
            if (s[3] == ';') {
              pcVar1 = (char *)0x3;
LAB_002848d4:
              unaff_s1 = s + (int)(pcVar1 + 1);
              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);
              in_a1 = unaff_s1;
              (*(code *)PTR_memmove_003f9f68)(s + 1,unaff_s1,iVar20 + 1);
            }
            else {
              if (s[4] == ';') {
                pcVar1 = &DAT_00000004;
                goto LAB_002848d4;
              }
              if (s[5] == ';') {
                pcVar1 = &DAT_00000005;
                goto LAB_002848d4;
              }
              pcVar1 = &DAT_00000006;
            }
            *s = (char)value;
            goto LAB_00284620;
          }
        }
        unaff_s4 = puVar31 + -0x46bf;
        unaff_s6 = 0;
        do {
          pcVar28 = (char *)(uint)(byte)unaff_s4[-1];
          unaff_s1 = unaff_s4;
          unaff_s5 = pcVar28;
          if ((int)pcVar28 <= (int)pcVar1) {
            if (s != unaff_s4) {
              iVar20 = (int)*s;
              unaff_s5 = s;
              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {
                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();
                pcVar23 = unaff_s4;
                while( true ) {
                  unaff_s7 = iVar20;
                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {
                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);
                  }
                  iVar20 = (int)*pcVar23;
                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {
                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);
                  }
                  unaff_s1 = pcVar23;
                  if ((unaff_s7 != iVar20) ||
                     (unaff_s1 = unaff_s4 + (int)(pcVar28 + -1),
                     unaff_s4 + (int)(pcVar28 + -1) == pcVar23)) break;
                  unaff_s5 = unaff_s5 + 1;
                  iVar20 = (int)*unaff_s5;
                  pcVar23 = pcVar23 + 1;
                  unaff_s1 = pcVar23;
                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;
                }
              }
              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);
              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);
              if (unaff_s3 != iVar20) goto LAB_002847f0;
            }
            in_a1 = s + (int)pcVar28;
            iVar20 = (*(code *)PTR_strlen_003fa350)(in_a1);
            (*(code *)PTR_memmove_003f9f68)(s + 1,in_a1,iVar20 + 1);
            *s = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];
            pcVar1 = pcVar28 + -1;
            goto LAB_00284620;
          }
LAB_002847f0:
          unaff_s6 = unaff_s6 + 1;
          unaff_s4 = unaff_s4 + 9;
        } while (unaff_s6 != 3);
        pcVar1 = (char *)0x0;
      }
    }
    else {
      pcVar1 = s + 1;
      iVar20 = 1;
      in_a1 = &DAT_00000007;
      do {
        if (*pcVar1 == '\0') {
          pcVar1 = (char *)0x0;
          goto LAB_00284620;
        }
        if (*pcVar1 == ';') {
          pcVar1 = (char *)(iVar20 + 1);
          if (pcVar1 == (char *)0x0) goto LAB_00284620;
          goto LAB_0028466c;
        }
        iVar20 = iVar20 + 1;
        pcVar1 = pcVar1 + 1;
      } while (iVar20 != 7);
      pcVar1 = (char *)0x0;
    }
  }
LAB_00284620:
  if (local_2c == *(int *)PTR___stack_chk_guard_003fa248) {
    return (size_t)pcVar1;
  }
  pcVar32 = ReadMETAImage;
  iVar20 = local_2c;
  puVar31 = PTR___stack_chk_fail_003fa07c;
  (*(code *)PTR___stack_chk_fail_003fa07c)();
  iStack_84 = **(int **)(puVar31 + 0x175918);
  pcStack_80 = pcVar1;
  pcStack_7c = unaff_s1;
  pcStack_78 = unaff_s2;
  iStack_74 = unaff_s3;
  pcStack_70 = unaff_s4;
  pcStack_6c = unaff_s5;
  iStack_68 = unaff_s6;
  iStack_64 = unaff_s7;
  piStack_60 = unaff_s8;
  pcStack_5c = pcVar32;
  if (iVar20 == 0) {
    sVar4 = (**(code **)(puVar31 + 0x175cf0))
                      (*(int *)(puVar31 + 0x174fb0) + 0x3d48,*(int *)(puVar31 + 0x175020) + -0x48cc,
                       0x4a5,*(int *)(puVar31 + 0x175020) + -0x46f0);
    return sVar4;
  }
  if (*(int *)(iVar20 + 0x3214) != -0x54535255) {
    sVar4 = (**(code **)(puVar31 + 0x175cf0))
                      (*(int *)(puVar31 + 0x174fb0) + 0x3d70,*(int *)(puVar31 + 0x175020) + -0x48cc,
                       0x4a6,*(int *)(puVar31 + 0x175020) + -0x46f0);
    return sVar4;
  }
  if (*(int *)(iVar20 + 0x3210) != 0) {
    (**(code **)(puVar31 + 0x1758c8))
              (0x8000,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,
               0x4a8,*(int *)(puVar31 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210);
  }
  if (in_a1 == (char *)0x0) {
    sVar4 = (**(code **)(puVar31 + 0x175cf0))
                      (*(int *)(puVar31 + 0x174fb0) + 0x4c80,*(int *)(puVar31 + 0x175020) + -0x48cc,
                       0x4aa,*(int *)(puVar31 + 0x175020) + -0x46f0);
    return sVar4;
  }
  if (*(int *)(in_a1 + 0x1c) != -0x54535255) {
    sVar4 = (**(code **)(puVar31 + 0x175cf0))
                      (*(int *)(puVar31 + 0x174fb0) + 0x595c,*(int *)(puVar31 + 0x175020) + -0x48cc,
                       0x4ab,*(int *)(puVar31 + 0x175020) + -0x46f0);
    return sVar4;
  }
  pIStack_10fc = (Image *)(**(code **)(puVar31 + 0x175cf4))(iVar20,in_a1);
  iVar2 = (**(code **)(puVar31 + 0x175934))(iVar20,pIStack_10fc,2,in_a1);
  if (iVar2 == 0) {
    (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);
    pIStack_10fc = (Image *)0x0;
    goto LAB_00287858;
  }
  pIStack_10fc->columns = 1;
  pIStack_10fc->rows = 1;
  iVar2 = (**(code **)(puVar31 + 0x175578))(pIStack_10fc,in_a1);
  if (iVar2 == 0) {
    (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);
    pIStack_10fc = (Image *)0x0;
    goto LAB_00287858;
  }
  iVar2 = iVar20 + 0x210;
  iVar3 = (**(code **)(puVar31 + 0x175d04))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x7890,4);
  if (iVar3 == 0) {
    iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);
    if (iVar3 == 0) {
      (**(code **)(puVar31 + 0x175608))
                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700
                 ,0x4c2,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,
                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);
      if (pIStack_10fc != (Image *)0x0) {
        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);
        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);
        pIStack_10fc = (Image *)0x0;
      }
      goto LAB_00287858;
    }
    puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(1,1);
    if (puVar5 == (undefined1 *)0x0) {
      (**(code **)(puVar31 + 0x175634))(iVar3);
      (**(code **)(puVar31 + 0x175608))
                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700
                 ,0x4c7,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,
                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);
      if (pIStack_10fc != (Image *)0x0) {
        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);
        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);
        pIStack_10fc = (Image *)0x0;
      }
      goto LAB_00287858;
    }
    *puVar5 = 0;
    (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),puVar5);
    iVar19 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78a0);
    if (iVar19 != 0) {
      iVar19 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78ac);
      if (iVar19 == 0) {
        puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(0x1000,1);
        if (puVar5 != (undefined1 *)0x0) {
          uVar15 = (**(code **)(puVar31 + 0x175bdc))();
          iStack_10cc = 0x1000;
          uStack_10d4 = 0;
          uStack_10c8 = 0;
          puStack_10dc = (undefined1 *)0x0;
          cVar17 = '\0';
          puStack_10ec = (undefined1 *)0x0;
          iVar19 = 0;
          iVar26 = 0;
          iVar13 = *(int *)(puVar31 + 0x175020);
          iVar22 = *(int *)(puVar31 + 0x1752b0);
          iVar14 = *(int *)(puVar31 + 0x174fb8);
          puVar21 = puVar5;
LAB_00285dec:
          do {
            iVar9 = (**(code **)(puVar31 + 0x175a78))(pIStack_10fc);
            if ((iVar9 != -1) && (iVar9 != 10)) {
              iVar10 = (**(code **)(puVar31 + 0x175e30))(pIStack_10fc);
              iVar24 = (int)puVar21 - (int)puVar5;
              if (iVar10 == 0) {
                if (iStack_10cc <= iVar24 + 1) {
                  iStack_10cc = iStack_10cc * 2;
                  puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1)
                  ;
                  if (puVar5 == (undefined1 *)0x0) goto LAB_00285f24;
                  puVar21 = puVar5 + iVar24;
                }
                *puVar21 = (char)iVar9;
                puVar21 = puVar21 + 1;
                goto LAB_00285dec;
              }
            }
            if ((puVar5 == (undefined1 *)0x0) ||
               (iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0))
            goto LAB_00285f24;
            *puVar21 = 0;
            uStack_10ac = 0;
            iVar26 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);
            if (iVar26 == 0) {
              (**(code **)(puVar31 + 0x175450))(uVar15);
              goto LAB_00287bf8;
            }
            iVar19 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);
            if (iVar19 == 0) {
              (**(code **)(puVar31 + 0x175450))(uVar15);
              iVar19 = 0;
              goto LAB_00287be8;
            }
            iVar10 = *(int *)(puVar31 + 0x174fc8);
            iVar24 = *(int *)(puVar31 + 0x174fb8) + -0x2d8;
            iVar9 = 0;
            while (iVar7 = (**(code **)(puVar31 + 0x175720))
                                     (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,
                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),
                  iVar7 == 0) {
              if (iVar9 == 0) {
                iStack_10a8 = 0;
                iVar8 = *(int *)(puVar31 + 0x174fc8);
                iVar29 = *(int *)(puVar31 + 0x174fb0);
                iVar7 = 0;
LAB_002857fc:
                do {
                  iVar6 = (**(code **)(puVar31 + 0x175720))
                                    (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,
                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);
                  if (iVar6 != 0) goto LAB_00285914;
                  if (iVar7 == 1) {
                    puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175a28))(iVar19,0,10);
                  }
                  else if (iVar7 == 2) {
                    iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);
                    puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1)
                    ;
                    if (puStack_10ec != (undefined1 *)0x0) {
                      iVar7 = (**(code **)(puVar31 + 0x175a20))(iVar19);
                      (**(code **)(puVar31 + 0x175f24))(puStack_10ec,iVar19,iVar7 + 0x1000);
                      iVar7 = 3;
                      goto LAB_002857fc;
                    }
                  }
                  else if (iVar7 == 0) {
                    iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);
                    if (iVar6 == 0) {
                      cVar17 = -1;
                    }
                    else {
                      cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);
                    }
                  }
                  iVar7 = iVar7 + 1;
                } while( true );
              }
              if (iVar9 != 1) goto LAB_00285914;
              iStack_10a8 = 0;
              uVar12 = (**(code **)(puVar31 + 0x175a20))();
              while (iVar7 = (**(code **)(puVar31 + 0x175720))
                                       (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,
                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0
                    ) {
                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {
                  iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);
                  if ((int)uVar12 < iVar7) {
                    uVar12 = 0;
                  }
                  else {
                    uVar12 = uVar12 - iVar7;
                  }
                }
              }
              if (cVar17 == -1) {
                if (0 < (int)uStack_10c8) {
                  iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);
                  if ((iVar7 < 0) || (iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3), iVar7 < 0))
                  goto LAB_00287db0;
                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);
                  iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);
                  if (iVar7 < 0) goto LAB_00287db0;
                  uStack_10c8 = 0;
                }
                if ((uStack_10d4 & 1) != 0) {
                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);
                  uStack_10d4 = uStack_10d4 + 1;
                }
                (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);
                (**(code **)(puVar31 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);
                if (puStack_10ec == (undefined1 *)0x0) {
                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);
                  iVar7 = uStack_10d4 + 7;
LAB_00287bac:
                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);
                  iVar7 = iVar7 + 1;
                }
                else {
                  bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10ec);
                  (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);
                  uVar30 = (uint)bVar18;
                  if (uVar30 != 0) {
                    puVar21 = puStack_10ec;
                    do {
                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);
                      puVar21 = puVar21 + 1;
                    } while (puVar21 != puStack_10ec + uVar30);
                  }
                  iVar7 = uStack_10d4 + 7 + uVar30;
                  if ((bVar18 & 1) == 0) goto LAB_00287bac;
                }
                if (puStack_10dc == (undefined1 *)0x404) {
                  iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);
                  if (iVar8 < 0) goto LAB_00287db0;
                  (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);
                  uStack_10d4 = iVar7 + 4;
                  uStack_10c8 = uStack_10d4;
                }
                else {
                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);
                  iStack_10a8 = 0;
                  uStack_10d4 = uVar12 + iVar7 + 4;
                  iVar7 = uVar12 - 1;
                  if (uVar12 != 0) {
                    iStack_10a8 = 0;
                    do {
                      puVar21 = (undefined1 *)(iVar26 + iStack_10a8);
                      iStack_10a8 = iStack_10a8 + 1;
                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);
                      iVar7 = iVar7 + -1;
                    } while (iVar7 != -1);
                  }
                  if ((uStack_10d4 & 1) != 0) {
                    (**(code **)(puVar31 + 0x1756c4))(iVar3,0);
                    uStack_10d4 = uStack_10d4 + 1;
                  }
                }
LAB_00285914:
                iVar9 = iVar9 + 1;
              }
              else {
                if (0x7fff < (int)uVar12) goto LAB_00285914;
                (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);
                (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);
                (**(code **)(puVar31 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);
                (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);
                iStack_10a8 = 0;
                uStack_10d4 = uVar12 + uStack_10d4 + 5;
                iVar7 = uVar12 - 1;
                if (uVar12 == 0) goto LAB_00285914;
                iStack_10a8 = 0;
                do {
                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);
                  iStack_10a8 = iStack_10a8 + 1;
                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);
                  iVar7 = iVar7 + -1;
                } while (iVar7 != -1);
                iVar9 = 2;
              }
            }
            iVar26 = (**(code **)(puVar31 + 0x17575c))(iVar26);
            iVar19 = (**(code **)(puVar31 + 0x17575c))(iVar19);
            puVar21 = puVar5;
            if (puStack_10ec != (undefined1 *)0x0) {
              puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10ec);
            }
          } while( true );
        }
        goto LAB_00287db0;
      }
      iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);
      if (iVar19 != 0) {
        (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);
        do {
          iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);
          if (iVar13 == 0) goto LAB_00286038;
          iVar22 = 0;
          if (0 < iVar13) {
            do {
              iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);
              if (iVar14 < 1) {
                if (iVar22 < iVar13) goto LAB_00286038;
                break;
              }
              iVar22 = iVar22 + iVar14;
            } while (iVar22 < iVar13);
          }
        } while( true );
      }
      uStack_10d4 = 1;
      goto LAB_00286050;
    }
    puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(0x1000,1);
    if (puVar5 == (undefined1 *)0x0) {
LAB_0028544c:
      uStack_10d4 = 0xffffffff;
    }
    else {
      uVar15 = (**(code **)(puVar31 + 0x175bdc))();
      iStack_10cc = 0x1000;
      uStack_10d4 = 0;
      uStack_10c8 = 0;
      uStack_10e4 = 0;
      cVar17 = '\0';
      puStack_10dc = (undefined1 *)0x0;
      iVar19 = 0;
      iVar26 = 0;
      iVar13 = *(int *)(puVar31 + 0x175020);
      iVar22 = *(int *)(puVar31 + 0x1752b0);
      iVar14 = *(int *)(puVar31 + 0x174fb8);
      puVar21 = puVar5;
      while( true ) {
        while ((iVar9 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar9 != -1 &&
               (iVar10 = (int)puVar21 - (int)puVar5, iVar9 != 10))) {
          if (iStack_10cc <= iVar10 + 1) {
            iStack_10cc = iStack_10cc * 2;
            puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1);
            if (puVar5 == (undefined1 *)0x0) goto LAB_0028573c;
            puVar21 = puVar5 + iVar10;
          }
          *puVar21 = (char)iVar9;
          puVar21 = puVar21 + 1;
        }
        if ((puVar5 == (undefined1 *)0x0) ||
           (iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0)) break;
        *puVar21 = 0;
        uStack_10ac = 0;
        iVar26 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);
        if (iVar26 == 0) {
          (**(code **)(puVar31 + 0x175450))(uVar15);
          goto LAB_002879d4;
        }
        iVar19 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);
        if (iVar19 == 0) {
          (**(code **)(puVar31 + 0x175450))(uVar15);
          iVar19 = 0;
          goto LAB_002879c4;
        }
        iVar10 = *(int *)(puVar31 + 0x174fc8);
        iVar24 = *(int *)(puVar31 + 0x174fb8) + -0x2d8;
        iVar9 = 0;
        while (iVar7 = (**(code **)(puVar31 + 0x175720))
                                 (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,
                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),
              iVar7 == 0) {
          if (iVar9 == 0) {
            iStack_10a8 = 0;
            iVar8 = *(int *)(puVar31 + 0x174fc8);
            iVar29 = *(int *)(puVar31 + 0x174fb0);
            iVar7 = 0;
LAB_00284ff4:
            do {
              iVar6 = (**(code **)(puVar31 + 0x175720))
                                (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,0,
                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);
              if (iVar6 != 0) goto LAB_002850f4;
              if (iVar7 == 1) {
                uStack_10e4 = (**(code **)(puVar31 + 0x175a28))(iVar19,0,10);
              }
              else if (iVar7 == 2) {
                iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);
                puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1);
                if (puStack_10dc != (undefined1 *)0x0) {
                  (**(code **)(puVar31 + 0x17595c))(puStack_10dc,iVar19);
                  iVar7 = 3;
                  goto LAB_00284ff4;
                }
              }
              else if (iVar7 == 0) {
                iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);
                if (iVar6 == 0) {
                  cVar17 = -1;
                }
                else {
                  cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);
                }
              }
              iVar7 = iVar7 + 1;
            } while( true );
          }
          if (iVar9 != 1) goto LAB_002850f4;
          iStack_10a8 = 0;
          uVar12 = (**(code **)(puVar31 + 0x175a20))();
          while (iVar7 = (**(code **)(puVar31 + 0x175720))
                                   (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,iVar24
                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0) {
            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {
              iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);
              if ((int)uVar12 < iVar7) {
                uVar12 = 0;
              }
              else {
                uVar12 = uVar12 - iVar7;
              }
            }
          }
          if (cVar17 == -1) {
            if (0 < (int)uStack_10c8) {
              iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);
              if (iVar7 < 0) {
                (**(code **)(puVar31 + 0x17575c))(puVar5);
                goto LAB_0028544c;
              }
              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);
              if (iVar7 < 0) {
                (**(code **)(puVar31 + 0x17575c))(puVar5,uStack_10d4 - uStack_10c8);
                goto LAB_0028544c;
              }
              (**(code **)(puVar31 + 0x1759bc))(iVar3);
              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);
              if (iVar7 < 0) {
                (**(code **)(puVar31 + 0x17575c))(puVar5);
                goto LAB_0028544c;
              }
              uStack_10c8 = 0;
            }
            if ((uStack_10d4 & 1) != 0) {
              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);
              uStack_10d4 = uStack_10d4 + 1;
            }
            (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);
            (**(code **)(puVar31 + 0x175970))(iVar3,uStack_10e4 & 0xffff);
            if (puStack_10dc == (undefined1 *)0x0) {
              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);
              iVar7 = uStack_10d4 + 7;
LAB_00287988:
              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);
              iVar7 = iVar7 + 1;
            }
            else {
              bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10dc);
              (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);
              uVar30 = (uint)bVar18;
              if (uVar30 != 0) {
                puVar21 = puStack_10dc;
                do {
                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);
                  puVar21 = puVar21 + 1;
                } while (puVar21 != puStack_10dc + uVar30);
              }
              iVar7 = uStack_10d4 + 7 + uVar30;
              if ((bVar18 & 1) == 0) goto LAB_00287988;
            }
            if (uStack_10e4 == 0x404) {
              iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);
              if (iVar8 < 0) goto LAB_0028544c;
              (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);
              uStack_10d4 = iVar7 + 4;
              uStack_10c8 = uStack_10d4;
            }
            else {
              (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);
              iStack_10a8 = 0;
              uStack_10d4 = uVar12 + iVar7 + 4;
              iVar7 = uVar12 - 1;
              if (0 < (int)uVar12) {
                iStack_10a8 = 0;
                do {
                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);
                  iStack_10a8 = iStack_10a8 + 1;
                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);
                  iVar7 = iVar7 + -1;
                } while (iVar7 != -1);
              }
              if ((uStack_10d4 & 1) != 0) {
                (**(code **)(puVar31 + 0x1756c4))(iVar3,0);
                uStack_10d4 = uStack_10d4 + 1;
              }
            }
LAB_002850f4:
            iVar9 = iVar9 + 1;
          }
          else {
            if (0x7fff < (int)uVar12) goto LAB_002850f4;
            (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);
            (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);
            (**(code **)(puVar31 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);
            (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);
            iStack_10a8 = 0;
            uStack_10d4 = uVar12 + uStack_10d4 + 5;
            iVar7 = uVar12 - 1;
            if ((int)uVar12 < 1) goto LAB_002850f4;
            iStack_10a8 = 0;
            do {
              puVar21 = (undefined1 *)(iVar26 + iStack_10a8);
              iStack_10a8 = iStack_10a8 + 1;
              (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);
              iVar7 = iVar7 + -1;
            } while (iVar7 != -1);
            iVar9 = 2;
          }
        }
        iVar26 = (**(code **)(puVar31 + 0x17575c))(iVar26);
        iVar19 = (**(code **)(puVar31 + 0x17575c))(iVar19);
        puVar21 = puVar5;
        if (puStack_10dc != (undefined1 *)0x0) {
          puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10dc);
        }
      }
LAB_0028573c:
      (**(code **)(puVar31 + 0x175450))(uVar15);
      if (iVar26 != 0) {
LAB_002879c4:
        (**(code **)(puVar31 + 0x17575c))(iVar26);
      }
LAB_002879d4:
      if (iVar19 != 0) {
        (**(code **)(puVar31 + 0x17575c))(iVar19);
      }
      if (puStack_10dc != (undefined1 *)0x0) {
        (**(code **)(puVar31 + 0x17575c))(puStack_10dc);
      }
      (**(code **)(puVar31 + 0x17575c))(puVar5);
      if (0 < (int)uStack_10c8) {
        iVar19 = (**(code **)(puVar31 + 0x175a04))(iVar3);
        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3), -1 < iVar19)) {
          (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);
          iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3);
          if (-1 < iVar19) goto LAB_00287ab4;
        }
        goto LAB_0028544c;
      }
LAB_00287ab4:
      if (uStack_10d4 == 0) {
        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));
        (**(code **)(puVar31 + 0x1756a8))(uVar15);
        (**(code **)(puVar31 + 0x175634))(iVar3);
        (**(code **)(puVar31 + 0x175608))
                  (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,
                   *(int *)(puVar31 + 0x175020) + -0x4700,0x4d3,0x1a9,
                   *(int *)(puVar31 + 0x174fb4) + 0x1854,*(int *)(puVar31 + 0x174fb0) + 0x6e78,
                   iVar20 + 0x2210);
        if (pIStack_10fc != (Image *)0x0) {
          (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);
          (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);
          pIStack_10fc = (Image *)0x0;
        }
        goto LAB_00287858;
      }
      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;
    }
    (**(code **)(puVar31 + 0x1756c4))(iVar3,0);
    goto LAB_00286050;
  }
  uStack_10d4 = 1;
  goto LAB_00284a7c;
LAB_00286038:
  (**(code **)(puVar31 + 0x1756a8))(iVar19);
  uStack_10d4 = 1;
  goto LAB_00286050;
LAB_00285f24:
  (**(code **)(puVar31 + 0x175450))(uVar15);
  if (iVar26 != 0) {
LAB_00287be8:
    (**(code **)(puVar31 + 0x17575c))(iVar26);
  }
LAB_00287bf8:
  if (iVar19 != 0) {
    (**(code **)(puVar31 + 0x17575c))(iVar19);
  }
  if (puStack_10ec != (undefined1 *)0x0) {
    (**(code **)(puVar31 + 0x17575c))(puStack_10ec);
  }
  (**(code **)(puVar31 + 0x17575c))(puVar5);
  if ((int)uStack_10c8 < 1) {
LAB_00287cd8:
    if (uStack_10d4 == 0) {
      uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));
      (**(code **)(puVar31 + 0x1756a8))(uVar15);
      (**(code **)(puVar31 + 0x175634))(iVar3);
      (**(code **)(puVar31 + 0x175608))
                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700
                 ,0x4e0,0x1a9,*(int *)(puVar31 + 0x174fb4) + 0x1854,
                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);
      if (pIStack_10fc != (Image *)0x0) {
        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);
        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);
        pIStack_10fc = (Image *)0x0;
      }
      goto LAB_00287858;
    }
    if ((uStack_10d4 & 1) == 0) goto LAB_00286050;
  }
  else {
    iVar19 = (**(code **)(puVar31 + 0x175a04))(iVar3);
    if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3), -1 < iVar19)) {
      (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);
      iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3);
      if (-1 < iVar19) goto LAB_00287cd8;
    }
LAB_00287db0:
    uStack_10d4 = 0xffffffff;
  }
  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);
LAB_00286050:
  uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3);
  (**(code **)(puVar31 + 0x175ba0))(iVar3);
  iVar19 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1);
  if (iVar19 == 0) {
    uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));
    (**(code **)(puVar31 + 0x1756a8))(uVar15);
    (**(code **)(puVar31 + 0x175634))(iVar3);
    (**(code **)(puVar31 + 0x175608))
              (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,
               0x4ee,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78
               ,iVar20 + 0x2210);
    if (pIStack_10fc != (Image *)0x0) {
      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);
      (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);
      pIStack_10fc = (Image *)0x0;
    }
    goto LAB_00287858;
  }
  iVar13 = (**(code **)(puVar31 + 0x175d80))
                     (pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + 0x17f8,iVar19,in_a1);
  (**(code **)(puVar31 + 0x1754e4))(iVar19);
  uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));
  (**(code **)(puVar31 + 0x1756a8))(uVar15);
  (**(code **)(puVar31 + 0x175634))(iVar3);
  if (iVar13 == 0) {
    (**(code **)(puVar31 + 0x175608))
              (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,
               0x4f6,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78
               ,iVar20 + 0x2210);
    if (pIStack_10fc != (Image *)0x0) {
      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);
      (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);
      pIStack_10fc = (Image *)0x0;
    }
    goto LAB_00287858;
  }
LAB_00284a7c:
  iVar3 = (**(code **)(puVar31 + 0x175d04))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78b8,4);
  if (iVar3 == 0) {
    (**(code **)(puVar31 + 0x175464))(auStack_1084,0x1000,*(int *)(puVar31 + 0x175020) + -0x4858,1);
    ofile = (Image *)(**(code **)(puVar31 + 0x175cf4))(0,in_a1);
    if (ofile == (Image *)0x0) {
      (**(code **)(puVar31 + 0x175608))
                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700
                 ,0x500,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,
                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);
      if (pIStack_10fc != (Image *)0x0) {
        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);
        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);
      }
    }
    else {
      iVar3 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);
      if (iVar3 == 0) {
        (**(code **)(puVar31 + 0x175634))(ofile);
        (**(code **)(puVar31 + 0x175608))
                  (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,
                   *(int *)(puVar31 + 0x175020) + -0x4700,0x505,400,
                   *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,
                   iVar20 + 0x2210);
        if (pIStack_10fc != (Image *)0x0) {
          (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);
          (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);
          pIStack_10fc = (Image *)0x0;
          goto LAB_00287858;
        }
      }
      else {
        (**(code **)(puVar31 + 0x1759b0))(ofile->blob,iVar3);
        iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78c0);
        if (iVar3 != 0) {
          iVar3 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);
          if (iVar3 != 0) {
            (**(code **)(puVar31 + 0x175dbc))(iVar3,0,0x14000);
            do {
              iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);
              if (iVar19 == 0) goto LAB_00286b70;
              iVar13 = 0;
              if (0 < iVar19) {
                do {
                  iVar22 = (**(code **)(puVar31 + 0x17607c))(ofile,iVar19 - iVar13,iVar3 + iVar13);
                  if (iVar22 < 1) {
                    if (iVar13 < iVar19) goto LAB_00286b70;
                    break;
                  }
                  iVar13 = iVar13 + iVar22;
                } while (iVar13 < iVar19);
              }
            } while( true );
          }
          goto LAB_00286b84;
        }
        if (*(int *)(iVar20 + 0x1ec) == 0) {
          uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);
          (**(code **)(puVar31 + 0x1756a8))(uVar15);
          (**(code **)(puVar31 + 0x175634))(ofile);
          (**(code **)(puVar31 + 0x175608))
                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,
                     *(int *)(puVar31 + 0x175020) + -0x4700,0x515,0x1c2,
                     *(int *)(puVar31 + 0x175020) + -0x48a4,*(int *)(puVar31 + 0x174fb0) + 0x6e78,
                     iVar20 + 0x2210);
          if (pIStack_10fc != (Image *)0x0) {
            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);
            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);
            pIStack_10fc = (Image *)0x0;
            goto LAB_00287858;
          }
        }
        else {
          uVar15 = (**(code **)(puVar31 + 0x175548))();
          ifile = (Image *)(**(code **)(puVar31 + 0x175cf4))(0,in_a1);
          if (ifile == (Image *)0x0) {
            uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);
            (**(code **)(puVar31 + 0x1756a8))(uVar15);
            (**(code **)(puVar31 + 0x175634))(ofile);
            (**(code **)(puVar31 + 0x175608))
                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,
                       *(int *)(puVar31 + 0x175020) + -0x4700,0x51e,400,
                       *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,
                       iVar20 + 0x2210);
            if (pIStack_10fc != (Image *)0x0) {
              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);
              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);
              pIStack_10fc = (Image *)0x0;
              goto LAB_00287858;
            }
          }
          else {
            pBVar27 = ifile->blob;
            uVar11 = (**(code **)(puVar31 + 0x175550))(uVar15);
            uVar15 = (**(code **)(puVar31 + 0x175430))(uVar15);
            (**(code **)(puVar31 + 0x1759b0))(pBVar27,uVar11,uVar15);
            iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);
            if (iVar3 == 0xff) {
              iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);
              iVar19 = *(int *)(puVar31 + 0x1752b0);
              if (iVar3 == 0xd8) {
                iVar3 = *(int *)(puVar31 + 0x175020);
                uVar15 = *(undefined4 *)(iVar3 + -0x4720);
LAB_002869d4:
                uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);
                if (uVar12 != 0xffffffff) {
                  if (uVar12 == 0xff) {
                    do {
                      uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);
                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;
                    } while (uVar12 == 0xff);
                    if (uVar12 == 0xd9) goto LAB_002867e4;
                    if (uVar12 != 0xed) {
                      (**(code **)(puVar31 + 0x1756c4))(ofile,0xff);
                      (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);
                    }
                    if (uVar12 == 0xe0) {
                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc,ofile);
                      uStack_10a0 = *(undefined4 *)(iVar3 + -0x471c);
                      uStack_109c = *(undefined4 *)(iVar3 + -0x4718);
                      uStack_1098 = *(undefined4 *)(iVar3 + -0x4714);
                      auStack_1094 = *(undefined1 (*) [4])(iVar3 + -0x4710);
                      uStack_1090 = *(undefined4 *)(iVar3 + -0x470c);
                      uStack_108c = *(undefined4 *)(iVar3 + -0x4708);
                      uStack_1088 = *(undefined1 *)(iVar3 + -0x4704);
                      uStack_10a4 = uVar15;
                      (**(code **)(puVar31 + 0x175ba0))(ifile);
                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);
                      uVar12 = extraout_v1_00;
                      if ((extraout_v1_00 & 1) != 0) {
                        uVar12 = extraout_v1_00 + 1;
                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);
                      }
                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),
                                             (char)uVar12 + '\x10');
                      puVar25 = &uStack_10a4;
                      do {
                        (**(code **)(puVar31 + 0x1756c4))(ofile,*(undefined1 *)puVar25);
                        puVar25 = (undefined4 *)((int)puVar25 + 1);
                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));
                      do {
                        iVar13 = jpeg_transfer_1(ifile,ofile);
                      } while (iVar13 != -1);
                      (**(code **)(puVar31 + 0x175ba0))(ifile);
                      if ((extraout_v1_01 & 1) != 0) {
                        (**(code **)(puVar31 + 0x1756c4))(ofile,0);
                      }
                    }
                    else if (uVar12 == 0xed) {
                      iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);
                      if ((iVar13 != -1) &&
                         (iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1)) {
                        iVar22 = iVar13 * 0x100 + -2 + iVar22;
                        do {
                          if (iVar22 == 0) break;
                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);
                          iVar22 = iVar22 + -1;
                        } while (iVar13 != -1);
                      }
                    }
                    else {
                      if (uVar12 == 0xda) goto LAB_002867c8;
                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc);
                    }
                  }
                  else {
                    (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);
                  }
                  goto LAB_002869d4;
                }
LAB_00287dd0:
                uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);
                (**(code **)(puVar31 + 0x1756a8))(uVar15);
                (**(code **)(puVar31 + 0x175634))(ifile);
                goto LAB_00286b84;
              }
            }
            uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);
            (**(code **)(puVar31 + 0x1756a8))(uVar15);
            (**(code **)(puVar31 + 0x175634))(ifile);
            (**(code **)(puVar31 + 0x175634))(ofile);
            (**(code **)(puVar31 + 0x175608))
                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,
                       *(int *)(puVar31 + 0x175020) + -0x4700,0x529,0x1c2,
                       *(int *)(puVar31 + 0x175020) + -0x4850,*(int *)(puVar31 + 0x174fb0) + 0x6e78,
                       iVar20 + 0x2210);
            if (pIStack_10fc != (Image *)0x0) {
              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);
              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);
              pIStack_10fc = (Image *)0x0;
              goto LAB_00287858;
            }
          }
        }
      }
    }
    goto LAB_00286534;
  }
  iVar3 = *(int *)(puVar31 + 0x174fb0);
  goto LAB_00284aa4;
LAB_00286b70:
  (**(code **)(puVar31 + 0x1756a8))(iVar3);
  goto LAB_00286b84;
LAB_00286f40:
  (**(code **)(puVar31 + 0x1756a8))(iVar19);
  goto LAB_00286f50;
LAB_00287414:
  (**(code **)(puVar31 + 0x1756a8))(iVar19);
  goto LAB_00287424;
LAB_00287758:
  (**(code **)(puVar31 + 0x1756a8))(iVar3);
  goto LAB_00287768;
LAB_002867c8:
  do {
    iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);
  } while (iVar3 != -1);
LAB_002867e4:
  uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);
  (**(code **)(puVar31 + 0x1756a8))(uVar15);
  (**(code **)(puVar31 + 0x175634))(ifile);
LAB_00286b84:
  uVar15 = (**(code **)(puVar31 + 0x1754cc))(ofile);
  (**(code **)(puVar31 + 0x175ba0))(ofile);
  iVar3 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_02);
  if (iVar3 == 0) {
    uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);
    (**(code **)(puVar31 + 0x1756a8))(uVar15);
    (**(code **)(puVar31 + 0x175634))(ofile);
    (**(code **)(puVar31 + 0x175608))
              (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,
               0x535,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78
               ,iVar20 + 0x2210);
    if (pIStack_10fc != (Image *)0x0) {
      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);
      (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);
      pIStack_10fc = (Image *)0x0;
      goto LAB_00287858;
    }
  }
  else {
    iVar19 = (**(code **)(puVar31 + 0x175d80))(pIStack_10fc,auStack_1084,iVar3,in_a1);
    (**(code **)(puVar31 + 0x1754e4))(iVar3);
    uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);
    (**(code **)(puVar31 + 0x1756a8))(uVar15);
    (**(code **)(puVar31 + 0x175634))(ofile);
    iVar3 = *(int *)(puVar31 + 0x174fb0);
    if (iVar19 != 0) {
LAB_00284aa4:
      iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar3 + 0x78dc);
      if (iVar3 == 0) {
LAB_00284ae8:
        iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);
        if (iVar3 == 0) {
          (**(code **)(puVar31 + 0x175608))
                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,
                     *(int *)(puVar31 + 0x175020) + -0x4700,0x544,400,
                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,
                     iVar20 + 0x2210);
          if (pIStack_10fc != (Image *)0x0) {
            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);
            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);
            pIStack_10fc = (Image *)0x0;
          }
          goto LAB_00287858;
        }
        iVar19 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);
        if (iVar19 == 0) {
          (**(code **)(puVar31 + 0x175634))(iVar3);
          (**(code **)(puVar31 + 0x175608))
                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,
                     *(int *)(puVar31 + 0x175020) + -0x4700,0x549,400,
                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,
                     iVar20 + 0x2210);
          if (pIStack_10fc != (Image *)0x0) {
            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);
            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);
            pIStack_10fc = (Image *)0x0;
          }
          goto LAB_00287858;
        }
        (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);
        iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);
        if (iVar19 != 0) {
          (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);
          do {
            iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);
            if (iVar13 == 0) goto LAB_00286f40;
            iVar22 = 0;
            if (0 < iVar13) {
              do {
                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);
                if (iVar14 < 1) {
                  if (iVar22 < iVar13) goto LAB_00286f40;
                  break;
                }
                iVar22 = iVar22 + iVar14;
              } while (iVar22 < iVar13);
            }
          } while( true );
        }
LAB_00286f50:
        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3);
        (**(code **)(puVar31 + 0x175ba0))(iVar3);
        iVar19 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_03);
        if (iVar19 == 0) {
          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));
          (**(code **)(puVar31 + 0x1756a8))(uVar15);
          (**(code **)(puVar31 + 0x175634))(iVar3);
          (**(code **)(puVar31 + 0x175608))
                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,
                     *(int *)(puVar31 + 0x175020) + -0x4700,0x554,400,
                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,
                     iVar20 + 0x2210);
          if (pIStack_10fc != (Image *)0x0) {
            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);
            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);
            pIStack_10fc = (Image *)0x0;
          }
          goto LAB_00287858;
        }
        (**(code **)(puVar31 + 0x175d80))
                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + -0x286c,iVar19,in_a1);
        (**(code **)(puVar31 + 0x1754e4))(iVar19);
        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));
        (**(code **)(puVar31 + 0x1756a8))(uVar15);
        (**(code **)(puVar31 + 0x175634))(iVar3);
        iVar19 = *(int *)(puVar31 + 0x174fb0);
      }
      else {
        iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78d8);
        iVar19 = *(int *)(puVar31 + 0x174fb0);
        if (iVar3 == 0) goto LAB_00284ae8;
      }
      iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar19 + 0x78e0);
      if (iVar3 == 0) {
        iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);
        if (iVar3 == 0) {
          (**(code **)(puVar31 + 0x175608))
                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,
                     *(int *)(puVar31 + 0x175020) + -0x4700,0x560,400,
                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,
                     iVar20 + 0x2210);
          if (pIStack_10fc != (Image *)0x0) {
            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);
            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);
            pIStack_10fc = (Image *)0x0;
          }
          goto LAB_00287858;
        }
        iVar19 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);
        if (iVar19 == 0) {
          (**(code **)(puVar31 + 0x175634))(iVar3);
          (**(code **)(puVar31 + 0x175608))
                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,
                     *(int *)(puVar31 + 0x175020) + -0x4700,0x565,400,
                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,
                     iVar20 + 0x2210);
          if (pIStack_10fc != (Image *)0x0) {
            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);
            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);
            pIStack_10fc = (Image *)0x0;
          }
          goto LAB_00287858;
        }
        (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);
        iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);
        if (iVar19 != 0) {
          (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);
          do {
            iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);
            if (iVar13 == 0) goto LAB_00287414;
            iVar22 = 0;
            if (0 < iVar13) {
              do {
                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);
                if (iVar14 < 1) {
                  if (iVar22 < iVar13) goto LAB_00287414;
                  break;
                }
                iVar22 = iVar22 + iVar14;
              } while (iVar22 < iVar13);
            }
          } while( true );
        }
LAB_00287424:
        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3);
        (**(code **)(puVar31 + 0x175ba0))(iVar3);
        iVar19 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_04);
        if (iVar19 == 0) {
          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));
          (**(code **)(puVar31 + 0x1756a8))(uVar15);
          (**(code **)(puVar31 + 0x175634))(iVar3);
          (**(code **)(puVar31 + 0x175608))
                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,
                     *(int *)(puVar31 + 0x175020) + -0x4700,0x570,400,
                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,
                     iVar20 + 0x2210);
          if (pIStack_10fc != (Image *)0x0) {
            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);
            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);
            pIStack_10fc = (Image *)0x0;
          }
          goto LAB_00287858;
        }
        (**(code **)(puVar31 + 0x175d80))
                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + 0x17f0,iVar19,in_a1);
        (**(code **)(puVar31 + 0x1754e4))(iVar19);
        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));
        (**(code **)(puVar31 + 0x1756a8))(uVar15);
        (**(code **)(puVar31 + 0x175634))(iVar3);
        iVar3 = *(int *)(puVar31 + 0x174fb0);
      }
      else {
        iVar3 = *(int *)(puVar31 + 0x174fb0);
      }
      iVar2 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar3 + 0x78d4);
      if (iVar2 == 0) {
        iVar2 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);
        if (iVar2 == 0) {
          (**(code **)(puVar31 + 0x175608))
                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,
                     *(int *)(puVar31 + 0x175020) + -0x4700,0x57c,400,
                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,
                     iVar20 + 0x2210);
          if (pIStack_10fc != (Image *)0x0) {
            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);
            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);
            pIStack_10fc = (Image *)0x0;
          }
          goto LAB_00287858;
        }
        iVar3 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);
        if (iVar3 == 0) {
          (**(code **)(puVar31 + 0x175634))(iVar2);
          (**(code **)(puVar31 + 0x175608))
                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,
                     *(int *)(puVar31 + 0x175020) + -0x4700,0x581,400,
                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,
                     iVar20 + 0x2210);
          if (pIStack_10fc != (Image *)0x0) {
            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);
            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);
            pIStack_10fc = (Image *)0x0;
          }
          goto LAB_00287858;
        }
        (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);
        iVar3 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);
        if (iVar3 != 0) {
          (**(code **)(puVar31 + 0x175dbc))(iVar3,0,0x14000);
          do {
            iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);
            if (iVar19 == 0) goto LAB_00287758;
            iVar13 = 0;
            if (0 < iVar19) {
              do {
                iVar22 = (**(code **)(puVar31 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);
                if (iVar22 < 1) {
                  if (iVar13 < iVar19) goto LAB_00287758;
                  break;
                }
                iVar13 = iVar13 + iVar22;
              } while (iVar13 < iVar19);
            }
          } while( true );
        }
LAB_00287768:
        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar2);
        (**(code **)(puVar31 + 0x175ba0))(iVar2);
        iVar3 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_05);
        if (iVar3 == 0) {
          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));
          (**(code **)(puVar31 + 0x1756a8))(uVar15);
          (**(code **)(puVar31 + 0x175634))(iVar2);
          (**(code **)(puVar31 + 0x175608))
                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,
                     *(int *)(puVar31 + 0x175020) + -0x4700,0x58c,400,
                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,
                     iVar20 + 0x2210);
          if (pIStack_10fc != (Image *)0x0) {
            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);
            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);
            pIStack_10fc = (Image *)0x0;
          }
          goto LAB_00287858;
        }
        (**(code **)(puVar31 + 0x175d80))
                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb8) + 0x76a8,iVar3,in_a1);
        (**(code **)(puVar31 + 0x1754e4))(iVar3);
        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));
        (**(code **)(puVar31 + 0x1756a8))(uVar15);
        (**(code **)(puVar31 + 0x175634))(iVar2);
      }
      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);
      pIStack_10fc = (Image *)(**(code **)(puVar31 + 0x175b34))(pIStack_10fc);
      goto LAB_00287858;
    }
    (**(code **)(puVar31 + 0x175608))
              (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,
               0x53d,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78
               ,iVar20 + 0x2210);
    if (pIStack_10fc != (Image *)0x0) {
      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);
      (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);
      pIStack_10fc = (Image *)0x0;
      goto LAB_00287858;
    }
  }
LAB_00286534:
  pIStack_10fc = (Image *)0x0;
LAB_00287858:
  if (iStack_84 != **(int **)(puVar31 + 0x175918)) {
    pcVar32 = *(code **)(puVar31 + 0x17574c);
    (*pcVar32)();
    iVar19 = *(int *)(pcVar32 + 0x171abc);
    iVar20 = (**(code **)(pcVar32 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x7890,
                        *(int *)(pcVar32 + 0x171b2c) + -0x483c);
    iVar3 = *(int *)(pcVar32 + 0x171dbc) + 0x4930;
    *(int *)(iVar20 + 0x18) = iVar3;
    iVar2 = *(int *)(pcVar32 + 0x171dbc) + 0x3578;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar32 + 0x1720b0))(iVar20);
    iVar20 = (**(code **)(pcVar32 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78a0,
                        *(int *)(pcVar32 + 0x171b2c) + -0x4820);
    *(int *)(iVar20 + 0x18) = iVar3;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar32 + 0x1720b0))(iVar20);
    iVar20 = (**(code **)(pcVar32 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78ac,
                        *(int *)(pcVar32 + 0x171b2c) + -0x4800);
    *(int *)(iVar20 + 0x18) = iVar3;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar32 + 0x1720b0))(iVar20);
    iVar20 = (**(code **)(pcVar32 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78b8,
                        *(int *)(pcVar32 + 0x171b2c) + -0x47dc);
    *(int *)(iVar20 + 0x18) = iVar3;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar32 + 0x1720b0))(iVar20);
    iVar20 = (**(code **)(pcVar32 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78c0,
                        *(int *)(pcVar32 + 0x171b2c) + -0x47c0);
    *(int *)(iVar20 + 0x18) = iVar3;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar32 + 0x1720b0))(iVar20);
    iVar20 = (**(code **)(pcVar32 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78cc,
                        *(int *)(pcVar32 + 0x171b2c) + -0x47a8);
    *(int *)(iVar20 + 0x18) = iVar3;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar32 + 0x1720b0))(iVar20);
    iVar20 = (**(code **)(pcVar32 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78d4,
                        *(int *)(pcVar32 + 0x171b2c) + -0x4788);
    *(int *)(iVar20 + 0x18) = iVar3;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar32 + 0x1720b0))(iVar20);
    iVar13 = *(int *)(pcVar32 + 0x171b2c);
    iVar20 = (**(code **)(pcVar32 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78d8,iVar13 + -0x4774);
    *(int *)(iVar20 + 0x18) = iVar3;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar32 + 0x1720b0))(iVar20);
    iVar20 = (**(code **)(pcVar32 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78dc,iVar13 + -0x4774);
    *(int *)(iVar20 + 0x18) = iVar3;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar32 + 0x1720b0))(iVar20);
    iVar20 = (**(code **)(pcVar32 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78e0,
                        *(int *)(pcVar32 + 0x171b2c) + -0x4760);
    *(int *)(iVar20 + 0x18) = iVar3;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar32 + 0x1720b0))(iVar20);
    iVar13 = *(int *)(pcVar32 + 0x171b2c);
    iVar20 = (**(code **)(pcVar32 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78e8,iVar13 + -0x4750);
    *(int *)(iVar20 + 0x18) = iVar3;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar32 + 0x1720b0))(iVar20);
    iVar20 = (**(code **)(pcVar32 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78f4,iVar13 + -0x4750);
    *(int *)(iVar20 + 0x18) = iVar3;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar32 + 0x1720b0))(iVar20);
    return 0x810;
  }
  return (size_t)pIStack_10fc;
}



char * FUN_0028458c(char *param_1,char *param_2)

{
  undefined1 uVar16;
  char *pcVar1;
  int iVar2;
  int iVar3;
  undefined1 *puVar4;
  char cVar17;
  int iVar5;
  int iVar6;
  byte bVar18;
  int iVar7;
  int iVar8;
  int iVar9;
  undefined4 uVar10;
  int iVar11;
  uint uVar12;
  int iVar13;
  int iVar14;
  undefined4 uVar15;
  undefined4 extraout_v1;
  uint extraout_v1_00;
  uint extraout_v1_01;
  undefined4 extraout_v1_02;
  undefined4 extraout_v1_03;
  undefined4 extraout_v1_04;
  undefined4 extraout_v1_05;
  int iVar19;
  int iVar20;
  undefined1 *puVar21;
  int iVar22;
  char *unaff_s1;
  char *pcVar23;
  char *unaff_s2;
  int iVar24;
  int unaff_s3;
  undefined4 *puVar25;
  char *unaff_s4;
  undefined4 uVar26;
  char *unaff_s5;
  char *pcVar27;
  int unaff_s6;
  int iVar28;
  uint uVar29;
  int unaff_s7;
  undefined *puVar30;
  int *unaff_s8;
  code *pcVar31;
  char *pcStack_10fc;
  undefined1 *puStack_10ec;
  uint uStack_10e4;
  undefined1 *puStack_10dc;
  uint uStack_10d4;
  int iStack_10cc;
  uint uStack_10c8;
  undefined1 uStack_10b0;
  undefined1 uStack_10af;
  char cStack_10ae;
  undefined1 uStack_10ad;
  undefined4 uStack_10ac;
  int iStack_10a8;
  undefined4 uStack_10a4;
  undefined4 uStack_10a0;
  undefined4 uStack_109c;
  undefined4 uStack_1098;
  undefined1 auStack_1094 [4];
  undefined4 uStack_1090;
  undefined4 uStack_108c;
  undefined1 uStack_1088;
  undefined1 auStack_1084 [4096];
  int iStack_84;
  char *pcStack_80;
  char *pcStack_7c;
  char *pcStack_78;
  int iStack_74;
  char *pcStack_70;
  char *pcStack_6c;
  int iStack_68;
  int iStack_64;
  int *piStack_60;
  code *pcStack_5c;
  undefined1 local_30 [3];
  char cStack_2d;
  int local_2c;
  
  puVar30 = PTR_s__003f9950;
  local_2c = *(int *)PTR___stack_chk_guard_003fa248;
  if (*param_1 == '\0') {
    pcVar1 = (char *)0x0;
  }
  else {
    unaff_s2 = param_1;
    if (*param_1 == ';') {
      pcVar1 = (char *)0x1;
LAB_0028466c:
      if (param_1 == (char *)0x0) {
        pcVar1 = (char *)0x0;
      }
      else {
        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {
          param_2 = PTR_s__003f9950 + -0x4900;
          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);
          unaff_s4 = puVar30 + -0x46bf;
          if (iVar20 == 1) {
            if (param_1[3] == ';') {
              pcVar1 = (char *)0x3;
LAB_002848d4:
              unaff_s1 = param_1 + (int)(pcVar1 + 1);
              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);
              param_2 = unaff_s1;
              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);
            }
            else {
              if (param_1[4] == ';') {
                pcVar1 = &DAT_00000004;
                goto LAB_002848d4;
              }
              if (param_1[5] == ';') {
                pcVar1 = &DAT_00000005;
                goto LAB_002848d4;
              }
              pcVar1 = &DAT_00000006;
            }
            *param_1 = cStack_2d;
            goto LAB_00284620;
          }
        }
        unaff_s4 = puVar30 + -0x46bf;
        unaff_s6 = 0;
        do {
          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];
          unaff_s1 = unaff_s4;
          unaff_s5 = pcVar27;
          if ((int)pcVar27 <= (int)pcVar1) {
            if (param_1 != unaff_s4) {
              iVar20 = (int)*param_1;
              unaff_s5 = param_1;
              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {
                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();
                pcVar23 = unaff_s4;
                while( true ) {
                  unaff_s7 = iVar20;
                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {
                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);
                  }
                  iVar20 = (int)*pcVar23;
                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {
                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);
                  }
                  unaff_s1 = pcVar23;
                  if ((unaff_s7 != iVar20) ||
                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),
                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;
                  unaff_s5 = unaff_s5 + 1;
                  iVar20 = (int)*unaff_s5;
                  pcVar23 = pcVar23 + 1;
                  unaff_s1 = pcVar23;
                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;
                }
              }
              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);
              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);
              if (unaff_s3 != iVar20) goto LAB_002847f0;
            }
            param_2 = param_1 + (int)pcVar27;
            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);
            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);
            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];
            pcVar1 = pcVar27 + -1;
            goto LAB_00284620;
          }
LAB_002847f0:
          unaff_s6 = unaff_s6 + 1;
          unaff_s4 = unaff_s4 + 9;
        } while (unaff_s6 != 3);
        pcVar1 = (char *)0x0;
      }
    }
    else {
      pcVar1 = param_1 + 1;
      iVar20 = 1;
      param_2 = &DAT_00000007;
      do {
        if (*pcVar1 == '\0') {
          pcVar1 = (char *)0x0;
          goto LAB_00284620;
        }
        if (*pcVar1 == ';') {
          pcVar1 = (char *)(iVar20 + 1);
          if (pcVar1 == (char *)0x0) goto LAB_00284620;
          goto LAB_0028466c;
        }
        iVar20 = iVar20 + 1;
        pcVar1 = pcVar1 + 1;
      } while (iVar20 != 7);
      pcVar1 = (char *)0x0;
    }
  }
LAB_00284620:
  if (local_2c == *(int *)PTR___stack_chk_guard_003fa248) {
    return pcVar1;
  }
  pcVar31 = FUN_00284930;
  iVar20 = local_2c;
  puVar30 = PTR___stack_chk_fail_003fa07c;
  (*(code *)PTR___stack_chk_fail_003fa07c)();
  iStack_84 = **(int **)(puVar30 + 0x175918);
  pcStack_80 = pcVar1;
  pcStack_7c = unaff_s1;
  pcStack_78 = unaff_s2;
  iStack_74 = unaff_s3;
  pcStack_70 = unaff_s4;
  pcStack_6c = unaff_s5;
  iStack_68 = unaff_s6;
  iStack_64 = unaff_s7;
  piStack_60 = unaff_s8;
  pcStack_5c = pcVar31;
  if (iVar20 == 0) {
    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))
                               (*(int *)(puVar30 + 0x174fb0) + 0x3d48,
                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a5,
                                *(int *)(puVar30 + 0x175020) + -0x46f0);
    return pcVar1;
  }
  if (*(int *)(iVar20 + 0x3214) != -0x54535255) {
    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))
                               (*(int *)(puVar30 + 0x174fb0) + 0x3d70,
                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a6,
                                *(int *)(puVar30 + 0x175020) + -0x46f0);
    return pcVar1;
  }
  if (*(int *)(iVar20 + 0x3210) != 0) {
    (**(code **)(puVar30 + 0x1758c8))
              (0x8000,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700,
               0x4a8,*(int *)(puVar30 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210);
  }
  if (param_2 == (char *)0x0) {
    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))
                               (*(int *)(puVar30 + 0x174fb0) + 0x4c80,
                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4aa,
                                *(int *)(puVar30 + 0x175020) + -0x46f0);
    return pcVar1;
  }
  if (*(int *)(param_2 + 0x1c) != -0x54535255) {
    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))
                               (*(int *)(puVar30 + 0x174fb0) + 0x595c,
                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4ab,
                                *(int *)(puVar30 + 0x175020) + -0x46f0);
    return pcVar1;
  }
  pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175cf4))(iVar20,param_2);
  iVar2 = (**(code **)(puVar30 + 0x175934))(iVar20,pcStack_10fc,2,param_2);
  if (iVar2 == 0) {
    (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
    pcStack_10fc = (char *)0x0;
    goto LAB_00287858;
  }
  pcStack_10fc[0x18] = '\0';
  pcStack_10fc[0x19] = '\0';
  pcStack_10fc[0x1a] = '\0';
  pcStack_10fc[0x1b] = '\x01';
  pcStack_10fc[0x1c] = '\0';
  pcStack_10fc[0x1d] = '\0';
  pcStack_10fc[0x1e] = '\0';
  pcStack_10fc[0x1f] = '\x01';
  iVar2 = (**(code **)(puVar30 + 0x175578))(pcStack_10fc,param_2);
  if (iVar2 == 0) {
    (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
    pcStack_10fc = (char *)0x0;
    goto LAB_00287858;
  }
  iVar2 = iVar20 + 0x210;
  iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x7890,4);
  if (iVar3 == 0) {
    iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);
    if (iVar3 == 0) {
      (**(code **)(puVar30 + 0x175608))
                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c2,400,
                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                 iVar20 + 0x2210);
      if (pcStack_10fc != (char *)0x0) {
        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
        pcStack_10fc = (char *)0x0;
      }
      goto LAB_00287858;
    }
    puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(1,1);
    if (puVar4 == (undefined1 *)0x0) {
      (**(code **)(puVar30 + 0x175634))(iVar3);
      (**(code **)(puVar30 + 0x175608))
                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c7,400,
                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                 iVar20 + 0x2210);
      if (pcStack_10fc != (char *)0x0) {
        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
        pcStack_10fc = (char *)0x0;
      }
      goto LAB_00287858;
    }
    *puVar4 = 0;
    (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),puVar4);
    iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78a0);
    if (iVar19 != 0) {
      iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac);
      if (iVar19 == 0) {
        puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);
        if (puVar4 != (undefined1 *)0x0) {
          uVar15 = (**(code **)(puVar30 + 0x175bdc))();
          iStack_10cc = 0x1000;
          uStack_10d4 = 0;
          uStack_10c8 = 0;
          puStack_10dc = (undefined1 *)0x0;
          cVar17 = '\0';
          puStack_10ec = (undefined1 *)0x0;
          iVar19 = 0;
          iVar11 = 0;
          iVar13 = *(int *)(puVar30 + 0x175020);
          iVar22 = *(int *)(puVar30 + 0x1752b0);
          iVar14 = *(int *)(puVar30 + 0x174fb8);
          puVar21 = puVar4;
LAB_00285dec:
          do {
            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);
            if ((iVar8 != -1) && (iVar8 != 10)) {
              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);
              iVar24 = (int)puVar21 - (int)puVar4;
              if (iVar9 == 0) {
                if (iStack_10cc <= iVar24 + 1) {
                  iStack_10cc = iStack_10cc * 2;
                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)
                  ;
                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;
                  puVar21 = puVar4 + iVar24;
                }
                *puVar21 = (char)iVar8;
                puVar21 = puVar21 + 1;
                goto LAB_00285dec;
              }
            }
            if ((puVar4 == (undefined1 *)0x0) ||
               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))
            goto LAB_00285f24;
            *puVar21 = 0;
            uStack_10ac = 0;
            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);
            if (iVar11 == 0) {
              (**(code **)(puVar30 + 0x175450))(uVar15);
              goto LAB_00287bf8;
            }
            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);
            if (iVar19 == 0) {
              (**(code **)(puVar30 + 0x175450))(uVar15);
              iVar19 = 0;
              goto LAB_00287be8;
            }
            iVar9 = *(int *)(puVar30 + 0x174fc8);
            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;
            iVar8 = 0;
            while (iVar6 = (**(code **)(puVar30 + 0x175720))
                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,
                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),
                  iVar6 == 0) {
              if (iVar8 == 0) {
                iStack_10a8 = 0;
                iVar7 = *(int *)(puVar30 + 0x174fc8);
                iVar28 = *(int *)(puVar30 + 0x174fb0);
                iVar6 = 0;
LAB_002857fc:
                do {
                  iVar5 = (**(code **)(puVar30 + 0x175720))
                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,
                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);
                  if (iVar5 != 0) goto LAB_00285914;
                  if (iVar6 == 1) {
                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);
                  }
                  else if (iVar6 == 2) {
                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);
                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)
                    ;
                    if (puStack_10ec != (undefined1 *)0x0) {
                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);
                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);
                      iVar6 = 3;
                      goto LAB_002857fc;
                    }
                  }
                  else if (iVar6 == 0) {
                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);
                    if (iVar5 == 0) {
                      cVar17 = -1;
                    }
                    else {
                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);
                    }
                  }
                  iVar6 = iVar6 + 1;
                } while( true );
              }
              if (iVar8 != 1) goto LAB_00285914;
              iStack_10a8 = 0;
              uVar12 = (**(code **)(puVar30 + 0x175a20))();
              while (iVar6 = (**(code **)(puVar30 + 0x175720))
                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,
                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0
                    ) {
                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {
                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);
                  if ((int)uVar12 < iVar6) {
                    uVar12 = 0;
                  }
                  else {
                    uVar12 = uVar12 - iVar6;
                  }
                }
              }
              if (cVar17 == -1) {
                if (0 < (int)uStack_10c8) {
                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);
                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))
                  goto LAB_00287db0;
                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);
                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);
                  if (iVar6 < 0) goto LAB_00287db0;
                  uStack_10c8 = 0;
                }
                if ((uStack_10d4 & 1) != 0) {
                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);
                  uStack_10d4 = uStack_10d4 + 1;
                }
                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);
                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);
                if (puStack_10ec == (undefined1 *)0x0) {
                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);
                  iVar6 = uStack_10d4 + 7;
LAB_00287bac:
                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);
                  iVar6 = iVar6 + 1;
                }
                else {
                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);
                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);
                  uVar29 = (uint)bVar18;
                  if (uVar29 != 0) {
                    puVar21 = puStack_10ec;
                    do {
                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);
                      puVar21 = puVar21 + 1;
                    } while (puVar21 != puStack_10ec + uVar29);
                  }
                  iVar6 = uStack_10d4 + 7 + uVar29;
                  if ((bVar18 & 1) == 0) goto LAB_00287bac;
                }
                if (puStack_10dc == (undefined1 *)0x404) {
                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);
                  if (iVar7 < 0) goto LAB_00287db0;
                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);
                  uStack_10d4 = iVar6 + 4;
                  uStack_10c8 = uStack_10d4;
                }
                else {
                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);
                  iStack_10a8 = 0;
                  uStack_10d4 = uVar12 + iVar6 + 4;
                  iVar6 = uVar12 - 1;
                  if (uVar12 != 0) {
                    iStack_10a8 = 0;
                    do {
                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);
                      iStack_10a8 = iStack_10a8 + 1;
                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);
                      iVar6 = iVar6 + -1;
                    } while (iVar6 != -1);
                  }
                  if ((uStack_10d4 & 1) != 0) {
                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);
                    uStack_10d4 = uStack_10d4 + 1;
                  }
                }
LAB_00285914:
                iVar8 = iVar8 + 1;
              }
              else {
                if (0x7fff < (int)uVar12) goto LAB_00285914;
                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);
                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);
                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);
                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);
                iStack_10a8 = 0;
                uStack_10d4 = uVar12 + uStack_10d4 + 5;
                iVar6 = uVar12 - 1;
                if (uVar12 == 0) goto LAB_00285914;
                iStack_10a8 = 0;
                do {
                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);
                  iStack_10a8 = iStack_10a8 + 1;
                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);
                  iVar6 = iVar6 + -1;
                } while (iVar6 != -1);
                iVar8 = 2;
              }
            }
            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);
            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);
            puVar21 = puVar4;
            if (puStack_10ec != (undefined1 *)0x0) {
              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);
            }
          } while( true );
        }
        goto LAB_00287db0;
      }
      iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);
      if (iVar19 != 0) {
        (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);
        do {
          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);
          if (iVar13 == 0) goto LAB_00286038;
          iVar22 = 0;
          if (0 < iVar13) {
            do {
              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);
              if (iVar14 < 1) {
                if (iVar22 < iVar13) goto LAB_00286038;
                break;
              }
              iVar22 = iVar22 + iVar14;
            } while (iVar22 < iVar13);
          }
        } while( true );
      }
      uStack_10d4 = 1;
      goto LAB_00286050;
    }
    puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);
    if (puVar4 == (undefined1 *)0x0) {
LAB_0028544c:
      uStack_10d4 = 0xffffffff;
    }
    else {
      uVar15 = (**(code **)(puVar30 + 0x175bdc))();
      iStack_10cc = 0x1000;
      uStack_10d4 = 0;
      uStack_10c8 = 0;
      uStack_10e4 = 0;
      cVar17 = '\0';
      puStack_10dc = (undefined1 *)0x0;
      iVar19 = 0;
      iVar11 = 0;
      iVar13 = *(int *)(puVar30 + 0x175020);
      iVar22 = *(int *)(puVar30 + 0x1752b0);
      iVar14 = *(int *)(puVar30 + 0x174fb8);
      puVar21 = puVar4;
      while( true ) {
        while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&
               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {
          if (iStack_10cc <= iVar9 + 1) {
            iStack_10cc = iStack_10cc * 2;
            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);
            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;
            puVar21 = puVar4 + iVar9;
          }
          *puVar21 = (char)iVar8;
          puVar21 = puVar21 + 1;
        }
        if ((puVar4 == (undefined1 *)0x0) ||
           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;
        *puVar21 = 0;
        uStack_10ac = 0;
        iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);
        if (iVar11 == 0) {
          (**(code **)(puVar30 + 0x175450))(uVar15);
          goto LAB_002879d4;
        }
        iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);
        if (iVar19 == 0) {
          (**(code **)(puVar30 + 0x175450))(uVar15);
          iVar19 = 0;
          goto LAB_002879c4;
        }
        iVar9 = *(int *)(puVar30 + 0x174fc8);
        iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;
        iVar8 = 0;
        while (iVar6 = (**(code **)(puVar30 + 0x175720))
                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,
                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),
              iVar6 == 0) {
          if (iVar8 == 0) {
            iStack_10a8 = 0;
            iVar7 = *(int *)(puVar30 + 0x174fc8);
            iVar28 = *(int *)(puVar30 + 0x174fb0);
            iVar6 = 0;
LAB_00284ff4:
            do {
              iVar5 = (**(code **)(puVar30 + 0x175720))
                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,
                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);
              if (iVar5 != 0) goto LAB_002850f4;
              if (iVar6 == 1) {
                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);
              }
              else if (iVar6 == 2) {
                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);
                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);
                if (puStack_10dc != (undefined1 *)0x0) {
                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);
                  iVar6 = 3;
                  goto LAB_00284ff4;
                }
              }
              else if (iVar6 == 0) {
                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);
                if (iVar5 == 0) {
                  cVar17 = -1;
                }
                else {
                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);
                }
              }
              iVar6 = iVar6 + 1;
            } while( true );
          }
          if (iVar8 != 1) goto LAB_002850f4;
          iStack_10a8 = 0;
          uVar12 = (**(code **)(puVar30 + 0x175a20))();
          while (iVar6 = (**(code **)(puVar30 + 0x175720))
                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24
                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {
            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {
              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);
              if ((int)uVar12 < iVar6) {
                uVar12 = 0;
              }
              else {
                uVar12 = uVar12 - iVar6;
              }
            }
          }
          if (cVar17 == -1) {
            if (0 < (int)uStack_10c8) {
              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);
              if (iVar6 < 0) {
                (**(code **)(puVar30 + 0x17575c))(puVar4);
                goto LAB_0028544c;
              }
              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);
              if (iVar6 < 0) {
                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);
                goto LAB_0028544c;
              }
              (**(code **)(puVar30 + 0x1759bc))(iVar3);
              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);
              if (iVar6 < 0) {
                (**(code **)(puVar30 + 0x17575c))(puVar4);
                goto LAB_0028544c;
              }
              uStack_10c8 = 0;
            }
            if ((uStack_10d4 & 1) != 0) {
              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);
              uStack_10d4 = uStack_10d4 + 1;
            }
            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);
            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);
            if (puStack_10dc == (undefined1 *)0x0) {
              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);
              iVar6 = uStack_10d4 + 7;
LAB_00287988:
              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);
              iVar6 = iVar6 + 1;
            }
            else {
              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);
              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);
              uVar29 = (uint)bVar18;
              if (uVar29 != 0) {
                puVar21 = puStack_10dc;
                do {
                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);
                  puVar21 = puVar21 + 1;
                } while (puVar21 != puStack_10dc + uVar29);
              }
              iVar6 = uStack_10d4 + 7 + uVar29;
              if ((bVar18 & 1) == 0) goto LAB_00287988;
            }
            if (uStack_10e4 == 0x404) {
              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);
              if (iVar7 < 0) goto LAB_0028544c;
              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);
              uStack_10d4 = iVar6 + 4;
              uStack_10c8 = uStack_10d4;
            }
            else {
              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);
              iStack_10a8 = 0;
              uStack_10d4 = uVar12 + iVar6 + 4;
              iVar6 = uVar12 - 1;
              if (0 < (int)uVar12) {
                iStack_10a8 = 0;
                do {
                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);
                  iStack_10a8 = iStack_10a8 + 1;
                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);
                  iVar6 = iVar6 + -1;
                } while (iVar6 != -1);
              }
              if ((uStack_10d4 & 1) != 0) {
                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);
                uStack_10d4 = uStack_10d4 + 1;
              }
            }
LAB_002850f4:
            iVar8 = iVar8 + 1;
          }
          else {
            if (0x7fff < (int)uVar12) goto LAB_002850f4;
            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);
            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);
            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);
            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);
            iStack_10a8 = 0;
            uStack_10d4 = uVar12 + uStack_10d4 + 5;
            iVar6 = uVar12 - 1;
            if ((int)uVar12 < 1) goto LAB_002850f4;
            iStack_10a8 = 0;
            do {
              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);
              iStack_10a8 = iStack_10a8 + 1;
              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);
              iVar6 = iVar6 + -1;
            } while (iVar6 != -1);
            iVar8 = 2;
          }
        }
        iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);
        iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);
        puVar21 = puVar4;
        if (puStack_10dc != (undefined1 *)0x0) {
          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);
        }
      }
LAB_0028573c:
      (**(code **)(puVar30 + 0x175450))(uVar15);
      if (iVar11 != 0) {
LAB_002879c4:
        (**(code **)(puVar30 + 0x17575c))(iVar11);
      }
LAB_002879d4:
      if (iVar19 != 0) {
        (**(code **)(puVar30 + 0x17575c))(iVar19);
      }
      if (puStack_10dc != (undefined1 *)0x0) {
        (**(code **)(puVar30 + 0x17575c))(puStack_10dc);
      }
      (**(code **)(puVar30 + 0x17575c))(puVar4);
      if (0 < (int)uStack_10c8) {
        iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);
        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {
          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);
          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);
          if (-1 < iVar19) goto LAB_00287ab4;
        }
        goto LAB_0028544c;
      }
LAB_00287ab4:
      if (uStack_10d4 == 0) {
        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));
        (**(code **)(puVar30 + 0x1756a8))(uVar15);
        (**(code **)(puVar30 + 0x175634))(iVar3);
        (**(code **)(puVar30 + 0x175608))
                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,
                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                   iVar20 + 0x2210);
        if (pcStack_10fc != (char *)0x0) {
          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
          pcStack_10fc = (char *)0x0;
        }
        goto LAB_00287858;
      }
      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;
    }
    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);
    goto LAB_00286050;
  }
  uStack_10d4 = 1;
  goto LAB_00284a7c;
LAB_00286038:
  (**(code **)(puVar30 + 0x1756a8))(iVar19);
  uStack_10d4 = 1;
  goto LAB_00286050;
LAB_00285f24:
  (**(code **)(puVar30 + 0x175450))(uVar15);
  if (iVar11 != 0) {
LAB_00287be8:
    (**(code **)(puVar30 + 0x17575c))(iVar11);
  }
LAB_00287bf8:
  if (iVar19 != 0) {
    (**(code **)(puVar30 + 0x17575c))(iVar19);
  }
  if (puStack_10ec != (undefined1 *)0x0) {
    (**(code **)(puVar30 + 0x17575c))(puStack_10ec);
  }
  (**(code **)(puVar30 + 0x17575c))(puVar4);
  if ((int)uStack_10c8 < 1) {
LAB_00287cd8:
    if (uStack_10d4 == 0) {
      uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));
      (**(code **)(puVar30 + 0x1756a8))(uVar15);
      (**(code **)(puVar30 + 0x175634))(iVar3);
      (**(code **)(puVar30 + 0x175608))
                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,
                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                 iVar20 + 0x2210);
      if (pcStack_10fc != (char *)0x0) {
        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
        pcStack_10fc = (char *)0x0;
      }
      goto LAB_00287858;
    }
    if ((uStack_10d4 & 1) == 0) goto LAB_00286050;
  }
  else {
    iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);
    if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {
      (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);
      iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);
      if (-1 < iVar19) goto LAB_00287cd8;
    }
LAB_00287db0:
    uStack_10d4 = 0xffffffff;
  }
  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);
LAB_00286050:
  uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);
  (**(code **)(puVar30 + 0x175ba0))(iVar3);
  iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1);
  if (iVar19 == 0) {
    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));
    (**(code **)(puVar30 + 0x1756a8))(uVar15);
    (**(code **)(puVar30 + 0x175634))(iVar3);
    (**(code **)(puVar30 + 0x175608))
              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700
               ,0x4ee,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,
               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);
    if (pcStack_10fc != (char *)0x0) {
      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
      pcStack_10fc = (char *)0x0;
    }
    goto LAB_00287858;
  }
  iVar13 = (**(code **)(puVar30 + 0x175d80))
                     (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f8,iVar19,param_2);
  (**(code **)(puVar30 + 0x1754e4))(iVar19);
  uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));
  (**(code **)(puVar30 + 0x1756a8))(uVar15);
  (**(code **)(puVar30 + 0x175634))(iVar3);
  if (iVar13 == 0) {
    (**(code **)(puVar30 + 0x175608))
              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700
               ,0x4f6,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,
               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);
    if (pcStack_10fc != (char *)0x0) {
      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
      pcStack_10fc = (char *)0x0;
    }
    goto LAB_00287858;
  }
LAB_00284a7c:
  iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78b8,4);
  if (iVar3 == 0) {
    (**(code **)(puVar30 + 0x175464))(auStack_1084,0x1000,*(int *)(puVar30 + 0x175020) + -0x4858,1);
    iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);
    if (iVar3 == 0) {
      (**(code **)(puVar30 + 0x175608))
                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                 *(int *)(puVar30 + 0x175020) + -0x4700,0x500,400,
                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                 iVar20 + 0x2210);
      if (pcStack_10fc != (char *)0x0) {
        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
      }
    }
    else {
      iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);
      if (iVar19 == 0) {
        (**(code **)(puVar30 + 0x175634))(iVar3);
        (**(code **)(puVar30 + 0x175608))
                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,
                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                   iVar20 + 0x2210);
        if (pcStack_10fc != (char *)0x0) {
          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
          pcStack_10fc = (char *)0x0;
          goto LAB_00287858;
        }
      }
      else {
        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);
        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);
        if (iVar19 != 0) {
          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);
          if (iVar19 != 0) {
            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);
            do {
              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);
              if (iVar13 == 0) goto LAB_00286b70;
              iVar22 = 0;
              if (0 < iVar13) {
                do {
                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);
                  if (iVar14 < 1) {
                    if (iVar22 < iVar13) goto LAB_00286b70;
                    break;
                  }
                  iVar22 = iVar22 + iVar14;
                } while (iVar22 < iVar13);
              }
            } while( true );
          }
          goto LAB_00286b84;
        }
        if (*(int *)(iVar20 + 0x1ec) == 0) {
          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));
          (**(code **)(puVar30 + 0x1756a8))(uVar15);
          (**(code **)(puVar30 + 0x175634))(iVar3);
          (**(code **)(puVar30 + 0x175608))
                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,
                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                     iVar20 + 0x2210);
          if (pcStack_10fc != (char *)0x0) {
            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
            pcStack_10fc = (char *)0x0;
            goto LAB_00287858;
          }
        }
        else {
          uVar15 = (**(code **)(puVar30 + 0x175548))();
          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);
          if (iVar19 == 0) {
            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));
            (**(code **)(puVar30 + 0x1756a8))(uVar15);
            (**(code **)(puVar30 + 0x175634))(iVar3);
            (**(code **)(puVar30 + 0x175608))
                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,
                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                       iVar20 + 0x2210);
            if (pcStack_10fc != (char *)0x0) {
              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
              pcStack_10fc = (char *)0x0;
              goto LAB_00287858;
            }
          }
          else {
            uVar26 = *(undefined4 *)(iVar19 + 0x3348);
            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);
            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);
            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);
            iVar13 = FUN_00282440(pcStack_10fc,iVar3);
            if (iVar13 == 0xff) {
              iVar13 = FUN_00282440(pcStack_10fc,iVar3);
              iVar22 = *(int *)(puVar30 + 0x1752b0);
              if (iVar13 == 0xd8) {
                iVar13 = *(int *)(puVar30 + 0x175020);
                uVar15 = *(undefined4 *)(iVar13 + -0x4720);
LAB_002869d4:
                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);
                if (uVar12 != 0xffffffff) {
                  if (uVar12 == 0xff) {
                    do {
                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);
                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;
                    } while (uVar12 == 0xff);
                    if (uVar12 == 0xd9) goto LAB_002867e4;
                    if (uVar12 != 0xed) {
                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);
                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);
                    }
                    if (uVar12 == 0xe0) {
                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);
                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);
                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);
                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);
                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);
                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);
                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);
                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);
                      uStack_10a4 = uVar15;
                      (**(code **)(puVar30 + 0x175ba0))(iVar19);
                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);
                      uVar12 = extraout_v1_00;
                      if ((extraout_v1_00 & 1) != 0) {
                        uVar12 = extraout_v1_00 + 1;
                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);
                      }
                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),
                                             (char)uVar12 + '\x10');
                      puVar25 = &uStack_10a4;
                      do {
                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);
                        puVar25 = (undefined4 *)((int)puVar25 + 1);
                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));
                      do {
                        iVar14 = FUN_00282440(iVar19,iVar3);
                      } while (iVar14 != -1);
                      (**(code **)(puVar30 + 0x175ba0))(iVar19);
                      if ((extraout_v1_01 & 1) != 0) {
                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);
                      }
                    }
                    else if (uVar12 == 0xed) {
                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);
                      if ((iVar14 != -1) &&
                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {
                        iVar11 = iVar14 * 0x100 + -2 + iVar11;
                        do {
                          if (iVar11 == 0) break;
                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);
                          iVar11 = iVar11 + -1;
                        } while (iVar14 != -1);
                      }
                    }
                    else {
                      if (uVar12 == 0xda) goto LAB_002867c8;
                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);
                    }
                  }
                  else {
                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);
                  }
                  goto LAB_002869d4;
                }
LAB_00287dd0:
                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));
                (**(code **)(puVar30 + 0x1756a8))(uVar15);
                (**(code **)(puVar30 + 0x175634))(iVar19);
                goto LAB_00286b84;
              }
            }
            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));
            (**(code **)(puVar30 + 0x1756a8))(uVar15);
            (**(code **)(puVar30 + 0x175634))(iVar19);
            (**(code **)(puVar30 + 0x175634))(iVar3);
            (**(code **)(puVar30 + 0x175608))
                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,
                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                       iVar20 + 0x2210);
            if (pcStack_10fc != (char *)0x0) {
              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
              pcStack_10fc = (char *)0x0;
              goto LAB_00287858;
            }
          }
        }
      }
    }
    goto LAB_00286534;
  }
  iVar3 = *(int *)(puVar30 + 0x174fb0);
  goto LAB_00284aa4;
LAB_00286b70:
  (**(code **)(puVar30 + 0x1756a8))(iVar19);
  goto LAB_00286b84;
LAB_00286f40:
  (**(code **)(puVar30 + 0x1756a8))(iVar19);
  goto LAB_00286f50;
LAB_00287414:
  (**(code **)(puVar30 + 0x1756a8))(iVar19);
  goto LAB_00287424;
LAB_00287758:
  (**(code **)(puVar30 + 0x1756a8))(iVar3);
  goto LAB_00287768;
LAB_002867c8:
  do {
    iVar13 = FUN_00282440(pcStack_10fc,iVar3);
  } while (iVar13 != -1);
LAB_002867e4:
  uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));
  (**(code **)(puVar30 + 0x1756a8))(uVar15);
  (**(code **)(puVar30 + 0x175634))(iVar19);
LAB_00286b84:
  uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);
  (**(code **)(puVar30 + 0x175ba0))(iVar3);
  iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_02);
  if (iVar19 == 0) {
    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));
    (**(code **)(puVar30 + 0x1756a8))(uVar15);
    (**(code **)(puVar30 + 0x175634))(iVar3);
    (**(code **)(puVar30 + 0x175608))
              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700
               ,0x535,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,
               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);
    if (pcStack_10fc != (char *)0x0) {
      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
      pcStack_10fc = (char *)0x0;
      goto LAB_00287858;
    }
  }
  else {
    iVar13 = (**(code **)(puVar30 + 0x175d80))(pcStack_10fc,auStack_1084,iVar19,param_2);
    (**(code **)(puVar30 + 0x1754e4))(iVar19);
    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));
    (**(code **)(puVar30 + 0x1756a8))(uVar15);
    (**(code **)(puVar30 + 0x175634))(iVar3);
    iVar3 = *(int *)(puVar30 + 0x174fb0);
    if (iVar13 != 0) {
LAB_00284aa4:
      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc);
      if (iVar3 == 0) {
LAB_00284ae8:
        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);
        if (iVar3 == 0) {
          (**(code **)(puVar30 + 0x175608))
                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,
                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                     iVar20 + 0x2210);
          if (pcStack_10fc != (char *)0x0) {
            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
            pcStack_10fc = (char *)0x0;
          }
          goto LAB_00287858;
        }
        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);
        if (iVar19 == 0) {
          (**(code **)(puVar30 + 0x175634))(iVar3);
          (**(code **)(puVar30 + 0x175608))
                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,
                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                     iVar20 + 0x2210);
          if (pcStack_10fc != (char *)0x0) {
            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
            pcStack_10fc = (char *)0x0;
          }
          goto LAB_00287858;
        }
        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);
        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);
        if (iVar19 != 0) {
          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);
          do {
            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);
            if (iVar13 == 0) goto LAB_00286f40;
            iVar22 = 0;
            if (0 < iVar13) {
              do {
                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);
                if (iVar14 < 1) {
                  if (iVar22 < iVar13) goto LAB_00286f40;
                  break;
                }
                iVar22 = iVar22 + iVar14;
              } while (iVar22 < iVar13);
            }
          } while( true );
        }
LAB_00286f50:
        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);
        (**(code **)(puVar30 + 0x175ba0))(iVar3);
        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);
        if (iVar19 == 0) {
          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));
          (**(code **)(puVar30 + 0x1756a8))(uVar15);
          (**(code **)(puVar30 + 0x175634))(iVar3);
          (**(code **)(puVar30 + 0x175608))
                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,
                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                     iVar20 + 0x2210);
          if (pcStack_10fc != (char *)0x0) {
            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
            pcStack_10fc = (char *)0x0;
          }
          goto LAB_00287858;
        }
        (**(code **)(puVar30 + 0x175d80))
                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);
        (**(code **)(puVar30 + 0x1754e4))(iVar19);
        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));
        (**(code **)(puVar30 + 0x1756a8))(uVar15);
        (**(code **)(puVar30 + 0x175634))(iVar3);
        iVar19 = *(int *)(puVar30 + 0x174fb0);
      }
      else {
        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);
        iVar19 = *(int *)(puVar30 + 0x174fb0);
        if (iVar3 == 0) goto LAB_00284ae8;
      }
      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0);
      if (iVar3 == 0) {
        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);
        if (iVar3 == 0) {
          (**(code **)(puVar30 + 0x175608))
                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,
                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                     iVar20 + 0x2210);
          if (pcStack_10fc != (char *)0x0) {
            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
            pcStack_10fc = (char *)0x0;
          }
          goto LAB_00287858;
        }
        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);
        if (iVar19 == 0) {
          (**(code **)(puVar30 + 0x175634))(iVar3);
          (**(code **)(puVar30 + 0x175608))
                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,
                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                     iVar20 + 0x2210);
          if (pcStack_10fc != (char *)0x0) {
            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
            pcStack_10fc = (char *)0x0;
          }
          goto LAB_00287858;
        }
        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);
        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);
        if (iVar19 != 0) {
          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);
          do {
            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);
            if (iVar13 == 0) goto LAB_00287414;
            iVar22 = 0;
            if (0 < iVar13) {
              do {
                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);
                if (iVar14 < 1) {
                  if (iVar22 < iVar13) goto LAB_00287414;
                  break;
                }
                iVar22 = iVar22 + iVar14;
              } while (iVar22 < iVar13);
            }
          } while( true );
        }
LAB_00287424:
        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);
        (**(code **)(puVar30 + 0x175ba0))(iVar3);
        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);
        if (iVar19 == 0) {
          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));
          (**(code **)(puVar30 + 0x1756a8))(uVar15);
          (**(code **)(puVar30 + 0x175634))(iVar3);
          (**(code **)(puVar30 + 0x175608))
                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,
                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                     iVar20 + 0x2210);
          if (pcStack_10fc != (char *)0x0) {
            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
            pcStack_10fc = (char *)0x0;
          }
          goto LAB_00287858;
        }
        (**(code **)(puVar30 + 0x175d80))
                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);
        (**(code **)(puVar30 + 0x1754e4))(iVar19);
        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));
        (**(code **)(puVar30 + 0x1756a8))(uVar15);
        (**(code **)(puVar30 + 0x175634))(iVar3);
        iVar3 = *(int *)(puVar30 + 0x174fb0);
      }
      else {
        iVar3 = *(int *)(puVar30 + 0x174fb0);
      }
      iVar2 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4);
      if (iVar2 == 0) {
        iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);
        if (iVar2 == 0) {
          (**(code **)(puVar30 + 0x175608))
                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,
                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                     iVar20 + 0x2210);
          if (pcStack_10fc != (char *)0x0) {
            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
            pcStack_10fc = (char *)0x0;
          }
          goto LAB_00287858;
        }
        iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);
        if (iVar3 == 0) {
          (**(code **)(puVar30 + 0x175634))(iVar2);
          (**(code **)(puVar30 + 0x175608))
                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,
                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                     iVar20 + 0x2210);
          if (pcStack_10fc != (char *)0x0) {
            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
            pcStack_10fc = (char *)0x0;
          }
          goto LAB_00287858;
        }
        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);
        iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);
        if (iVar3 != 0) {
          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);
          do {
            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);
            if (iVar19 == 0) goto LAB_00287758;
            iVar13 = 0;
            if (0 < iVar19) {
              do {
                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);
                if (iVar22 < 1) {
                  if (iVar13 < iVar19) goto LAB_00287758;
                  break;
                }
                iVar13 = iVar13 + iVar22;
              } while (iVar13 < iVar19);
            }
          } while( true );
        }
LAB_00287768:
        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);
        (**(code **)(puVar30 + 0x175ba0))(iVar2);
        iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);
        if (iVar3 == 0) {
          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));
          (**(code **)(puVar30 + 0x1756a8))(uVar15);
          (**(code **)(puVar30 + 0x175634))(iVar2);
          (**(code **)(puVar30 + 0x175608))
                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,
                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                     iVar20 + 0x2210);
          if (pcStack_10fc != (char *)0x0) {
            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
            pcStack_10fc = (char *)0x0;
          }
          goto LAB_00287858;
        }
        (**(code **)(puVar30 + 0x175d80))
                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);
        (**(code **)(puVar30 + 0x1754e4))(iVar3);
        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));
        (**(code **)(puVar30 + 0x1756a8))(uVar15);
        (**(code **)(puVar30 + 0x175634))(iVar2);
      }
      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
      pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc);
      goto LAB_00287858;
    }
    (**(code **)(puVar30 + 0x175608))
              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700
               ,0x53d,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,
               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);
    if (pcStack_10fc != (char *)0x0) {
      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
      pcStack_10fc = (char *)0x0;
      goto LAB_00287858;
    }
  }
LAB_00286534:
  pcStack_10fc = (char *)0x0;
LAB_00287858:
  if (iStack_84 != **(int **)(puVar30 + 0x175918)) {
    pcVar31 = *(code **)(puVar30 + 0x17574c);
    (*pcVar31)();
    iVar19 = *(int *)(pcVar31 + 0x171abc);
    iVar20 = (**(code **)(pcVar31 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x7890,
                        *(int *)(pcVar31 + 0x171b2c) + -0x483c);
    iVar3 = *(int *)(pcVar31 + 0x171dbc) + 0x4930;
    *(int *)(iVar20 + 0x18) = iVar3;
    iVar2 = *(int *)(pcVar31 + 0x171dbc) + 0x3578;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar31 + 0x1720b0))(iVar20);
    iVar20 = (**(code **)(pcVar31 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78a0,
                        *(int *)(pcVar31 + 0x171b2c) + -0x4820);
    *(int *)(iVar20 + 0x18) = iVar3;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar31 + 0x1720b0))(iVar20);
    iVar20 = (**(code **)(pcVar31 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78ac,
                        *(int *)(pcVar31 + 0x171b2c) + -0x4800);
    *(int *)(iVar20 + 0x18) = iVar3;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar31 + 0x1720b0))(iVar20);
    iVar20 = (**(code **)(pcVar31 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78b8,
                        *(int *)(pcVar31 + 0x171b2c) + -0x47dc);
    *(int *)(iVar20 + 0x18) = iVar3;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar31 + 0x1720b0))(iVar20);
    iVar20 = (**(code **)(pcVar31 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78c0,
                        *(int *)(pcVar31 + 0x171b2c) + -0x47c0);
    *(int *)(iVar20 + 0x18) = iVar3;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar31 + 0x1720b0))(iVar20);
    iVar20 = (**(code **)(pcVar31 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78cc,
                        *(int *)(pcVar31 + 0x171b2c) + -0x47a8);
    *(int *)(iVar20 + 0x18) = iVar3;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar31 + 0x1720b0))(iVar20);
    iVar20 = (**(code **)(pcVar31 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d4,
                        *(int *)(pcVar31 + 0x171b2c) + -0x4788);
    *(int *)(iVar20 + 0x18) = iVar3;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar31 + 0x1720b0))(iVar20);
    iVar13 = *(int *)(pcVar31 + 0x171b2c);
    iVar20 = (**(code **)(pcVar31 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d8,iVar13 + -0x4774);
    *(int *)(iVar20 + 0x18) = iVar3;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar31 + 0x1720b0))(iVar20);
    iVar20 = (**(code **)(pcVar31 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78dc,iVar13 + -0x4774);
    *(int *)(iVar20 + 0x18) = iVar3;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar31 + 0x1720b0))(iVar20);
    iVar20 = (**(code **)(pcVar31 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e0,
                        *(int *)(pcVar31 + 0x171b2c) + -0x4760);
    *(int *)(iVar20 + 0x18) = iVar3;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar31 + 0x1720b0))(iVar20);
    iVar13 = *(int *)(pcVar31 + 0x171b2c);
    iVar20 = (**(code **)(pcVar31 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e8,iVar13 + -0x4750);
    *(int *)(iVar20 + 0x18) = iVar3;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar31 + 0x1720b0))(iVar20);
    iVar20 = (**(code **)(pcVar31 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78f4,iVar13 + -0x4750);
    *(int *)(iVar20 + 0x18) = iVar3;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar31 + 0x1720b0))(iVar20);
    return (char *)0x810;
  }
  return pcStack_10fc;
}


lui gp,0x18
addiu gp,gp,-0x2cdc
addu gp,gp,t9
addiu sp,sp,-0x58
sw ra,0x54(sp)
sw s8,0x50(sp)
sw s7,0x4c(sp)
sw s6,0x48(sp)
sw s5,0x44(sp)
sw s4,0x40(sp)
sw s3,0x3c(sp)
sw s2,0x38(sp)
sw s1,0x34(sp)
sw s0,0x30(sp)
sw gp,0x10(sp)
lw v0,-0x7668(gp)
lw v0,0x0(v0)
sw v0,0x2c(sp)
lb v0,0x0(a0)
beq v0,zero,0x002848c0
_li v1,0x3b
beq v0,v1,0x00284694
_or s2,a0,zero
addiu v0,a0,0x1
li s0,0x1
li a0,0x3b
li a1,0x7
lb v1,0x0(v0)
beq v1,zero,0x0028468c
_nop
beq v1,a0,0x00284660
_nop
addiu s0,s0,0x1
bne s0,a1,0x002845f8
_addiu v0,v0,0x1
or s0,zero,zero
or v0,s0,zero
lw a0,0x2c(sp)
lw v1,-0x7668(gp)
lw v1,0x0(v1)
bne a0,v1,0x00284924
_lw ra,0x54(sp)
lw s8,0x50(sp)
lw s7,0x4c(sp)
lw s6,0x48(sp)
lw s5,0x44(sp)
lw s4,0x40(sp)
lw s3,0x3c(sp)
lw s2,0x38(sp)
lw s1,0x34(sp)
lw s0,0x30(sp)
jr ra
_addiu sp,sp,0x58
addiu s0,s0,0x1
beq s0,zero,0x00284620
_or v0,s0,zero
beq s2,zero,0x002848c8
_sltiu v0,s0,0x4
beq v0,zero,0x0028469c
_li v0,0x23
lw s4,-0x7f60(gp)
addiu s4,s4,-0x46bf
b 0x00284800
_or s6,zero,zero
b 0x0028461c
_or s0,zero,zero
b 0x0028466c
_li s0,0x1
lb v1,0x1(s2)
bne v1,v0,0x00284680
_lw s4,-0x7f60(gp)
addiu a2,sp,0x28
lw a1,-0x7f60(gp)
addiu a1,a1,-0x4900
or a0,s2,zero
lw t9,-0x7a64(gp)
jalr t9
_nop
lw gp,0x10(sp)
li v1,0x1
bne v0,v1,0x00284684
_addiu s4,s4,-0x46bf
lb v1,0x3(s2)
li v0,0x3b
beq v1,v0,0x002848d0
_nop
lb v1,0x4(s2)
beq v1,v0,0x00284914
_nop
lb v1,0x5(s2)
beq v1,v0,0x0028491c
_nop
li s0,0x6
lw v0,0x28(sp)
b 0x0028461c
_sb v0,0x0(s2)
or a0,s3,zero
lw t9,-0x7148(gp)
jalr t9
_nop
lw gp,0x10(sp)
b 0x00284770
_or s7,v0,zero
bne s7,v0,0x002847bc
_lw v0,0x1c(sp)
beq v0,s1,0x002847b8
_nop
addiu s5,s5,0x1
lb s3,0x0(s5)
beq s3,zero,0x002847bc
_addiu s1,s1,0x1
lb v0,0x0(s1)
beq v0,zero,0x002847bc
_nop
lw v0,0x0(s8)
sll v1,s3,0x1
addu v0,v0,v1
lhu v0,0x0(v0)
andi v0,v0,0x2
bne v0,zero,0x0028470c
_or s7,s3,zero
lb v0,0x0(s1)
lw v1,0x0(s8)
sll a0,v0,0x1
addu v1,v1,a0
lhu v1,0x0(v1)
andi v1,v1,0x2
beq v1,zero,0x00284728
_or a0,v0,zero
lw t9,-0x7148(gp)
jalr t9
_nop
lw gp,0x10(sp)
b 0x00284728
_nop
b 0x002847bc
_or s5,s2,zero
b 0x002847bc
_or s5,s2,zero
lw s1,0x1c(sp)
lb a0,0x0(s5)
lw t9,-0x7148(gp)
jalr t9
_nop
lw gp,0x10(sp)
or s3,v0,zero
lb a0,0x0(s1)
lw t9,-0x7148(gp)
jalr t9
_nop
lw gp,0x10(sp)
beq s3,v0,0x0028485c
_lw v0,0x24(sp)
addiu s6,s6,0x1
li v0,0x3
beq s6,v0,0x002848b8
_addiu s4,s4,0x9
or s1,s4,zero
lbu s5,-0x1(s4)
slt v0,s0,s5
bne v0,zero,0x002847f0
_sw s5,0x20(sp)
beq s2,s4,0x00284858
_sw s5,0x24(sp)
lb s3,0x0(s2)
beq s3,zero,0x002847a8
_nop
lb v0,0x0(s4)
beq v0,zero,0x002847b0
_lw t9,-0x7464(gp)
jalr t9
_nop
lw gp,0x10(sp)
or s8,v0,zero
addiu s5,s5,-0x1
addu v0,s4,s5
sw v0,0x1c(sp)
b 0x00284754
_or s5,s2,zero
lw v0,0x24(sp)
addu s0,s2,v0
or a0,s0,zero
lw t9,-0x7560(gp)
jalr t9
_nop
lw gp,0x10(sp)
addiu a2,v0,0x1
or a1,s0,zero
addiu a0,s2,0x1
lw t9,-0x7948(gp)
jalr t9
_nop
lw gp,0x10(sp)
sll v0,s6,0x3
addu v0,v0,s6
lw v1,-0x7f60(gp)
addiu v1,v1,-0x46c0
addu v0,v0,v1
lbu v0,0x8(v0)
sb v0,0x0(s2)
lw v0,0x20(sp)
b 0x0028461c
_addiu s0,v0,-0x1
b 0x0028461c
_or s0,zero,zero
b 0x0028461c
_or s0,zero,zero
b 0x0028461c
_or s0,zero,zero
li s0,0x3
addiu s1,s0,0x1
addu s1,s2,s1
or a0,s1,zero
lw t9,-0x7560(gp)
jalr t9
_nop
lw gp,0x10(sp)
addiu a2,v0,0x1
or a1,s1,zero
addiu a0,s2,0x1
lw t9,-0x7948(gp)
jalr t9
_nop
lw gp,0x10(sp)
b 0x00284704
_lw v0,0x28(sp)
b 0x002848d4
_li s0,0x4
b 0x002848d4
_li s0,0x5
lw t9,-0x7834(gp)
jalr t9
_nop
(translation_unit "char * FUN_0028458c(char *param_1,char *param_2)\n\n{\n  undefined1 uVar16;\n  char *pcVar1;\n  int iVar2;\n  int iVar3;\n  undefined1 *puVar4;\n  char cVar17;\n  int iVar5;\n  int iVar6;\n  byte bVar18;\n  int iVar7;\n  int iVar8;\n  int iVar9;\n  undefined4 uVar10;\n  int iVar11;\n  uint uVar12;\n  int iVar13;\n  int iVar14;\n  undefined4 uVar15;\n  undefined4 extraout_v1;\n  uint extraout_v1_00;\n  uint extraout_v1_01;\n  undefined4 extraout_v1_02;\n  undefined4 extraout_v1_03;\n  undefined4 extraout_v1_04;\n  undefined4 extraout_v1_05;\n  int iVar19;\n  int iVar20;\n  undefined1 *puVar21;\n  int iVar22;\n  char *unaff_s1;\n  char *pcVar23;\n  char *unaff_s2;\n  int iVar24;\n  int unaff_s3;\n  undefined4 *puVar25;\n  char *unaff_s4;\n  undefined4 uVar26;\n  char *unaff_s5;\n  char *pcVar27;\n  int unaff_s6;\n  int iVar28;\n  uint uVar29;\n  int unaff_s7;\n  undefined *puVar30;\n  int *unaff_s8;\n  code *pcVar31;\n  char *pcStack_10fc;\n  undefined1 *puStack_10ec;\n  uint uStack_10e4;\n  undefined1 *puStack_10dc;\n  uint uStack_10d4;\n  int iStack_10cc;\n  uint uStack_10c8;\n  undefined1 uStack_10b0;\n  undefined1 uStack_10af;\n  char cStack_10ae;\n  undefined1 uStack_10ad;\n  undefined4 uStack_10ac;\n  int iStack_10a8;\n  undefined4 uStack_10a4;\n  undefined4 uStack_10a0;\n  undefined4 uStack_109c;\n  undefined4 uStack_1098;\n  undefined1 auStack_1094 [4];\n  undefined4 uStack_1090;\n  undefined4 uStack_108c;\n  undefined1 uStack_1088;\n  undefined1 auStack_1084 [4096];\n  int iStack_84;\n  char *pcStack_80;\n  char *pcStack_7c;\n  char *pcStack_78;\n  int iStack_74;\n  char *pcStack_70;\n  char *pcStack_6c;\n  int iStack_68;\n  int iStack_64;\n  int *piStack_60;\n  code *pcStack_5c;\n  undefined1 local_30 [3];\n  char cStack_2d;\n  int local_2c;\n  \n  puVar30 = PTR_s__003f9950;\n  local_2c = *(int *)PTR___stack_chk_guard_003fa248;\n  if (*param_1 == '\0') {\n    pcVar1 = (char *)0x0;\n  }\n  else {\n    unaff_s2 = param_1;\n    if (*param_1 == ';') {\n      pcVar1 = (char *)0x1;\nLAB_0028466c:\n      if (param_1 == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar1 = param_1 + 1;\n      iVar20 = 1;\n      param_2 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }\n  }\nLAB_00284620:\n  if (local_2c == *(int *)PTR___stack_chk_guard_003fa248) {\n    return pcVar1;\n  }\n  pcVar31 = FUN_00284930;\n  iVar20 = local_2c;\n  puVar30 = PTR___stack_chk_fail_003fa07c;\n  (*(code *)PTR___stack_chk_fail_003fa07c)();\n  iStack_84 = **(int **)(puVar30 + 0x175918);\n  pcStack_80 = pcVar1;\n  pcStack_7c = unaff_s1;\n  pcStack_78 = unaff_s2;\n  iStack_74 = unaff_s3;\n  pcStack_70 = unaff_s4;\n  pcStack_6c = unaff_s5;\n  iStack_68 = unaff_s6;\n  iStack_64 = unaff_s7;\n  piStack_60 = unaff_s8;\n  pcStack_5c = pcVar31;\n  if (iVar20 == 0) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d48,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a5,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }\n  if (*(int *)(iVar20 + 0x3214) != -0x54535255) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d70,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a6,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }\n  if (*(int *)(iVar20 + 0x3210) != 0) {\n    (**(code **)(puVar30 + 0x1758c8))\n              (0x8000,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700,\n               0x4a8,*(int *)(puVar30 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210);\n  }\n  if (param_2 == (char *)0x0) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x4c80,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4aa,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }\n  if (*(int *)(param_2 + 0x1c) != -0x54535255) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x595c,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4ab,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }\n  pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175cf4))(iVar20,param_2);\n  iVar2 = (**(code **)(puVar30 + 0x175934))(iVar20,pcStack_10fc,2,param_2);\n  if (iVar2 == 0) {\n    (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n    pcStack_10fc = (char *)0x0;\n    goto LAB_00287858;\n  }\n  pcStack_10fc[0x18] = '\0';\n  pcStack_10fc[0x19] = '\0';\n  pcStack_10fc[0x1a] = '\0';\n  pcStack_10fc[0x1b] = '\x01';\n  pcStack_10fc[0x1c] = '\0';\n  pcStack_10fc[0x1d] = '\0';\n  pcStack_10fc[0x1e] = '\0';\n  pcStack_10fc[0x1f] = '\x01';\n  iVar2 = (**(code **)(puVar30 + 0x175578))(pcStack_10fc,param_2);\n  if (iVar2 == 0) {\n    (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n    pcStack_10fc = (char *)0x0;\n    goto LAB_00287858;\n  }\n  iVar2 = iVar20 + 0x210;\n  iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x7890,4);\n  if (iVar3 == 0) {\n    iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n    if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c2,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(1,1);\n    if (puVar4 == (undefined1 *)0x0) {\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c7,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    *puVar4 = 0;\n    (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),puVar4);\n    iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78a0);\n    if (iVar19 != 0) {\n      iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac);\n      if (iVar19 == 0) {\n        puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n        if (puVar4 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar11 = 0;\n          iVar13 = *(int *)(puVar30 + 0x175020);\n          iVar22 = *(int *)(puVar30 + 0x1752b0);\n          iVar14 = *(int *)(puVar30 + 0x174fb8);\n          puVar21 = puVar4;\nLAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }\n      uStack_10d4 = 1;\n      goto LAB_00286050;\n    }\n    puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n    if (puVar4 == (undefined1 *)0x0) {\nLAB_0028544c:\n      uStack_10d4 = 0xffffffff;\n    }\n    else {\n      uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n      iStack_10cc = 0x1000;\n      uStack_10d4 = 0;\n      uStack_10c8 = 0;\n      uStack_10e4 = 0;\n      cVar17 = '\0';\n      puStack_10dc = (undefined1 *)0x0;\n      iVar19 = 0;\n      iVar11 = 0;\n      iVar13 = *(int *)(puVar30 + 0x175020);\n      iVar22 = *(int *)(puVar30 + 0x1752b0);\n      iVar14 = *(int *)(puVar30 + 0x174fb8);\n      puVar21 = puVar4;\n      while( true ) {\n        while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar11 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar9 = *(int *)(puVar30 + 0x174fc8);\n        iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n        iVar8 = 0;\n        while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0) {\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }\n        iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n        iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n        puVar21 = puVar4;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }\n      }\nLAB_0028573c:\n      (**(code **)(puVar30 + 0x175450))(uVar15);\n      if (iVar11 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar30 + 0x17575c))(iVar11);\n      }\nLAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x17575c))(iVar19);\n      }\n      if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n      }\n      (**(code **)(puVar30 + 0x17575c))(puVar4);\n      if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }\nLAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }\n        goto LAB_00287858;\n      }\n      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n    }\n    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n    goto LAB_00286050;\n  }\n  uStack_10d4 = 1;\n  goto LAB_00284a7c;\nLAB_00286038:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);\n  uStack_10d4 = 1;\n  goto LAB_00286050;\nLAB_00285f24:\n  (**(code **)(puVar30 + 0x175450))(uVar15);\n  if (iVar11 != 0) {\nLAB_00287be8:\n    (**(code **)(puVar30 + 0x17575c))(iVar11);\n  }\nLAB_00287bf8:\n  if (iVar19 != 0) {\n    (**(code **)(puVar30 + 0x17575c))(iVar19);\n  }\n  if (puStack_10ec != (undefined1 *)0x0) {\n    (**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n  }\n  (**(code **)(puVar30 + 0x17575c))(puVar4);\n  if ((int)uStack_10c8 < 1) {\nLAB_00287cd8:\n    if (uStack_10d4 == 0) {\n      uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n      (**(code **)(puVar30 + 0x1756a8))(uVar15);\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,\n                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n  }\n  else {\n    iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n    if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n      (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n      iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n      if (-1 < iVar19) goto LAB_00287cd8;\n    }\nLAB_00287db0:\n    uStack_10d4 = 0xffffffff;\n  }\n  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\nLAB_00286050:\n  uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n  (**(code **)(puVar30 + 0x175ba0))(iVar3);\n  iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1);\n  if (iVar19 == 0) {\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4ee,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }\n    goto LAB_00287858;\n  }\n  iVar13 = (**(code **)(puVar30 + 0x175d80))\n                     (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f8,iVar19,param_2);\n  (**(code **)(puVar30 + 0x1754e4))(iVar19);\n  uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n  (**(code **)(puVar30 + 0x1756a8))(uVar15);\n  (**(code **)(puVar30 + 0x175634))(iVar3);\n  if (iVar13 == 0) {\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4f6,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }\n    goto LAB_00287858;\n  }\nLAB_00284a7c:\n  iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78b8,4);\n  if (iVar3 == 0) {\n    (**(code **)(puVar30 + 0x175464))(auStack_1084,0x1000,*(int *)(puVar30 + 0x175020) + -0x4858,1);\n    iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n    if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x500,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      }\n    }\n    else {\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n      if (iVar19 == 0) {\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);\n        if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }\n    }\n    goto LAB_00286534;\n  }\n  iVar3 = *(int *)(puVar30 + 0x174fb0);\n  goto LAB_00284aa4;\nLAB_00286b70:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);\n  goto LAB_00286b84;\nLAB_00286f40:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);\n  goto LAB_00286f50;\nLAB_00287414:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);\n  goto LAB_00287424;\nLAB_00287758:\n  (**(code **)(puVar30 + 0x1756a8))(iVar3);\n  goto LAB_00287768;\nLAB_002867c8:\n  do {\n    iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n  } while (iVar13 != -1);\nLAB_002867e4:\n  uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n  (**(code **)(puVar30 + 0x1756a8))(uVar15);\n  (**(code **)(puVar30 + 0x175634))(iVar19);\nLAB_00286b84:\n  uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n  (**(code **)(puVar30 + 0x175ba0))(iVar3);\n  iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_02);\n  if (iVar19 == 0) {\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x535,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }\n  }\n  else {\n    iVar13 = (**(code **)(puVar30 + 0x175d80))(pcStack_10fc,auStack_1084,iVar19,param_2);\n    (**(code **)(puVar30 + 0x1754e4))(iVar19);\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    iVar3 = *(int *)(puVar30 + 0x174fb0);\n    if (iVar13 != 0) {\nLAB_00284aa4:\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc);\n      if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0);\n      if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      iVar2 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4);\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar2 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);\n        (**(code **)(puVar30 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar2);\n      }\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc);\n      goto LAB_00287858;\n    }\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x53d,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }\n  }\nLAB_00286534:\n  pcStack_10fc = (char *)0x0;\nLAB_00287858:\n  if (iStack_84 != **(int **)(puVar30 + 0x175918)) {\n    pcVar31 = *(code **)(puVar30 + 0x17574c);\n    (*pcVar31)();\n    iVar19 = *(int *)(pcVar31 + 0x171abc);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x483c);\n    iVar3 = *(int *)(pcVar31 + 0x171dbc) + 0x4930;\n    *(int *)(iVar20 + 0x18) = iVar3;\n    iVar2 = *(int *)(pcVar31 + 0x171dbc) + 0x3578;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4820);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4800);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47dc);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47c0);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47a8);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4788);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d8,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78dc,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4760);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e8,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78f4,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    return (char *)0x810;\n  }\n  return pcStack_10fc;\n}\n\n" (function_definition "char * FUN_0028458c(char *param_1,char *param_2)\n\n{\n  undefined1 uVar16;\n  char *pcVar1;\n  int iVar2;\n  int iVar3;\n  undefined1 *puVar4;\n  char cVar17;\n  int iVar5;\n  int iVar6;\n  byte bVar18;\n  int iVar7;\n  int iVar8;\n  int iVar9;\n  undefined4 uVar10;\n  int iVar11;\n  uint uVar12;\n  int iVar13;\n  int iVar14;\n  undefined4 uVar15;\n  undefined4 extraout_v1;\n  uint extraout_v1_00;\n  uint extraout_v1_01;\n  undefined4 extraout_v1_02;\n  undefined4 extraout_v1_03;\n  undefined4 extraout_v1_04;\n  undefined4 extraout_v1_05;\n  int iVar19;\n  int iVar20;\n  undefined1 *puVar21;\n  int iVar22;\n  char *unaff_s1;\n  char *pcVar23;\n  char *unaff_s2;\n  int iVar24;\n  int unaff_s3;\n  undefined4 *puVar25;\n  char *unaff_s4;\n  undefined4 uVar26;\n  char *unaff_s5;\n  char *pcVar27;\n  int unaff_s6;\n  int iVar28;\n  uint uVar29;\n  int unaff_s7;\n  undefined *puVar30;\n  int *unaff_s8;\n  code *pcVar31;\n  char *pcStack_10fc;\n  undefined1 *puStack_10ec;\n  uint uStack_10e4;\n  undefined1 *puStack_10dc;\n  uint uStack_10d4;\n  int iStack_10cc;\n  uint uStack_10c8;\n  undefined1 uStack_10b0;\n  undefined1 uStack_10af;\n  char cStack_10ae;\n  undefined1 uStack_10ad;\n  undefined4 uStack_10ac;\n  int iStack_10a8;\n  undefined4 uStack_10a4;\n  undefined4 uStack_10a0;\n  undefined4 uStack_109c;\n  undefined4 uStack_1098;\n  undefined1 auStack_1094 [4];\n  undefined4 uStack_1090;\n  undefined4 uStack_108c;\n  undefined1 uStack_1088;\n  undefined1 auStack_1084 [4096];\n  int iStack_84;\n  char *pcStack_80;\n  char *pcStack_7c;\n  char *pcStack_78;\n  int iStack_74;\n  char *pcStack_70;\n  char *pcStack_6c;\n  int iStack_68;\n  int iStack_64;\n  int *piStack_60;\n  code *pcStack_5c;\n  undefined1 local_30 [3];\n  char cStack_2d;\n  int local_2c;\n  \n  puVar30 = PTR_s__003f9950;\n  local_2c = *(int *)PTR___stack_chk_guard_003fa248;\n  if (*param_1 == '\0') {\n    pcVar1 = (char *)0x0;\n  }\n  else {\n    unaff_s2 = param_1;\n    if (*param_1 == ';') {\n      pcVar1 = (char *)0x1;\nLAB_0028466c:\n      if (param_1 == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar1 = param_1 + 1;\n      iVar20 = 1;\n      param_2 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }\n  }\nLAB_00284620:\n  if (local_2c == *(int *)PTR___stack_chk_guard_003fa248) {\n    return pcVar1;\n  }\n  pcVar31 = FUN_00284930;\n  iVar20 = local_2c;\n  puVar30 = PTR___stack_chk_fail_003fa07c;\n  (*(code *)PTR___stack_chk_fail_003fa07c)();\n  iStack_84 = **(int **)(puVar30 + 0x175918);\n  pcStack_80 = pcVar1;\n  pcStack_7c = unaff_s1;\n  pcStack_78 = unaff_s2;\n  iStack_74 = unaff_s3;\n  pcStack_70 = unaff_s4;\n  pcStack_6c = unaff_s5;\n  iStack_68 = unaff_s6;\n  iStack_64 = unaff_s7;\n  piStack_60 = unaff_s8;\n  pcStack_5c = pcVar31;\n  if (iVar20 == 0) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d48,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a5,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }\n  if (*(int *)(iVar20 + 0x3214) != -0x54535255) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d70,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a6,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }\n  if (*(int *)(iVar20 + 0x3210) != 0) {\n    (**(code **)(puVar30 + 0x1758c8))\n              (0x8000,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700,\n               0x4a8,*(int *)(puVar30 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210);\n  }\n  if (param_2 == (char *)0x0) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x4c80,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4aa,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }\n  if (*(int *)(param_2 + 0x1c) != -0x54535255) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x595c,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4ab,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }\n  pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175cf4))(iVar20,param_2);\n  iVar2 = (**(code **)(puVar30 + 0x175934))(iVar20,pcStack_10fc,2,param_2);\n  if (iVar2 == 0) {\n    (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n    pcStack_10fc = (char *)0x0;\n    goto LAB_00287858;\n  }\n  pcStack_10fc[0x18] = '\0';\n  pcStack_10fc[0x19] = '\0';\n  pcStack_10fc[0x1a] = '\0';\n  pcStack_10fc[0x1b] = '\x01';\n  pcStack_10fc[0x1c] = '\0';\n  pcStack_10fc[0x1d] = '\0';\n  pcStack_10fc[0x1e] = '\0';\n  pcStack_10fc[0x1f] = '\x01';\n  iVar2 = (**(code **)(puVar30 + 0x175578))(pcStack_10fc,param_2);\n  if (iVar2 == 0) {\n    (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n    pcStack_10fc = (char *)0x0;\n    goto LAB_00287858;\n  }\n  iVar2 = iVar20 + 0x210;\n  iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x7890,4);\n  if (iVar3 == 0) {\n    iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n    if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c2,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(1,1);\n    if (puVar4 == (undefined1 *)0x0) {\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c7,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    *puVar4 = 0;\n    (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),puVar4);\n    iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78a0);\n    if (iVar19 != 0) {\n      iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac);\n      if (iVar19 == 0) {\n        puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n        if (puVar4 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar11 = 0;\n          iVar13 = *(int *)(puVar30 + 0x175020);\n          iVar22 = *(int *)(puVar30 + 0x1752b0);\n          iVar14 = *(int *)(puVar30 + 0x174fb8);\n          puVar21 = puVar4;\nLAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }\n      uStack_10d4 = 1;\n      goto LAB_00286050;\n    }\n    puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n    if (puVar4 == (undefined1 *)0x0) {\nLAB_0028544c:\n      uStack_10d4 = 0xffffffff;\n    }\n    else {\n      uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n      iStack_10cc = 0x1000;\n      uStack_10d4 = 0;\n      uStack_10c8 = 0;\n      uStack_10e4 = 0;\n      cVar17 = '\0';\n      puStack_10dc = (undefined1 *)0x0;\n      iVar19 = 0;\n      iVar11 = 0;\n      iVar13 = *(int *)(puVar30 + 0x175020);\n      iVar22 = *(int *)(puVar30 + 0x1752b0);\n      iVar14 = *(int *)(puVar30 + 0x174fb8);\n      puVar21 = puVar4;\n      while( true ) {\n        while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar11 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar9 = *(int *)(puVar30 + 0x174fc8);\n        iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n        iVar8 = 0;\n        while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0) {\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }\n        iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n        iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n        puVar21 = puVar4;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }\n      }\nLAB_0028573c:\n      (**(code **)(puVar30 + 0x175450))(uVar15);\n      if (iVar11 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar30 + 0x17575c))(iVar11);\n      }\nLAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x17575c))(iVar19);\n      }\n      if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n      }\n      (**(code **)(puVar30 + 0x17575c))(puVar4);\n      if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }\nLAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }\n        goto LAB_00287858;\n      }\n      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n    }\n    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n    goto LAB_00286050;\n  }\n  uStack_10d4 = 1;\n  goto LAB_00284a7c;\nLAB_00286038:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);\n  uStack_10d4 = 1;\n  goto LAB_00286050;\nLAB_00285f24:\n  (**(code **)(puVar30 + 0x175450))(uVar15);\n  if (iVar11 != 0) {\nLAB_00287be8:\n    (**(code **)(puVar30 + 0x17575c))(iVar11);\n  }\nLAB_00287bf8:\n  if (iVar19 != 0) {\n    (**(code **)(puVar30 + 0x17575c))(iVar19);\n  }\n  if (puStack_10ec != (undefined1 *)0x0) {\n    (**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n  }\n  (**(code **)(puVar30 + 0x17575c))(puVar4);\n  if ((int)uStack_10c8 < 1) {\nLAB_00287cd8:\n    if (uStack_10d4 == 0) {\n      uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n      (**(code **)(puVar30 + 0x1756a8))(uVar15);\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,\n                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n  }\n  else {\n    iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n    if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n      (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n      iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n      if (-1 < iVar19) goto LAB_00287cd8;\n    }\nLAB_00287db0:\n    uStack_10d4 = 0xffffffff;\n  }\n  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\nLAB_00286050:\n  uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n  (**(code **)(puVar30 + 0x175ba0))(iVar3);\n  iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1);\n  if (iVar19 == 0) {\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4ee,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }\n    goto LAB_00287858;\n  }\n  iVar13 = (**(code **)(puVar30 + 0x175d80))\n                     (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f8,iVar19,param_2);\n  (**(code **)(puVar30 + 0x1754e4))(iVar19);\n  uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n  (**(code **)(puVar30 + 0x1756a8))(uVar15);\n  (**(code **)(puVar30 + 0x175634))(iVar3);\n  if (iVar13 == 0) {\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4f6,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }\n    goto LAB_00287858;\n  }\nLAB_00284a7c:\n  iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78b8,4);\n  if (iVar3 == 0) {\n    (**(code **)(puVar30 + 0x175464))(auStack_1084,0x1000,*(int *)(puVar30 + 0x175020) + -0x4858,1);\n    iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n    if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x500,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      }\n    }\n    else {\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n      if (iVar19 == 0) {\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);\n        if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }\n    }\n    goto LAB_00286534;\n  }\n  iVar3 = *(int *)(puVar30 + 0x174fb0);\n  goto LAB_00284aa4;\nLAB_00286b70:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);\n  goto LAB_00286b84;\nLAB_00286f40:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);\n  goto LAB_00286f50;\nLAB_00287414:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);\n  goto LAB_00287424;\nLAB_00287758:\n  (**(code **)(puVar30 + 0x1756a8))(iVar3);\n  goto LAB_00287768;\nLAB_002867c8:\n  do {\n    iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n  } while (iVar13 != -1);\nLAB_002867e4:\n  uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n  (**(code **)(puVar30 + 0x1756a8))(uVar15);\n  (**(code **)(puVar30 + 0x175634))(iVar19);\nLAB_00286b84:\n  uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n  (**(code **)(puVar30 + 0x175ba0))(iVar3);\n  iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_02);\n  if (iVar19 == 0) {\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x535,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }\n  }\n  else {\n    iVar13 = (**(code **)(puVar30 + 0x175d80))(pcStack_10fc,auStack_1084,iVar19,param_2);\n    (**(code **)(puVar30 + 0x1754e4))(iVar19);\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    iVar3 = *(int *)(puVar30 + 0x174fb0);\n    if (iVar13 != 0) {\nLAB_00284aa4:\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc);\n      if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0);\n      if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      iVar2 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4);\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar2 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);\n        (**(code **)(puVar30 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar2);\n      }\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc);\n      goto LAB_00287858;\n    }\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x53d,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }\n  }\nLAB_00286534:\n  pcStack_10fc = (char *)0x0;\nLAB_00287858:\n  if (iStack_84 != **(int **)(puVar30 + 0x175918)) {\n    pcVar31 = *(code **)(puVar30 + 0x17574c);\n    (*pcVar31)();\n    iVar19 = *(int *)(pcVar31 + 0x171abc);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x483c);\n    iVar3 = *(int *)(pcVar31 + 0x171dbc) + 0x4930;\n    *(int *)(iVar20 + 0x18) = iVar3;\n    iVar2 = *(int *)(pcVar31 + 0x171dbc) + 0x3578;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4820);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4800);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47dc);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47c0);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47a8);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4788);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d8,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78dc,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4760);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e8,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78f4,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    return (char *)0x810;\n  }\n  return pcStack_10fc;\n}" primitive_type (pointer_declarator "* FUN_0028458c(char *param_1,char *param_2)" * (function_declarator "FUN_0028458c(char *param_1,char *param_2)" identifier (parameter_list "(char *param_1,char *param_2)" ( (parameter_declaration "char *param_1" primitive_type (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "char *param_2" primitive_type (pointer_declarator "*param_2" * identifier)) )))) (compound_statement "{\n  undefined1 uVar16;\n  char *pcVar1;\n  int iVar2;\n  int iVar3;\n  undefined1 *puVar4;\n  char cVar17;\n  int iVar5;\n  int iVar6;\n  byte bVar18;\n  int iVar7;\n  int iVar8;\n  int iVar9;\n  undefined4 uVar10;\n  int iVar11;\n  uint uVar12;\n  int iVar13;\n  int iVar14;\n  undefined4 uVar15;\n  undefined4 extraout_v1;\n  uint extraout_v1_00;\n  uint extraout_v1_01;\n  undefined4 extraout_v1_02;\n  undefined4 extraout_v1_03;\n  undefined4 extraout_v1_04;\n  undefined4 extraout_v1_05;\n  int iVar19;\n  int iVar20;\n  undefined1 *puVar21;\n  int iVar22;\n  char *unaff_s1;\n  char *pcVar23;\n  char *unaff_s2;\n  int iVar24;\n  int unaff_s3;\n  undefined4 *puVar25;\n  char *unaff_s4;\n  undefined4 uVar26;\n  char *unaff_s5;\n  char *pcVar27;\n  int unaff_s6;\n  int iVar28;\n  uint uVar29;\n  int unaff_s7;\n  undefined *puVar30;\n  int *unaff_s8;\n  code *pcVar31;\n  char *pcStack_10fc;\n  undefined1 *puStack_10ec;\n  uint uStack_10e4;\n  undefined1 *puStack_10dc;\n  uint uStack_10d4;\n  int iStack_10cc;\n  uint uStack_10c8;\n  undefined1 uStack_10b0;\n  undefined1 uStack_10af;\n  char cStack_10ae;\n  undefined1 uStack_10ad;\n  undefined4 uStack_10ac;\n  int iStack_10a8;\n  undefined4 uStack_10a4;\n  undefined4 uStack_10a0;\n  undefined4 uStack_109c;\n  undefined4 uStack_1098;\n  undefined1 auStack_1094 [4];\n  undefined4 uStack_1090;\n  undefined4 uStack_108c;\n  undefined1 uStack_1088;\n  undefined1 auStack_1084 [4096];\n  int iStack_84;\n  char *pcStack_80;\n  char *pcStack_7c;\n  char *pcStack_78;\n  int iStack_74;\n  char *pcStack_70;\n  char *pcStack_6c;\n  int iStack_68;\n  int iStack_64;\n  int *piStack_60;\n  code *pcStack_5c;\n  undefined1 local_30 [3];\n  char cStack_2d;\n  int local_2c;\n  \n  puVar30 = PTR_s__003f9950;\n  local_2c = *(int *)PTR___stack_chk_guard_003fa248;\n  if (*param_1 == '\0') {\n    pcVar1 = (char *)0x0;\n  }\n  else {\n    unaff_s2 = param_1;\n    if (*param_1 == ';') {\n      pcVar1 = (char *)0x1;\nLAB_0028466c:\n      if (param_1 == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar1 = param_1 + 1;\n      iVar20 = 1;\n      param_2 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }\n  }\nLAB_00284620:\n  if (local_2c == *(int *)PTR___stack_chk_guard_003fa248) {\n    return pcVar1;\n  }\n  pcVar31 = FUN_00284930;\n  iVar20 = local_2c;\n  puVar30 = PTR___stack_chk_fail_003fa07c;\n  (*(code *)PTR___stack_chk_fail_003fa07c)();\n  iStack_84 = **(int **)(puVar30 + 0x175918);\n  pcStack_80 = pcVar1;\n  pcStack_7c = unaff_s1;\n  pcStack_78 = unaff_s2;\n  iStack_74 = unaff_s3;\n  pcStack_70 = unaff_s4;\n  pcStack_6c = unaff_s5;\n  iStack_68 = unaff_s6;\n  iStack_64 = unaff_s7;\n  piStack_60 = unaff_s8;\n  pcStack_5c = pcVar31;\n  if (iVar20 == 0) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d48,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a5,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }\n  if (*(int *)(iVar20 + 0x3214) != -0x54535255) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d70,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a6,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }\n  if (*(int *)(iVar20 + 0x3210) != 0) {\n    (**(code **)(puVar30 + 0x1758c8))\n              (0x8000,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700,\n               0x4a8,*(int *)(puVar30 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210);\n  }\n  if (param_2 == (char *)0x0) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x4c80,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4aa,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }\n  if (*(int *)(param_2 + 0x1c) != -0x54535255) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x595c,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4ab,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }\n  pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175cf4))(iVar20,param_2);\n  iVar2 = (**(code **)(puVar30 + 0x175934))(iVar20,pcStack_10fc,2,param_2);\n  if (iVar2 == 0) {\n    (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n    pcStack_10fc = (char *)0x0;\n    goto LAB_00287858;\n  }\n  pcStack_10fc[0x18] = '\0';\n  pcStack_10fc[0x19] = '\0';\n  pcStack_10fc[0x1a] = '\0';\n  pcStack_10fc[0x1b] = '\x01';\n  pcStack_10fc[0x1c] = '\0';\n  pcStack_10fc[0x1d] = '\0';\n  pcStack_10fc[0x1e] = '\0';\n  pcStack_10fc[0x1f] = '\x01';\n  iVar2 = (**(code **)(puVar30 + 0x175578))(pcStack_10fc,param_2);\n  if (iVar2 == 0) {\n    (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n    pcStack_10fc = (char *)0x0;\n    goto LAB_00287858;\n  }\n  iVar2 = iVar20 + 0x210;\n  iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x7890,4);\n  if (iVar3 == 0) {\n    iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n    if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c2,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(1,1);\n    if (puVar4 == (undefined1 *)0x0) {\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c7,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    *puVar4 = 0;\n    (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),puVar4);\n    iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78a0);\n    if (iVar19 != 0) {\n      iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac);\n      if (iVar19 == 0) {\n        puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n        if (puVar4 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar11 = 0;\n          iVar13 = *(int *)(puVar30 + 0x175020);\n          iVar22 = *(int *)(puVar30 + 0x1752b0);\n          iVar14 = *(int *)(puVar30 + 0x174fb8);\n          puVar21 = puVar4;\nLAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }\n      uStack_10d4 = 1;\n      goto LAB_00286050;\n    }\n    puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n    if (puVar4 == (undefined1 *)0x0) {\nLAB_0028544c:\n      uStack_10d4 = 0xffffffff;\n    }\n    else {\n      uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n      iStack_10cc = 0x1000;\n      uStack_10d4 = 0;\n      uStack_10c8 = 0;\n      uStack_10e4 = 0;\n      cVar17 = '\0';\n      puStack_10dc = (undefined1 *)0x0;\n      iVar19 = 0;\n      iVar11 = 0;\n      iVar13 = *(int *)(puVar30 + 0x175020);\n      iVar22 = *(int *)(puVar30 + 0x1752b0);\n      iVar14 = *(int *)(puVar30 + 0x174fb8);\n      puVar21 = puVar4;\n      while( true ) {\n        while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar11 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar9 = *(int *)(puVar30 + 0x174fc8);\n        iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n        iVar8 = 0;\n        while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0) {\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }\n        iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n        iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n        puVar21 = puVar4;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }\n      }\nLAB_0028573c:\n      (**(code **)(puVar30 + 0x175450))(uVar15);\n      if (iVar11 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar30 + 0x17575c))(iVar11);\n      }\nLAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x17575c))(iVar19);\n      }\n      if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n      }\n      (**(code **)(puVar30 + 0x17575c))(puVar4);\n      if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }\nLAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }\n        goto LAB_00287858;\n      }\n      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n    }\n    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n    goto LAB_00286050;\n  }\n  uStack_10d4 = 1;\n  goto LAB_00284a7c;\nLAB_00286038:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);\n  uStack_10d4 = 1;\n  goto LAB_00286050;\nLAB_00285f24:\n  (**(code **)(puVar30 + 0x175450))(uVar15);\n  if (iVar11 != 0) {\nLAB_00287be8:\n    (**(code **)(puVar30 + 0x17575c))(iVar11);\n  }\nLAB_00287bf8:\n  if (iVar19 != 0) {\n    (**(code **)(puVar30 + 0x17575c))(iVar19);\n  }\n  if (puStack_10ec != (undefined1 *)0x0) {\n    (**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n  }\n  (**(code **)(puVar30 + 0x17575c))(puVar4);\n  if ((int)uStack_10c8 < 1) {\nLAB_00287cd8:\n    if (uStack_10d4 == 0) {\n      uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n      (**(code **)(puVar30 + 0x1756a8))(uVar15);\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,\n                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n  }\n  else {\n    iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n    if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n      (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n      iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n      if (-1 < iVar19) goto LAB_00287cd8;\n    }\nLAB_00287db0:\n    uStack_10d4 = 0xffffffff;\n  }\n  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\nLAB_00286050:\n  uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n  (**(code **)(puVar30 + 0x175ba0))(iVar3);\n  iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1);\n  if (iVar19 == 0) {\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4ee,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }\n    goto LAB_00287858;\n  }\n  iVar13 = (**(code **)(puVar30 + 0x175d80))\n                     (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f8,iVar19,param_2);\n  (**(code **)(puVar30 + 0x1754e4))(iVar19);\n  uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n  (**(code **)(puVar30 + 0x1756a8))(uVar15);\n  (**(code **)(puVar30 + 0x175634))(iVar3);\n  if (iVar13 == 0) {\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4f6,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }\n    goto LAB_00287858;\n  }\nLAB_00284a7c:\n  iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78b8,4);\n  if (iVar3 == 0) {\n    (**(code **)(puVar30 + 0x175464))(auStack_1084,0x1000,*(int *)(puVar30 + 0x175020) + -0x4858,1);\n    iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n    if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x500,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      }\n    }\n    else {\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n      if (iVar19 == 0) {\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);\n        if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }\n    }\n    goto LAB_00286534;\n  }\n  iVar3 = *(int *)(puVar30 + 0x174fb0);\n  goto LAB_00284aa4;\nLAB_00286b70:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);\n  goto LAB_00286b84;\nLAB_00286f40:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);\n  goto LAB_00286f50;\nLAB_00287414:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);\n  goto LAB_00287424;\nLAB_00287758:\n  (**(code **)(puVar30 + 0x1756a8))(iVar3);\n  goto LAB_00287768;\nLAB_002867c8:\n  do {\n    iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n  } while (iVar13 != -1);\nLAB_002867e4:\n  uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n  (**(code **)(puVar30 + 0x1756a8))(uVar15);\n  (**(code **)(puVar30 + 0x175634))(iVar19);\nLAB_00286b84:\n  uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n  (**(code **)(puVar30 + 0x175ba0))(iVar3);\n  iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_02);\n  if (iVar19 == 0) {\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x535,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }\n  }\n  else {\n    iVar13 = (**(code **)(puVar30 + 0x175d80))(pcStack_10fc,auStack_1084,iVar19,param_2);\n    (**(code **)(puVar30 + 0x1754e4))(iVar19);\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    iVar3 = *(int *)(puVar30 + 0x174fb0);\n    if (iVar13 != 0) {\nLAB_00284aa4:\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc);\n      if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0);\n      if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      iVar2 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4);\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar2 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);\n        (**(code **)(puVar30 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar2);\n      }\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc);\n      goto LAB_00287858;\n    }\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x53d,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }\n  }\nLAB_00286534:\n  pcStack_10fc = (char *)0x0;\nLAB_00287858:\n  if (iStack_84 != **(int **)(puVar30 + 0x175918)) {\n    pcVar31 = *(code **)(puVar30 + 0x17574c);\n    (*pcVar31)();\n    iVar19 = *(int *)(pcVar31 + 0x171abc);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x483c);\n    iVar3 = *(int *)(pcVar31 + 0x171dbc) + 0x4930;\n    *(int *)(iVar20 + 0x18) = iVar3;\n    iVar2 = *(int *)(pcVar31 + 0x171dbc) + 0x3578;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4820);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4800);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47dc);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47c0);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47a8);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4788);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d8,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78dc,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4760);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e8,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78f4,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    return (char *)0x810;\n  }\n  return pcStack_10fc;\n}" { (declaration "undefined1 uVar16;" type_identifier identifier ;) (declaration "char *pcVar1;" primitive_type (pointer_declarator "*pcVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "undefined1 *puVar4;" type_identifier (pointer_declarator "*puVar4" * identifier) ;) (declaration "char cVar17;" primitive_type identifier ;) (declaration "int iVar5;" primitive_type identifier ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "byte bVar18;" type_identifier identifier ;) (declaration "int iVar7;" primitive_type identifier ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "int iVar9;" primitive_type identifier ;) (declaration "undefined4 uVar10;" type_identifier identifier ;) (declaration "int iVar11;" primitive_type identifier ;) (declaration "uint uVar12;" type_identifier identifier ;) (declaration "int iVar13;" primitive_type identifier ;) (declaration "int iVar14;" primitive_type identifier ;) (declaration "undefined4 uVar15;" type_identifier identifier ;) (declaration "undefined4 extraout_v1;" type_identifier identifier ;) (declaration "uint extraout_v1_00;" type_identifier identifier ;) (declaration "uint extraout_v1_01;" type_identifier identifier ;) (declaration "undefined4 extraout_v1_02;" type_identifier identifier ;) (declaration "undefined4 extraout_v1_03;" type_identifier identifier ;) (declaration "undefined4 extraout_v1_04;" type_identifier identifier ;) (declaration "undefined4 extraout_v1_05;" type_identifier identifier ;) (declaration "int iVar19;" primitive_type identifier ;) (declaration "int iVar20;" primitive_type identifier ;) (declaration "undefined1 *puVar21;" type_identifier (pointer_declarator "*puVar21" * identifier) ;) (declaration "int iVar22;" primitive_type identifier ;) (declaration "char *unaff_s1;" primitive_type (pointer_declarator "*unaff_s1" * identifier) ;) (declaration "char *pcVar23;" primitive_type (pointer_declarator "*pcVar23" * identifier) ;) (declaration "char *unaff_s2;" primitive_type (pointer_declarator "*unaff_s2" * identifier) ;) (declaration "int iVar24;" primitive_type identifier ;) (declaration "int unaff_s3;" primitive_type identifier ;) (declaration "undefined4 *puVar25;" type_identifier (pointer_declarator "*puVar25" * identifier) ;) (declaration "char *unaff_s4;" primitive_type (pointer_declarator "*unaff_s4" * identifier) ;) (declaration "undefined4 uVar26;" type_identifier identifier ;) (declaration "char *unaff_s5;" primitive_type (pointer_declarator "*unaff_s5" * identifier) ;) (declaration "char *pcVar27;" primitive_type (pointer_declarator "*pcVar27" * identifier) ;) (declaration "int unaff_s6;" primitive_type identifier ;) (declaration "int iVar28;" primitive_type identifier ;) (declaration "uint uVar29;" type_identifier identifier ;) (declaration "int unaff_s7;" primitive_type identifier ;) (declaration "undefined *puVar30;" type_identifier (pointer_declarator "*puVar30" * identifier) ;) (declaration "int *unaff_s8;" primitive_type (pointer_declarator "*unaff_s8" * identifier) ;) (declaration "code *pcVar31;" type_identifier (pointer_declarator "*pcVar31" * identifier) ;) (declaration "char *pcStack_10fc;" primitive_type (pointer_declarator "*pcStack_10fc" * identifier) ;) (declaration "undefined1 *puStack_10ec;" type_identifier (pointer_declarator "*puStack_10ec" * identifier) ;) (declaration "uint uStack_10e4;" type_identifier identifier ;) (declaration "undefined1 *puStack_10dc;" type_identifier (pointer_declarator "*puStack_10dc" * identifier) ;) (declaration "uint uStack_10d4;" type_identifier identifier ;) (declaration "int iStack_10cc;" primitive_type identifier ;) (declaration "uint uStack_10c8;" type_identifier identifier ;) (declaration "undefined1 uStack_10b0;" type_identifier identifier ;) (declaration "undefined1 uStack_10af;" type_identifier identifier ;) (declaration "char cStack_10ae;" primitive_type identifier ;) (declaration "undefined1 uStack_10ad;" type_identifier identifier ;) (declaration "undefined4 uStack_10ac;" type_identifier identifier ;) (declaration "int iStack_10a8;" primitive_type identifier ;) (declaration "undefined4 uStack_10a4;" type_identifier identifier ;) (declaration "undefined4 uStack_10a0;" type_identifier identifier ;) (declaration "undefined4 uStack_109c;" type_identifier identifier ;) (declaration "undefined4 uStack_1098;" type_identifier identifier ;) (declaration "undefined1 auStack_1094 [4];" type_identifier (array_declarator "auStack_1094 [4]" identifier [ number_literal ]) ;) (declaration "undefined4 uStack_1090;" type_identifier identifier ;) (declaration "undefined4 uStack_108c;" type_identifier identifier ;) (declaration "undefined1 uStack_1088;" type_identifier identifier ;) (declaration "undefined1 auStack_1084 [4096];" type_identifier (array_declarator "auStack_1084 [4096]" identifier [ number_literal ]) ;) (declaration "int iStack_84;" primitive_type identifier ;) (declaration "char *pcStack_80;" primitive_type (pointer_declarator "*pcStack_80" * identifier) ;) (declaration "char *pcStack_7c;" primitive_type (pointer_declarator "*pcStack_7c" * identifier) ;) (declaration "char *pcStack_78;" primitive_type (pointer_declarator "*pcStack_78" * identifier) ;) (declaration "int iStack_74;" primitive_type identifier ;) (declaration "char *pcStack_70;" primitive_type (pointer_declarator "*pcStack_70" * identifier) ;) (declaration "char *pcStack_6c;" primitive_type (pointer_declarator "*pcStack_6c" * identifier) ;) (declaration "int iStack_68;" primitive_type identifier ;) (declaration "int iStack_64;" primitive_type identifier ;) (declaration "int *piStack_60;" primitive_type (pointer_declarator "*piStack_60" * identifier) ;) (declaration "code *pcStack_5c;" type_identifier (pointer_declarator "*pcStack_5c" * identifier) ;) (declaration "undefined1 local_30 [3];" type_identifier (array_declarator "local_30 [3]" identifier [ number_literal ]) ;) (declaration "char cStack_2d;" primitive_type identifier ;) (declaration "int local_2c;" primitive_type identifier ;) (expression_statement "puVar30 = PTR_s__003f9950;" (assignment_expression "puVar30 = PTR_s__003f9950" identifier = identifier) ;) (expression_statement "local_2c = *(int *)PTR___stack_chk_guard_003fa248;" (assignment_expression "local_2c = *(int *)PTR___stack_chk_guard_003fa248" identifier = (pointer_expression "*(int *)PTR___stack_chk_guard_003fa248" * (cast_expression "(int *)PTR___stack_chk_guard_003fa248" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (if_statement "if (*param_1 == '\0') {\n    pcVar1 = (char *)0x0;\n  }\n  else {\n    unaff_s2 = param_1;\n    if (*param_1 == ';') {\n      pcVar1 = (char *)0x1;\nLAB_0028466c:\n      if (param_1 == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar1 = param_1 + 1;\n      iVar20 = 1;\n      param_2 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }\n  }" if (parenthesized_expression "(*param_1 == '\0')" ( (binary_expression "*param_1 == '\0'" (pointer_expression "*param_1" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    pcVar1 = (char *)0x0;\n  }" { (expression_statement "pcVar1 = (char *)0x0;" (assignment_expression "pcVar1 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else {\n    unaff_s2 = param_1;\n    if (*param_1 == ';') {\n      pcVar1 = (char *)0x1;\nLAB_0028466c:\n      if (param_1 == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar1 = param_1 + 1;\n      iVar20 = 1;\n      param_2 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }\n  }" else (compound_statement "{\n    unaff_s2 = param_1;\n    if (*param_1 == ';') {\n      pcVar1 = (char *)0x1;\nLAB_0028466c:\n      if (param_1 == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar1 = param_1 + 1;\n      iVar20 = 1;\n      param_2 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }\n  }" { (expression_statement "unaff_s2 = param_1;" (assignment_expression "unaff_s2 = param_1" identifier = identifier) ;) (if_statement "if (*param_1 == ';') {\n      pcVar1 = (char *)0x1;\nLAB_0028466c:\n      if (param_1 == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar1 = param_1 + 1;\n      iVar20 = 1;\n      param_2 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }" if (parenthesized_expression "(*param_1 == ';')" ( (binary_expression "*param_1 == ';'" (pointer_expression "*param_1" * identifier) == (char_literal "';'" ' character ')) )) (compound_statement "{\n      pcVar1 = (char *)0x1;\nLAB_0028466c:\n      if (param_1 == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }\n    }" { (expression_statement "pcVar1 = (char *)0x1;" (assignment_expression "pcVar1 = (char *)0x1" identifier = (cast_expression "(char *)0x1" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_0028466c:\n      if (param_1 == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }" statement_identifier : (if_statement "if (param_1 == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }" if (parenthesized_expression "(param_1 == (char *)0x0)" ( (binary_expression "param_1 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        pcVar1 = (char *)0x0;\n      }" { (expression_statement "pcVar1 = (char *)0x0;" (assignment_expression "pcVar1 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else {\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }" else (compound_statement "{\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }" { (if_statement "if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }" if (parenthesized_expression "(((char *)0x3 < pcVar1) && (param_1[1] == '#'))" ( (binary_expression "((char *)0x3 < pcVar1) && (param_1[1] == '#')" (parenthesized_expression "((char *)0x3 < pcVar1)" ( (binary_expression "(char *)0x3 < pcVar1" (cast_expression "(char *)0x3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) < identifier) )) && (parenthesized_expression "(param_1[1] == '#')" ( (binary_expression "param_1[1] == '#'" (subscript_expression "param_1[1]" identifier [ number_literal ]) == (char_literal "'#'" ' character ')) ))) )) (compound_statement "{\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }" { (expression_statement "param_2 = PTR_s__003f9950 + -0x4900;" (assignment_expression "param_2 = PTR_s__003f9950 + -0x4900" identifier = (binary_expression "PTR_s__003f9950 + -0x4900" identifier + number_literal)) ;) (expression_statement "iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);" (assignment_expression "iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30)" identifier = (call_expression "(*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30)" (parenthesized_expression "(*(code *)PTR_sscanf_003f9e4c)" ( (pointer_expression "*(code *)PTR_sscanf_003f9e4c" * (cast_expression "(code *)PTR_sscanf_003f9e4c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,param_2,local_30)" ( identifier , identifier , identifier )))) ;) (expression_statement "unaff_s4 = puVar30 + -0x46bf;" (assignment_expression "unaff_s4 = puVar30 + -0x46bf" identifier = (binary_expression "puVar30 + -0x46bf" identifier + number_literal)) ;) (if_statement "if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }" if (parenthesized_expression "(iVar20 == 1)" ( (binary_expression "iVar20 == 1" identifier == number_literal) )) (compound_statement "{\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }" { (if_statement "if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }" if (parenthesized_expression "(param_1[3] == ';')" ( (binary_expression "param_1[3] == ';'" (subscript_expression "param_1[3]" identifier [ number_literal ]) == (char_literal "';'" ' character ')) )) (compound_statement "{\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }" { (expression_statement "pcVar1 = (char *)0x3;" (assignment_expression "pcVar1 = (char *)0x3" identifier = (cast_expression "(char *)0x3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);" statement_identifier : (expression_statement "unaff_s1 = param_1 + (int)(pcVar1 + 1);" (assignment_expression "unaff_s1 = param_1 + (int)(pcVar1 + 1)" identifier = (binary_expression "param_1 + (int)(pcVar1 + 1)" identifier + (cast_expression "(int)(pcVar1 + 1)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(pcVar1 + 1)" ( (binary_expression "pcVar1 + 1" identifier + number_literal) ))))) ;)) (expression_statement "iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);" (assignment_expression "iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1)" identifier = (call_expression "(*(code *)PTR_strlen_003fa350)(unaff_s1)" (parenthesized_expression "(*(code *)PTR_strlen_003fa350)" ( (pointer_expression "*(code *)PTR_strlen_003fa350" * (cast_expression "(code *)PTR_strlen_003fa350" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s1)" ( identifier )))) ;) (expression_statement "param_2 = unaff_s1;" (assignment_expression "param_2 = unaff_s1" identifier = identifier) ;) (expression_statement "(*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);" (call_expression "(*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1)" (parenthesized_expression "(*(code *)PTR_memmove_003f9f68)" ( (pointer_expression "*(code *)PTR_memmove_003f9f68" * (cast_expression "(code *)PTR_memmove_003f9f68" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1 + 1,unaff_s1,iVar20 + 1)" ( (binary_expression "param_1 + 1" identifier + number_literal) , identifier , (binary_expression "iVar20 + 1" identifier + number_literal) ))) ;) }) (else_clause "else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }" else (compound_statement "{\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }" { (if_statement "if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }" if (parenthesized_expression "(param_1[4] == ';')" ( (binary_expression "param_1[4] == ';'" (subscript_expression "param_1[4]" identifier [ number_literal ]) == (char_literal "';'" ' character ')) )) (compound_statement "{\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }" { (expression_statement "pcVar1 = &DAT_00000004;" (assignment_expression "pcVar1 = &DAT_00000004" identifier = (pointer_expression "&DAT_00000004" & identifier)) ;) (goto_statement "goto LAB_002848d4;" goto statement_identifier ;) })) (if_statement "if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }" if (parenthesized_expression "(param_1[5] == ';')" ( (binary_expression "param_1[5] == ';'" (subscript_expression "param_1[5]" identifier [ number_literal ]) == (char_literal "';'" ' character ')) )) (compound_statement "{\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }" { (expression_statement "pcVar1 = &DAT_00000005;" (assignment_expression "pcVar1 = &DAT_00000005" identifier = (pointer_expression "&DAT_00000005" & identifier)) ;) (goto_statement "goto LAB_002848d4;" goto statement_identifier ;) })) (expression_statement "pcVar1 = &DAT_00000006;" (assignment_expression "pcVar1 = &DAT_00000006" identifier = (pointer_expression "&DAT_00000006" & identifier)) ;) }))) (expression_statement "*param_1 = cStack_2d;" (assignment_expression "*param_1 = cStack_2d" (pointer_expression "*param_1" * identifier) = identifier) ;) (goto_statement "goto LAB_00284620;" goto statement_identifier ;) })) })) (expression_statement "unaff_s4 = puVar30 + -0x46bf;" (assignment_expression "unaff_s4 = puVar30 + -0x46bf" identifier = (binary_expression "puVar30 + -0x46bf" identifier + number_literal)) ;) (expression_statement "unaff_s6 = 0;" (assignment_expression "unaff_s6 = 0" identifier = number_literal) ;) (do_statement "do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);" do (compound_statement "{\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        }" { (expression_statement "pcVar27 = (char *)(uint)(byte)unaff_s4[-1];" (assignment_expression "pcVar27 = (char *)(uint)(byte)unaff_s4[-1]" identifier = (cast_expression "(char *)(uint)(byte)unaff_s4[-1]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (cast_expression "(uint)(byte)unaff_s4[-1]" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(byte)unaff_s4[-1]" ( (type_descriptor "byte" type_identifier) ) (subscript_expression "unaff_s4[-1]" identifier [ number_literal ]))))) ;) (expression_statement "unaff_s1 = unaff_s4;" (assignment_expression "unaff_s1 = unaff_s4" identifier = identifier) ;) (expression_statement "unaff_s5 = pcVar27;" (assignment_expression "unaff_s5 = pcVar27" identifier = identifier) ;) (if_statement "if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }" if (parenthesized_expression "((int)pcVar27 <= (int)pcVar1)" ( (binary_expression "(int)pcVar27 <= (int)pcVar1" (cast_expression "(int)pcVar27" ( (type_descriptor "int" primitive_type) ) identifier) <= (cast_expression "(int)pcVar1" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }" { (if_statement "if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }" if (parenthesized_expression "(param_1 != unaff_s4)" ( (binary_expression "param_1 != unaff_s4" identifier != identifier) )) (compound_statement "{\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }" { (expression_statement "iVar20 = (int)*param_1;" (assignment_expression "iVar20 = (int)*param_1" identifier = (cast_expression "(int)*param_1" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*param_1" * identifier))) ;) (expression_statement "unaff_s5 = param_1;" (assignment_expression "unaff_s5 = param_1" identifier = identifier) ;) (if_statement "if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }" if (parenthesized_expression "((iVar20 != 0) && (*unaff_s4 != '\0'))" ( (binary_expression "(iVar20 != 0) && (*unaff_s4 != '\0')" (parenthesized_expression "(iVar20 != 0)" ( (binary_expression "iVar20 != 0" identifier != number_literal) )) && (parenthesized_expression "(*unaff_s4 != '\0')" ( (binary_expression "*unaff_s4 != '\0'" (pointer_expression "*unaff_s4" * identifier) != (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }" { (expression_statement "unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();" (assignment_expression "unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)()" identifier = (cast_expression "(int *)(*(code *)PTR___ctype_b_loc_003fa44c)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___ctype_b_loc_003fa44c)()" (parenthesized_expression "(*(code *)PTR___ctype_b_loc_003fa44c)" ( (pointer_expression "*(code *)PTR___ctype_b_loc_003fa44c" * (cast_expression "(code *)PTR___ctype_b_loc_003fa44c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "pcVar23 = unaff_s4;" (assignment_expression "pcVar23 = unaff_s4" identifier = identifier) ;) (while_statement "while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }" { (expression_statement "unaff_s7 = iVar20;" (assignment_expression "unaff_s7 = iVar20" identifier = identifier) ;) (if_statement "if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }" if (parenthesized_expression "((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0)" ( (binary_expression "(*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0" (parenthesized_expression "(*(ushort *)(*unaff_s8 + iVar20 * 2) & 2)" ( (binary_expression "*(ushort *)(*unaff_s8 + iVar20 * 2) & 2" (pointer_expression "*(ushort *)(*unaff_s8 + iVar20 * 2)" * (cast_expression "(ushort *)(*unaff_s8 + iVar20 * 2)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*unaff_s8 + iVar20 * 2)" ( (binary_expression "*unaff_s8 + iVar20 * 2" (pointer_expression "*unaff_s8" * identifier) + (binary_expression "iVar20 * 2" identifier * number_literal)) )))) & number_literal) )) != number_literal) )) (compound_statement "{\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }" { (expression_statement "unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);" (assignment_expression "unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20)" identifier = (call_expression "(*(code *)PTR_LocaleUppercase_003fa768)(iVar20)" (parenthesized_expression "(*(code *)PTR_LocaleUppercase_003fa768)" ( (pointer_expression "*(code *)PTR_LocaleUppercase_003fa768" * (cast_expression "(code *)PTR_LocaleUppercase_003fa768" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar20)" ( identifier )))) ;) })) (expression_statement "iVar20 = (int)*pcVar23;" (assignment_expression "iVar20 = (int)*pcVar23" identifier = (cast_expression "(int)*pcVar23" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*pcVar23" * identifier))) ;) (if_statement "if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }" if (parenthesized_expression "((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0)" ( (binary_expression "(*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0" (parenthesized_expression "(*(ushort *)(*unaff_s8 + iVar20 * 2) & 2)" ( (binary_expression "*(ushort *)(*unaff_s8 + iVar20 * 2) & 2" (pointer_expression "*(ushort *)(*unaff_s8 + iVar20 * 2)" * (cast_expression "(ushort *)(*unaff_s8 + iVar20 * 2)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*unaff_s8 + iVar20 * 2)" ( (binary_expression "*unaff_s8 + iVar20 * 2" (pointer_expression "*unaff_s8" * identifier) + (binary_expression "iVar20 * 2" identifier * number_literal)) )))) & number_literal) )) != number_literal) )) (compound_statement "{\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }" { (expression_statement "iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);" (assignment_expression "iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20)" identifier = (call_expression "(*(code *)PTR_LocaleUppercase_003fa768)(iVar20)" (parenthesized_expression "(*(code *)PTR_LocaleUppercase_003fa768)" ( (pointer_expression "*(code *)PTR_LocaleUppercase_003fa768" * (cast_expression "(code *)PTR_LocaleUppercase_003fa768" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar20)" ( identifier )))) ;) })) (expression_statement "unaff_s1 = pcVar23;" (assignment_expression "unaff_s1 = pcVar23" identifier = identifier) ;) (if_statement "if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;" if (parenthesized_expression "((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23))" ( (binary_expression "(unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)" (parenthesized_expression "(unaff_s7 != iVar20)" ( (binary_expression "unaff_s7 != iVar20" identifier != identifier) )) || (parenthesized_expression "(unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)" ( (comma_expression "unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23" (assignment_expression "unaff_s1 = unaff_s4 + (int)(pcVar27 + -1)" identifier = (binary_expression "unaff_s4 + (int)(pcVar27 + -1)" identifier + (cast_expression "(int)(pcVar27 + -1)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(pcVar27 + -1)" ( (binary_expression "pcVar27 + -1" identifier + number_literal) ))))) , (binary_expression "unaff_s4 + (int)(pcVar27 + -1) == pcVar23" (binary_expression "unaff_s4 + (int)(pcVar27 + -1)" identifier + (cast_expression "(int)(pcVar27 + -1)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(pcVar27 + -1)" ( (binary_expression "pcVar27 + -1" identifier + number_literal) )))) == identifier)) ))) )) (break_statement "break;" break ;)) (expression_statement "unaff_s5 = unaff_s5 + 1;" (assignment_expression "unaff_s5 = unaff_s5 + 1" identifier = (binary_expression "unaff_s5 + 1" identifier + number_literal)) ;) (expression_statement "iVar20 = (int)*unaff_s5;" (assignment_expression "iVar20 = (int)*unaff_s5" identifier = (cast_expression "(int)*unaff_s5" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*unaff_s5" * identifier))) ;) (expression_statement "pcVar23 = pcVar23 + 1;" (assignment_expression "pcVar23 = pcVar23 + 1" identifier = (binary_expression "pcVar23 + 1" identifier + number_literal)) ;) (expression_statement "unaff_s1 = pcVar23;" (assignment_expression "unaff_s1 = pcVar23" identifier = identifier) ;) (if_statement "if ((iVar20 == 0) || (*pcVar23 == '\0')) break;" if (parenthesized_expression "((iVar20 == 0) || (*pcVar23 == '\0'))" ( (binary_expression "(iVar20 == 0) || (*pcVar23 == '\0')" (parenthesized_expression "(iVar20 == 0)" ( (binary_expression "iVar20 == 0" identifier == number_literal) )) || (parenthesized_expression "(*pcVar23 == '\0')" ( (binary_expression "*pcVar23 == '\0'" (pointer_expression "*pcVar23" * identifier) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (break_statement "break;" break ;)) })) })) (expression_statement "unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);" (assignment_expression "unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5)" identifier = (call_expression "(*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5)" (parenthesized_expression "(*(code *)PTR_LocaleUppercase_003fa768)" ( (pointer_expression "*(code *)PTR_LocaleUppercase_003fa768" * (cast_expression "(code *)PTR_LocaleUppercase_003fa768" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "((int)*unaff_s5)" ( (cast_expression "(int)*unaff_s5" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*unaff_s5" * identifier)) )))) ;) (expression_statement "iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);" (assignment_expression "iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1)" identifier = (call_expression "(*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1)" (parenthesized_expression "(*(code *)PTR_LocaleUppercase_003fa768)" ( (pointer_expression "*(code *)PTR_LocaleUppercase_003fa768" * (cast_expression "(code *)PTR_LocaleUppercase_003fa768" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "((int)*unaff_s1)" ( (cast_expression "(int)*unaff_s1" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*unaff_s1" * identifier)) )))) ;) (if_statement "if (unaff_s3 != iVar20) goto LAB_002847f0;" if (parenthesized_expression "(unaff_s3 != iVar20)" ( (binary_expression "unaff_s3 != iVar20" identifier != identifier) )) (goto_statement "goto LAB_002847f0;" goto statement_identifier ;)) })) (expression_statement "param_2 = param_1 + (int)pcVar27;" (assignment_expression "param_2 = param_1 + (int)pcVar27" identifier = (binary_expression "param_1 + (int)pcVar27" identifier + (cast_expression "(int)pcVar27" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);" (assignment_expression "iVar20 = (*(code *)PTR_strlen_003fa350)(param_2)" identifier = (call_expression "(*(code *)PTR_strlen_003fa350)(param_2)" (parenthesized_expression "(*(code *)PTR_strlen_003fa350)" ( (pointer_expression "*(code *)PTR_strlen_003fa350" * (cast_expression "(code *)PTR_strlen_003fa350" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_2)" ( identifier )))) ;) (expression_statement "(*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);" (call_expression "(*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1)" (parenthesized_expression "(*(code *)PTR_memmove_003f9f68)" ( (pointer_expression "*(code *)PTR_memmove_003f9f68" * (cast_expression "(code *)PTR_memmove_003f9f68" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1 + 1,param_2,iVar20 + 1)" ( (binary_expression "param_1 + 1" identifier + number_literal) , identifier , (binary_expression "iVar20 + 1" identifier + number_literal) ))) ;) (expression_statement "*param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];" (assignment_expression "*param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8]" (pointer_expression "*param_1" * identifier) = (subscript_expression "PTR_s__003f9950[unaff_s6 * 9 + -0x46b8]" identifier [ (binary_expression "unaff_s6 * 9 + -0x46b8" (binary_expression "unaff_s6 * 9" identifier * number_literal) + number_literal) ])) ;) (expression_statement "pcVar1 = pcVar27 + -1;" (assignment_expression "pcVar1 = pcVar27 + -1" identifier = (binary_expression "pcVar27 + -1" identifier + number_literal)) ;) (goto_statement "goto LAB_00284620;" goto statement_identifier ;) })) (labeled_statement "LAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;" statement_identifier : (expression_statement "unaff_s6 = unaff_s6 + 1;" (assignment_expression "unaff_s6 = unaff_s6 + 1" identifier = (binary_expression "unaff_s6 + 1" identifier + number_literal)) ;)) (expression_statement "unaff_s4 = unaff_s4 + 9;" (assignment_expression "unaff_s4 = unaff_s4 + 9" identifier = (binary_expression "unaff_s4 + 9" identifier + number_literal)) ;) }) while (parenthesized_expression "(unaff_s6 != 3)" ( (binary_expression "unaff_s6 != 3" identifier != number_literal) )) ;) (expression_statement "pcVar1 = (char *)0x0;" (assignment_expression "pcVar1 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })))) }) (else_clause "else {\n      pcVar1 = param_1 + 1;\n      iVar20 = 1;\n      param_2 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }" else (compound_statement "{\n      pcVar1 = param_1 + 1;\n      iVar20 = 1;\n      param_2 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }" { (expression_statement "pcVar1 = param_1 + 1;" (assignment_expression "pcVar1 = param_1 + 1" identifier = (binary_expression "param_1 + 1" identifier + number_literal)) ;) (expression_statement "iVar20 = 1;" (assignment_expression "iVar20 = 1" identifier = number_literal) ;) (expression_statement "param_2 = &DAT_00000007;" (assignment_expression "param_2 = &DAT_00000007" identifier = (pointer_expression "&DAT_00000007" & identifier)) ;) (do_statement "do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);" do (compound_statement "{\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      }" { (if_statement "if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }" if (parenthesized_expression "(*pcVar1 == '\0')" ( (binary_expression "*pcVar1 == '\0'" (pointer_expression "*pcVar1" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }" { (expression_statement "pcVar1 = (char *)0x0;" (assignment_expression "pcVar1 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_00284620;" goto statement_identifier ;) })) (if_statement "if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }" if (parenthesized_expression "(*pcVar1 == ';')" ( (binary_expression "*pcVar1 == ';'" (pointer_expression "*pcVar1" * identifier) == (char_literal "';'" ' character ')) )) (compound_statement "{\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }" { (expression_statement "pcVar1 = (char *)(iVar20 + 1);" (assignment_expression "pcVar1 = (char *)(iVar20 + 1)" identifier = (cast_expression "(char *)(iVar20 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 1)" ( (binary_expression "iVar20 + 1" identifier + number_literal) )))) ;) (if_statement "if (pcVar1 == (char *)0x0) goto LAB_00284620;" if (parenthesized_expression "(pcVar1 == (char *)0x0)" ( (binary_expression "pcVar1 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00284620;" goto statement_identifier ;)) (goto_statement "goto LAB_0028466c;" goto statement_identifier ;) })) (expression_statement "iVar20 = iVar20 + 1;" (assignment_expression "iVar20 = iVar20 + 1" identifier = (binary_expression "iVar20 + 1" identifier + number_literal)) ;) (expression_statement "pcVar1 = pcVar1 + 1;" (assignment_expression "pcVar1 = pcVar1 + 1" identifier = (binary_expression "pcVar1 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar20 != 7)" ( (binary_expression "iVar20 != 7" identifier != number_literal) )) ;) (expression_statement "pcVar1 = (char *)0x0;" (assignment_expression "pcVar1 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }))) }))) (labeled_statement "LAB_00284620:\n  if (local_2c == *(int *)PTR___stack_chk_guard_003fa248) {\n    return pcVar1;\n  }" statement_identifier : (if_statement "if (local_2c == *(int *)PTR___stack_chk_guard_003fa248) {\n    return pcVar1;\n  }" if (parenthesized_expression "(local_2c == *(int *)PTR___stack_chk_guard_003fa248)" ( (binary_expression "local_2c == *(int *)PTR___stack_chk_guard_003fa248" identifier == (pointer_expression "*(int *)PTR___stack_chk_guard_003fa248" * (cast_expression "(int *)PTR___stack_chk_guard_003fa248" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) )) (compound_statement "{\n    return pcVar1;\n  }" { (return_statement "return pcVar1;" return identifier ;) }))) (expression_statement "pcVar31 = FUN_00284930;" (assignment_expression "pcVar31 = FUN_00284930" identifier = identifier) ;) (expression_statement "iVar20 = local_2c;" (assignment_expression "iVar20 = local_2c" identifier = identifier) ;) (expression_statement "puVar30 = PTR___stack_chk_fail_003fa07c;" (assignment_expression "puVar30 = PTR___stack_chk_fail_003fa07c" identifier = identifier) ;) (expression_statement "(*(code *)PTR___stack_chk_fail_003fa07c)();" (call_expression "(*(code *)PTR___stack_chk_fail_003fa07c)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_003fa07c)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_003fa07c" * (cast_expression "(code *)PTR___stack_chk_fail_003fa07c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "iStack_84 = **(int **)(puVar30 + 0x175918);" (assignment_expression "iStack_84 = **(int **)(puVar30 + 0x175918)" identifier = (pointer_expression "**(int **)(puVar30 + 0x175918)" * (pointer_expression "*(int **)(puVar30 + 0x175918)" * (cast_expression "(int **)(puVar30 + 0x175918)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175918)" ( (binary_expression "puVar30 + 0x175918" identifier + number_literal) )))))) ;) (expression_statement "pcStack_80 = pcVar1;" (assignment_expression "pcStack_80 = pcVar1" identifier = identifier) ;) (expression_statement "pcStack_7c = unaff_s1;" (assignment_expression "pcStack_7c = unaff_s1" identifier = identifier) ;) (expression_statement "pcStack_78 = unaff_s2;" (assignment_expression "pcStack_78 = unaff_s2" identifier = identifier) ;) (expression_statement "iStack_74 = unaff_s3;" (assignment_expression "iStack_74 = unaff_s3" identifier = identifier) ;) (expression_statement "pcStack_70 = unaff_s4;" (assignment_expression "pcStack_70 = unaff_s4" identifier = identifier) ;) (expression_statement "pcStack_6c = unaff_s5;" (assignment_expression "pcStack_6c = unaff_s5" identifier = identifier) ;) (expression_statement "iStack_68 = unaff_s6;" (assignment_expression "iStack_68 = unaff_s6" identifier = identifier) ;) (expression_statement "iStack_64 = unaff_s7;" (assignment_expression "iStack_64 = unaff_s7" identifier = identifier) ;) (expression_statement "piStack_60 = unaff_s8;" (assignment_expression "piStack_60 = unaff_s8" identifier = identifier) ;) (expression_statement "pcStack_5c = pcVar31;" (assignment_expression "pcStack_5c = pcVar31" identifier = identifier) ;) (if_statement "if (iVar20 == 0) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d48,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a5,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }" if (parenthesized_expression "(iVar20 == 0)" ( (binary_expression "iVar20 == 0" identifier == number_literal) )) (compound_statement "{\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d48,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a5,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }" { (expression_statement "pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d48,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a5,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);" (assignment_expression "pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d48,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a5,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" identifier = (cast_expression "(char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d48,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a5,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d48,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a5,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" (parenthesized_expression "(**(code **)(puVar30 + 0x175cf0))" ( (pointer_expression "**(code **)(puVar30 + 0x175cf0)" * (pointer_expression "*(code **)(puVar30 + 0x175cf0)" * (cast_expression "(code **)(puVar30 + 0x175cf0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175cf0)" ( (binary_expression "puVar30 + 0x175cf0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar30 + 0x174fb0) + 0x3d48,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a5,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" ( (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x3d48" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x46f0" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) ))))) ;) (return_statement "return pcVar1;" return identifier ;) })) (if_statement "if (*(int *)(iVar20 + 0x3214) != -0x54535255) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d70,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a6,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }" if (parenthesized_expression "(*(int *)(iVar20 + 0x3214) != -0x54535255)" ( (binary_expression "*(int *)(iVar20 + 0x3214) != -0x54535255" (pointer_expression "*(int *)(iVar20 + 0x3214)" * (cast_expression "(int *)(iVar20 + 0x3214)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x3214)" ( (binary_expression "iVar20 + 0x3214" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d70,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a6,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }" { (expression_statement "pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d70,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a6,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);" (assignment_expression "pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d70,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a6,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" identifier = (cast_expression "(char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d70,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a6,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d70,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a6,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" (parenthesized_expression "(**(code **)(puVar30 + 0x175cf0))" ( (pointer_expression "**(code **)(puVar30 + 0x175cf0)" * (pointer_expression "*(code **)(puVar30 + 0x175cf0)" * (cast_expression "(code **)(puVar30 + 0x175cf0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175cf0)" ( (binary_expression "puVar30 + 0x175cf0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar30 + 0x174fb0) + 0x3d70,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a6,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" ( (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x3d70" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x46f0" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) ))))) ;) (return_statement "return pcVar1;" return identifier ;) })) (if_statement "if (*(int *)(iVar20 + 0x3210) != 0) {\n    (**(code **)(puVar30 + 0x1758c8))\n              (0x8000,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700,\n               0x4a8,*(int *)(puVar30 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210);\n  }" if (parenthesized_expression "(*(int *)(iVar20 + 0x3210) != 0)" ( (binary_expression "*(int *)(iVar20 + 0x3210) != 0" (pointer_expression "*(int *)(iVar20 + 0x3210)" * (cast_expression "(int *)(iVar20 + 0x3210)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x3210)" ( (binary_expression "iVar20 + 0x3210" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    (**(code **)(puVar30 + 0x1758c8))\n              (0x8000,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700,\n               0x4a8,*(int *)(puVar30 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210);\n  }" { (expression_statement "(**(code **)(puVar30 + 0x1758c8))\n              (0x8000,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700,\n               0x4a8,*(int *)(puVar30 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x1758c8))\n              (0x8000,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700,\n               0x4a8,*(int *)(puVar30 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x1758c8))" ( (pointer_expression "**(code **)(puVar30 + 0x1758c8)" * (pointer_expression "*(code **)(puVar30 + 0x1758c8)" * (cast_expression "(code **)(puVar30 + 0x1758c8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1758c8)" ( (binary_expression "puVar30 + 0x1758c8" identifier + number_literal) ))))) )) (argument_list "(0x8000,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700,\n               0x4a8,*(int *)(puVar30 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210)" ( number_literal , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb8) + -0x2f6c" (pointer_expression "*(int *)(puVar30 + 0x174fb8)" * (cast_expression "(int *)(puVar30 + 0x174fb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb8)" ( (binary_expression "puVar30 + 0x174fb8" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) })) (if_statement "if (param_2 == (char *)0x0) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x4c80,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4aa,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }" if (parenthesized_expression "(param_2 == (char *)0x0)" ( (binary_expression "param_2 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x4c80,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4aa,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }" { (expression_statement "pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x4c80,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4aa,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);" (assignment_expression "pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x4c80,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4aa,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" identifier = (cast_expression "(char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x4c80,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4aa,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x4c80,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4aa,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" (parenthesized_expression "(**(code **)(puVar30 + 0x175cf0))" ( (pointer_expression "**(code **)(puVar30 + 0x175cf0)" * (pointer_expression "*(code **)(puVar30 + 0x175cf0)" * (cast_expression "(code **)(puVar30 + 0x175cf0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175cf0)" ( (binary_expression "puVar30 + 0x175cf0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar30 + 0x174fb0) + 0x4c80,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4aa,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" ( (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x4c80" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x46f0" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) ))))) ;) (return_statement "return pcVar1;" return identifier ;) })) (if_statement "if (*(int *)(param_2 + 0x1c) != -0x54535255) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x595c,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4ab,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }" if (parenthesized_expression "(*(int *)(param_2 + 0x1c) != -0x54535255)" ( (binary_expression "*(int *)(param_2 + 0x1c) != -0x54535255" (pointer_expression "*(int *)(param_2 + 0x1c)" * (cast_expression "(int *)(param_2 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x1c)" ( (binary_expression "param_2 + 0x1c" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x595c,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4ab,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }" { (expression_statement "pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x595c,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4ab,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);" (assignment_expression "pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x595c,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4ab,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" identifier = (cast_expression "(char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x595c,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4ab,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x595c,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4ab,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" (parenthesized_expression "(**(code **)(puVar30 + 0x175cf0))" ( (pointer_expression "**(code **)(puVar30 + 0x175cf0)" * (pointer_expression "*(code **)(puVar30 + 0x175cf0)" * (cast_expression "(code **)(puVar30 + 0x175cf0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175cf0)" ( (binary_expression "puVar30 + 0x175cf0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar30 + 0x174fb0) + 0x595c,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4ab,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" ( (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x595c" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x46f0" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) ))))) ;) (return_statement "return pcVar1;" return identifier ;) })) (expression_statement "pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175cf4))(iVar20,param_2);" (assignment_expression "pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175cf4))(iVar20,param_2)" identifier = (cast_expression "(char *)(**(code **)(puVar30 + 0x175cf4))(iVar20,param_2)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar30 + 0x175cf4))(iVar20,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175cf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175cf4)" * (pointer_expression "*(code **)(puVar30 + 0x175cf4)" * (cast_expression "(code **)(puVar30 + 0x175cf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175cf4)" ( (binary_expression "puVar30 + 0x175cf4" identifier + number_literal) ))))) )) (argument_list "(iVar20,param_2)" ( identifier , identifier ))))) ;) (expression_statement "iVar2 = (**(code **)(puVar30 + 0x175934))(iVar20,pcStack_10fc,2,param_2);" (assignment_expression "iVar2 = (**(code **)(puVar30 + 0x175934))(iVar20,pcStack_10fc,2,param_2)" identifier = (call_expression "(**(code **)(puVar30 + 0x175934))(iVar20,pcStack_10fc,2,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175934))" ( (pointer_expression "**(code **)(puVar30 + 0x175934)" * (pointer_expression "*(code **)(puVar30 + 0x175934)" * (cast_expression "(code **)(puVar30 + 0x175934)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175934)" ( (binary_expression "puVar30 + 0x175934" identifier + number_literal) ))))) )) (argument_list "(iVar20,pcStack_10fc,2,param_2)" ( identifier , identifier , number_literal , identifier )))) ;) (if_statement "if (iVar2 == 0) {\n    (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n    pcStack_10fc = (char *)0x0;\n    goto LAB_00287858;\n  }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n    (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n    pcStack_10fc = (char *)0x0;\n    goto LAB_00287858;\n  }" { (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "pcStack_10fc[0x18] = '\0';" (assignment_expression "pcStack_10fc[0x18] = '\0'" (subscript_expression "pcStack_10fc[0x18]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcStack_10fc[0x19] = '\0';" (assignment_expression "pcStack_10fc[0x19] = '\0'" (subscript_expression "pcStack_10fc[0x19]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcStack_10fc[0x1a] = '\0';" (assignment_expression "pcStack_10fc[0x1a] = '\0'" (subscript_expression "pcStack_10fc[0x1a]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcStack_10fc[0x1b] = '\x01';" (assignment_expression "pcStack_10fc[0x1b] = '\x01'" (subscript_expression "pcStack_10fc[0x1b]" identifier [ number_literal ]) = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "pcStack_10fc[0x1c] = '\0';" (assignment_expression "pcStack_10fc[0x1c] = '\0'" (subscript_expression "pcStack_10fc[0x1c]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcStack_10fc[0x1d] = '\0';" (assignment_expression "pcStack_10fc[0x1d] = '\0'" (subscript_expression "pcStack_10fc[0x1d]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcStack_10fc[0x1e] = '\0';" (assignment_expression "pcStack_10fc[0x1e] = '\0'" (subscript_expression "pcStack_10fc[0x1e]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcStack_10fc[0x1f] = '\x01';" (assignment_expression "pcStack_10fc[0x1f] = '\x01'" (subscript_expression "pcStack_10fc[0x1f]" identifier [ number_literal ]) = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "iVar2 = (**(code **)(puVar30 + 0x175578))(pcStack_10fc,param_2);" (assignment_expression "iVar2 = (**(code **)(puVar30 + 0x175578))(pcStack_10fc,param_2)" identifier = (call_expression "(**(code **)(puVar30 + 0x175578))(pcStack_10fc,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175578))" ( (pointer_expression "**(code **)(puVar30 + 0x175578)" * (pointer_expression "*(code **)(puVar30 + 0x175578)" * (cast_expression "(code **)(puVar30 + 0x175578)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175578)" ( (binary_expression "puVar30 + 0x175578" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc,param_2)" ( identifier , identifier )))) ;) (if_statement "if (iVar2 == 0) {\n    (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n    pcStack_10fc = (char *)0x0;\n    goto LAB_00287858;\n  }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n    (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n    pcStack_10fc = (char *)0x0;\n    goto LAB_00287858;\n  }" { (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "iVar2 = iVar20 + 0x210;" (assignment_expression "iVar2 = iVar20 + 0x210" identifier = (binary_expression "iVar20 + 0x210" identifier + number_literal)) ;) (expression_statement "iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x7890,4);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x7890,4)" identifier = (call_expression "(**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x7890,4)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d04))" ( (pointer_expression "**(code **)(puVar30 + 0x175d04)" * (pointer_expression "*(code **)(puVar30 + 0x175d04)" * (cast_expression "(code **)(puVar30 + 0x175d04)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d04)" ( (binary_expression "puVar30 + 0x175d04" identifier + number_literal) ))))) )) (argument_list "(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x7890,4)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x7890" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , number_literal )))) ;) (if_statement "if (iVar3 == 0) {\n    iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n    if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c2,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(1,1);\n    if (puVar4 == (undefined1 *)0x0) {\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c7,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    *puVar4 = 0;\n    (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),puVar4);\n    iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78a0);\n    if (iVar19 != 0) {\n      iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac);\n      if (iVar19 == 0) {\n        puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n        if (puVar4 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar11 = 0;\n          iVar13 = *(int *)(puVar30 + 0x175020);\n          iVar22 = *(int *)(puVar30 + 0x1752b0);\n          iVar14 = *(int *)(puVar30 + 0x174fb8);\n          puVar21 = puVar4;\nLAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }\n      uStack_10d4 = 1;\n      goto LAB_00286050;\n    }\n    puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n    if (puVar4 == (undefined1 *)0x0) {\nLAB_0028544c:\n      uStack_10d4 = 0xffffffff;\n    }\n    else {\n      uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n      iStack_10cc = 0x1000;\n      uStack_10d4 = 0;\n      uStack_10c8 = 0;\n      uStack_10e4 = 0;\n      cVar17 = '\0';\n      puStack_10dc = (undefined1 *)0x0;\n      iVar19 = 0;\n      iVar11 = 0;\n      iVar13 = *(int *)(puVar30 + 0x175020);\n      iVar22 = *(int *)(puVar30 + 0x1752b0);\n      iVar14 = *(int *)(puVar30 + 0x174fb8);\n      puVar21 = puVar4;\n      while( true ) {\n        while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar11 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar9 = *(int *)(puVar30 + 0x174fc8);\n        iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n        iVar8 = 0;\n        while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0) {\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }\n        iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n        iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n        puVar21 = puVar4;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }\n      }\nLAB_0028573c:\n      (**(code **)(puVar30 + 0x175450))(uVar15);\n      if (iVar11 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar30 + 0x17575c))(iVar11);\n      }\nLAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x17575c))(iVar19);\n      }\n      if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n      }\n      (**(code **)(puVar30 + 0x17575c))(puVar4);\n      if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }\nLAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }\n        goto LAB_00287858;\n      }\n      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n    }\n    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n    goto LAB_00286050;\n  }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n    iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n    if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c2,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(1,1);\n    if (puVar4 == (undefined1 *)0x0) {\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c7,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    *puVar4 = 0;\n    (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),puVar4);\n    iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78a0);\n    if (iVar19 != 0) {\n      iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac);\n      if (iVar19 == 0) {\n        puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n        if (puVar4 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar11 = 0;\n          iVar13 = *(int *)(puVar30 + 0x175020);\n          iVar22 = *(int *)(puVar30 + 0x1752b0);\n          iVar14 = *(int *)(puVar30 + 0x174fb8);\n          puVar21 = puVar4;\nLAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }\n      uStack_10d4 = 1;\n      goto LAB_00286050;\n    }\n    puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n    if (puVar4 == (undefined1 *)0x0) {\nLAB_0028544c:\n      uStack_10d4 = 0xffffffff;\n    }\n    else {\n      uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n      iStack_10cc = 0x1000;\n      uStack_10d4 = 0;\n      uStack_10c8 = 0;\n      uStack_10e4 = 0;\n      cVar17 = '\0';\n      puStack_10dc = (undefined1 *)0x0;\n      iVar19 = 0;\n      iVar11 = 0;\n      iVar13 = *(int *)(puVar30 + 0x175020);\n      iVar22 = *(int *)(puVar30 + 0x1752b0);\n      iVar14 = *(int *)(puVar30 + 0x174fb8);\n      puVar21 = puVar4;\n      while( true ) {\n        while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar11 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar9 = *(int *)(puVar30 + 0x174fc8);\n        iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n        iVar8 = 0;\n        while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0) {\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }\n        iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n        iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n        puVar21 = puVar4;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }\n      }\nLAB_0028573c:\n      (**(code **)(puVar30 + 0x175450))(uVar15);\n      if (iVar11 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar30 + 0x17575c))(iVar11);\n      }\nLAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x17575c))(iVar19);\n      }\n      if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n      }\n      (**(code **)(puVar30 + 0x17575c))(puVar4);\n      if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }\nLAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }\n        goto LAB_00287858;\n      }\n      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n    }\n    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n    goto LAB_00286050;\n  }" { (expression_statement "iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2)" identifier = (call_expression "(**(code **)(puVar30 + 0x175cf4))(0,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175cf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175cf4)" * (pointer_expression "*(code **)(puVar30 + 0x175cf4)" * (cast_expression "(code **)(puVar30 + 0x175cf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175cf4)" ( (binary_expression "puVar30 + 0x175cf4" identifier + number_literal) ))))) )) (argument_list "(0,param_2)" ( number_literal , identifier )))) ;) (if_statement "if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c2,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c2,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }" { (expression_statement "(**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c2,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c2,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c2,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(1,1);" (assignment_expression "puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(1,1)" identifier = (cast_expression "(undefined1 *)(**(code **)(puVar30 + 0x175bf4))(1,1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar30 + 0x175bf4))(1,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(1,1)" ( number_literal , number_literal ))))) ;) (if_statement "if (puVar4 == (undefined1 *)0x0) {\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c7,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }" if (parenthesized_expression "(puVar4 == (undefined1 *)0x0)" ( (binary_expression "puVar4 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c7,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }" { (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c7,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c7,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c7,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "*puVar4 = 0;" (assignment_expression "*puVar4 = 0" (pointer_expression "*puVar4" * identifier) = number_literal) ;) (expression_statement "(**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),puVar4);" (call_expression "(**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),puVar4)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759b0))" ( (pointer_expression "**(code **)(puVar30 + 0x1759b0)" * (pointer_expression "*(code **)(puVar30 + 0x1759b0)" * (cast_expression "(code **)(puVar30 + 0x1759b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1759b0)" ( (binary_expression "puVar30 + 0x1759b0" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348),puVar4)" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) , identifier ))) ;) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78a0);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78a0)" identifier = (call_expression "(**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78a0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1757f8))" ( (pointer_expression "**(code **)(puVar30 + 0x1757f8)" * (pointer_expression "*(code **)(puVar30 + 0x1757f8)" * (cast_expression "(code **)(puVar30 + 0x1757f8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1757f8)" ( (binary_expression "puVar30 + 0x1757f8" identifier + number_literal) ))))) )) (argument_list "(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78a0)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x78a0" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) )))) ;) (if_statement "if (iVar19 != 0) {\n      iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac);\n      if (iVar19 == 0) {\n        puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n        if (puVar4 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar11 = 0;\n          iVar13 = *(int *)(puVar30 + 0x175020);\n          iVar22 = *(int *)(puVar30 + 0x1752b0);\n          iVar14 = *(int *)(puVar30 + 0x174fb8);\n          puVar21 = puVar4;\nLAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }\n      uStack_10d4 = 1;\n      goto LAB_00286050;\n    }" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (compound_statement "{\n      iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac);\n      if (iVar19 == 0) {\n        puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n        if (puVar4 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar11 = 0;\n          iVar13 = *(int *)(puVar30 + 0x175020);\n          iVar22 = *(int *)(puVar30 + 0x1752b0);\n          iVar14 = *(int *)(puVar30 + 0x174fb8);\n          puVar21 = puVar4;\nLAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }\n      uStack_10d4 = 1;\n      goto LAB_00286050;\n    }" { (expression_statement "iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac)" identifier = (call_expression "(**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac)" (parenthesized_expression "(**(code **)(puVar30 + 0x1757f8))" ( (pointer_expression "**(code **)(puVar30 + 0x1757f8)" * (pointer_expression "*(code **)(puVar30 + 0x1757f8)" * (cast_expression "(code **)(puVar30 + 0x1757f8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1757f8)" ( (binary_expression "puVar30 + 0x1757f8" identifier + number_literal) ))))) )) (argument_list "(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x78ac" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) )))) ;) (if_statement "if (iVar19 == 0) {\n        puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n        if (puVar4 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar11 = 0;\n          iVar13 = *(int *)(puVar30 + 0x175020);\n          iVar22 = *(int *)(puVar30 + 0x1752b0);\n          iVar14 = *(int *)(puVar30 + 0x174fb8);\n          puVar21 = puVar4;\nLAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n        puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n        if (puVar4 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar11 = 0;\n          iVar13 = *(int *)(puVar30 + 0x175020);\n          iVar22 = *(int *)(puVar30 + 0x1752b0);\n          iVar14 = *(int *)(puVar30 + 0x174fb8);\n          puVar21 = puVar4;\nLAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }" { (expression_statement "puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);" (assignment_expression "puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1)" identifier = (cast_expression "(undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar30 + 0x175bf4))(0x1000,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(0x1000,1)" ( number_literal , number_literal ))))) ;) (if_statement "if (puVar4 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar11 = 0;\n          iVar13 = *(int *)(puVar30 + 0x175020);\n          iVar22 = *(int *)(puVar30 + 0x1752b0);\n          iVar14 = *(int *)(puVar30 + 0x174fb8);\n          puVar21 = puVar4;\nLAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }" if (parenthesized_expression "(puVar4 != (undefined1 *)0x0)" ( (binary_expression "puVar4 != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar11 = 0;\n          iVar13 = *(int *)(puVar30 + 0x175020);\n          iVar22 = *(int *)(puVar30 + 0x1752b0);\n          iVar14 = *(int *)(puVar30 + 0x174fb8);\n          puVar21 = puVar4;\nLAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }" { (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175bdc))();" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175bdc))()" identifier = (call_expression "(**(code **)(puVar30 + 0x175bdc))()" (parenthesized_expression "(**(code **)(puVar30 + 0x175bdc))" ( (pointer_expression "**(code **)(puVar30 + 0x175bdc)" * (pointer_expression "*(code **)(puVar30 + 0x175bdc)" * (cast_expression "(code **)(puVar30 + 0x175bdc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bdc)" ( (binary_expression "puVar30 + 0x175bdc" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (expression_statement "iStack_10cc = 0x1000;" (assignment_expression "iStack_10cc = 0x1000" identifier = number_literal) ;) (expression_statement "uStack_10d4 = 0;" (assignment_expression "uStack_10d4 = 0" identifier = number_literal) ;) (expression_statement "uStack_10c8 = 0;" (assignment_expression "uStack_10c8 = 0" identifier = number_literal) ;) (expression_statement "puStack_10dc = (undefined1 *)0x0;" (assignment_expression "puStack_10dc = (undefined1 *)0x0" identifier = (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "cVar17 = '\0';" (assignment_expression "cVar17 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "puStack_10ec = (undefined1 *)0x0;" (assignment_expression "puStack_10ec = (undefined1 *)0x0" identifier = (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iVar19 = 0;" (assignment_expression "iVar19 = 0" identifier = number_literal) ;) (expression_statement "iVar11 = 0;" (assignment_expression "iVar11 = 0" identifier = number_literal) ;) (expression_statement "iVar13 = *(int *)(puVar30 + 0x175020);" (assignment_expression "iVar13 = *(int *)(puVar30 + 0x175020)" identifier = (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) ))))) ;) (expression_statement "iVar22 = *(int *)(puVar30 + 0x1752b0);" (assignment_expression "iVar22 = *(int *)(puVar30 + 0x1752b0)" identifier = (pointer_expression "*(int *)(puVar30 + 0x1752b0)" * (cast_expression "(int *)(puVar30 + 0x1752b0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x1752b0)" ( (binary_expression "puVar30 + 0x1752b0" identifier + number_literal) ))))) ;) (expression_statement "iVar14 = *(int *)(puVar30 + 0x174fb8);" (assignment_expression "iVar14 = *(int *)(puVar30 + 0x174fb8)" identifier = (pointer_expression "*(int *)(puVar30 + 0x174fb8)" * (cast_expression "(int *)(puVar30 + 0x174fb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb8)" ( (binary_expression "puVar30 + 0x174fb8" identifier + number_literal) ))))) ;) (expression_statement "puVar21 = puVar4;" (assignment_expression "puVar21 = puVar4" identifier = identifier) ;) (labeled_statement "LAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );" statement_identifier : (do_statement "do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );" do (compound_statement "{\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          }" { (expression_statement "iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);" (assignment_expression "iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a78))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a78))" ( (pointer_expression "**(code **)(puVar30 + 0x175a78)" * (pointer_expression "*(code **)(puVar30 + 0x175a78)" * (cast_expression "(code **)(puVar30 + 0x175a78)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a78)" ( (binary_expression "puVar30 + 0x175a78" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier )))) ;) (if_statement "if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }" if (parenthesized_expression "((iVar8 != -1) && (iVar8 != 10))" ( (binary_expression "(iVar8 != -1) && (iVar8 != 10)" (parenthesized_expression "(iVar8 != -1)" ( (binary_expression "iVar8 != -1" identifier != number_literal) )) && (parenthesized_expression "(iVar8 != 10)" ( (binary_expression "iVar8 != 10" identifier != number_literal) ))) )) (compound_statement "{\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }" { (expression_statement "iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);" (assignment_expression "iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc)" identifier = (call_expression "(**(code **)(puVar30 + 0x175e30))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175e30))" ( (pointer_expression "**(code **)(puVar30 + 0x175e30)" * (pointer_expression "*(code **)(puVar30 + 0x175e30)" * (cast_expression "(code **)(puVar30 + 0x175e30)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e30)" ( (binary_expression "puVar30 + 0x175e30" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier )))) ;) (expression_statement "iVar24 = (int)puVar21 - (int)puVar4;" (assignment_expression "iVar24 = (int)puVar21 - (int)puVar4" identifier = (binary_expression "(int)puVar21 - (int)puVar4" (cast_expression "(int)puVar21" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)puVar4" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }" { (if_statement "if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }" if (parenthesized_expression "(iStack_10cc <= iVar24 + 1)" ( (binary_expression "iStack_10cc <= iVar24 + 1" identifier <= (binary_expression "iVar24 + 1" identifier + number_literal)) )) (compound_statement "{\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }" { (expression_statement "iStack_10cc = iStack_10cc * 2;" (assignment_expression "iStack_10cc = iStack_10cc * 2" identifier = (binary_expression "iStack_10cc * 2" identifier * number_literal)) ;) (expression_statement "puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;" (assignment_expression "puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)" identifier = (cast_expression "(undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175b08))" ( (pointer_expression "**(code **)(puVar30 + 0x175b08)" * (pointer_expression "*(code **)(puVar30 + 0x175b08)" * (cast_expression "(code **)(puVar30 + 0x175b08)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175b08)" ( (binary_expression "puVar30 + 0x175b08" identifier + number_literal) ))))) )) (argument_list "(puVar4,iStack_10cc + 2,1)" ( identifier , (binary_expression "iStack_10cc + 2" identifier + number_literal) , number_literal ))))) ;) (if_statement "if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;" if (parenthesized_expression "(puVar4 == (undefined1 *)0x0)" ( (binary_expression "puVar4 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00285f24;" goto statement_identifier ;)) (expression_statement "puVar21 = puVar4 + iVar24;" (assignment_expression "puVar21 = puVar4 + iVar24" identifier = (binary_expression "puVar4 + iVar24" identifier + identifier)) ;) })) (expression_statement "*puVar21 = (char)iVar8;" (assignment_expression "*puVar21 = (char)iVar8" (pointer_expression "*puVar21" * identifier) = (cast_expression "(char)iVar8" ( (type_descriptor "char" primitive_type) ) identifier)) ;) (expression_statement "puVar21 = puVar21 + 1;" (assignment_expression "puVar21 = puVar21 + 1" identifier = (binary_expression "puVar21 + 1" identifier + number_literal)) ;) (goto_statement "goto LAB_00285dec;" goto statement_identifier ;) })) })) (if_statement "if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;" if (parenthesized_expression "((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))" ( (binary_expression "(puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)" (parenthesized_expression "(puVar4 == (undefined1 *)0x0)" ( (binary_expression "puVar4 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)" ( (comma_expression "iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0" (assignment_expression "iStack_10cc = ((int)puVar21 - (int)puVar4) + 1" identifier = (binary_expression "((int)puVar21 - (int)puVar4) + 1" (parenthesized_expression "((int)puVar21 - (int)puVar4)" ( (binary_expression "(int)puVar21 - (int)puVar4" (cast_expression "(int)puVar21" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)puVar4" ( (type_descriptor "int" primitive_type) ) identifier)) )) + number_literal)) , (binary_expression "(int)puVar21 - (int)puVar4 == 0" (binary_expression "(int)puVar21 - (int)puVar4" (cast_expression "(int)puVar21" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)puVar4" ( (type_descriptor "int" primitive_type) ) identifier)) == number_literal)) ))) )) (goto_statement "goto LAB_00285f24;" goto statement_identifier ;)) (expression_statement "*puVar21 = 0;" (assignment_expression "*puVar21 = 0" (pointer_expression "*puVar21" * identifier) = number_literal) ;) (expression_statement "uStack_10ac = 0;" (assignment_expression "uStack_10ac = 0" identifier = number_literal) ;) (expression_statement "iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);" (assignment_expression "iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1)" identifier = (call_expression "(**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(iStack_10cc,1)" ( identifier , number_literal )))) ;) (if_statement "if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }" if (parenthesized_expression "(iVar11 == 0)" ( (binary_expression "iVar11 == 0" identifier == number_literal) )) (compound_statement "{\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }" { (expression_statement "(**(code **)(puVar30 + 0x175450))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x175450))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x175450))" ( (pointer_expression "**(code **)(puVar30 + 0x175450)" * (pointer_expression "*(code **)(puVar30 + 0x175450)" * (cast_expression "(code **)(puVar30 + 0x175450)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175450)" ( (binary_expression "puVar30 + 0x175450" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (goto_statement "goto LAB_00287bf8;" goto statement_identifier ;) })) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1)" identifier = (call_expression "(**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(iStack_10cc,1)" ( identifier , number_literal )))) ;) (if_statement "if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }" { (expression_statement "(**(code **)(puVar30 + 0x175450))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x175450))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x175450))" ( (pointer_expression "**(code **)(puVar30 + 0x175450)" * (pointer_expression "*(code **)(puVar30 + 0x175450)" * (cast_expression "(code **)(puVar30 + 0x175450)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175450)" ( (binary_expression "puVar30 + 0x175450" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "iVar19 = 0;" (assignment_expression "iVar19 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_00287be8;" goto statement_identifier ;) })) (expression_statement "iVar9 = *(int *)(puVar30 + 0x174fc8);" (assignment_expression "iVar9 = *(int *)(puVar30 + 0x174fc8)" identifier = (pointer_expression "*(int *)(puVar30 + 0x174fc8)" * (cast_expression "(int *)(puVar30 + 0x174fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fc8)" ( (binary_expression "puVar30 + 0x174fc8" identifier + number_literal) ))))) ;) (expression_statement "iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;" (assignment_expression "iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8" identifier = (binary_expression "*(int *)(puVar30 + 0x174fb8) + -0x2d8" (pointer_expression "*(int *)(puVar30 + 0x174fb8)" * (cast_expression "(int *)(puVar30 + 0x174fb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb8)" ( (binary_expression "puVar30 + 0x174fb8" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "iVar8 = 0;" (assignment_expression "iVar8 = 0" identifier = number_literal) ;) (while_statement "while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }" while (parenthesized_expression "(iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0)" ( (comma_expression "iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0" (assignment_expression "iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af)" identifier = (call_expression "(**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af)" (parenthesized_expression "(**(code **)(puVar30 + 0x175720))" ( (pointer_expression "**(code **)(puVar30 + 0x175720)" * (pointer_expression "*(code **)(puVar30 + 0x175720)" * (cast_expression "(code **)(puVar30 + 0x175720)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175720)" ( (binary_expression "puVar30 + 0x175720" identifier + number_literal) ))))) )) (argument_list "(uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af)" ( identifier , number_literal , identifier , identifier , identifier , identifier , (binary_expression "iVar9 + 0x2c44" identifier + number_literal) , (binary_expression "iVar13 + 0x7178" identifier + number_literal) , number_literal , (pointer_expression "&uStack_10b0" & identifier) , (pointer_expression "&uStack_10ac" & identifier) , (pointer_expression "&uStack_10af" & identifier) )))) , (binary_expression "iVar6 == 0" identifier == number_literal)) )) (compound_statement "{\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }" { (if_statement "if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }" { (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (expression_statement "iVar7 = *(int *)(puVar30 + 0x174fc8);" (assignment_expression "iVar7 = *(int *)(puVar30 + 0x174fc8)" identifier = (pointer_expression "*(int *)(puVar30 + 0x174fc8)" * (cast_expression "(int *)(puVar30 + 0x174fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fc8)" ( (binary_expression "puVar30 + 0x174fc8" identifier + number_literal) ))))) ;) (expression_statement "iVar28 = *(int *)(puVar30 + 0x174fb0);" (assignment_expression "iVar28 = *(int *)(puVar30 + 0x174fb0)" identifier = (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) ))))) ;) (expression_statement "iVar6 = 0;" (assignment_expression "iVar6 = 0" identifier = number_literal) ;) (labeled_statement "LAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );" statement_identifier : (do_statement "do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );" do (compound_statement "{\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                }" { (expression_statement "iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);" (assignment_expression "iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" identifier = (call_expression "(**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" (parenthesized_expression "(**(code **)(puVar30 + 0x175720))" ( (pointer_expression "**(code **)(puVar30 + 0x175720)" * (pointer_expression "*(code **)(puVar30 + 0x175720)" * (cast_expression "(code **)(puVar30 + 0x175720)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175720)" ( (binary_expression "puVar30 + 0x175720" identifier + number_literal) ))))) )) (argument_list "(uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" ( identifier , number_literal , identifier , identifier , identifier , identifier , (binary_expression "iVar7 + 0xabc" identifier + number_literal) , identifier , number_literal , (pointer_expression "&cStack_10ae" & identifier) , (pointer_expression "&iStack_10a8" & identifier) , (pointer_expression "&uStack_10ad" & identifier) )))) ;) (if_statement "if (iVar5 != 0) goto LAB_00285914;" if (parenthesized_expression "(iVar5 != 0)" ( (binary_expression "iVar5 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00285914;" goto statement_identifier ;)) (if_statement "if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }" if (parenthesized_expression "(iVar6 == 1)" ( (binary_expression "iVar6 == 1" identifier == number_literal) )) (compound_statement "{\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }" { (expression_statement "puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);" (assignment_expression "puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10)" identifier = (cast_expression "(undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar30 + 0x175a28))(iVar19,0,10)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a28))" ( (pointer_expression "**(code **)(puVar30 + 0x175a28)" * (pointer_expression "*(code **)(puVar30 + 0x175a28)" * (cast_expression "(code **)(puVar30 + 0x175a28)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a28)" ( (binary_expression "puVar30 + 0x175a28" identifier + number_literal) ))))) )) (argument_list "(iVar19,0,10)" ( identifier , number_literal , number_literal ))))) ;) }) (else_clause "else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }" else (if_statement "if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }" if (parenthesized_expression "(iVar6 == 2)" ( (binary_expression "iVar6 == 2" identifier == number_literal) )) (compound_statement "{\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }" { (expression_statement "iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);" (assignment_expression "iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a20))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a20))" ( (pointer_expression "**(code **)(puVar30 + 0x175a20)" * (pointer_expression "*(code **)(puVar30 + 0x175a20)" * (cast_expression "(code **)(puVar30 + 0x175a20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a20)" ( (binary_expression "puVar30 + 0x175a20" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier )))) ;) (expression_statement "puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;" (assignment_expression "puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)" identifier = (cast_expression "(undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(iVar5 + 0x1000,1)" ( (binary_expression "iVar5 + 0x1000" identifier + number_literal) , number_literal ))))) ;) (if_statement "if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }" if (parenthesized_expression "(puStack_10ec != (undefined1 *)0x0)" ( (binary_expression "puStack_10ec != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }" { (expression_statement "iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);" (assignment_expression "iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a20))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a20))" ( (pointer_expression "**(code **)(puVar30 + 0x175a20)" * (pointer_expression "*(code **)(puVar30 + 0x175a20)" * (cast_expression "(code **)(puVar30 + 0x175a20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a20)" ( (binary_expression "puVar30 + 0x175a20" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier )))) ;) (expression_statement "(**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);" (call_expression "(**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000)" (parenthesized_expression "(**(code **)(puVar30 + 0x175f24))" ( (pointer_expression "**(code **)(puVar30 + 0x175f24)" * (pointer_expression "*(code **)(puVar30 + 0x175f24)" * (cast_expression "(code **)(puVar30 + 0x175f24)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175f24)" ( (binary_expression "puVar30 + 0x175f24" identifier + number_literal) ))))) )) (argument_list "(puStack_10ec,iVar19,iVar6 + 0x1000)" ( identifier , identifier , (binary_expression "iVar6 + 0x1000" identifier + number_literal) ))) ;) (expression_statement "iVar6 = 3;" (assignment_expression "iVar6 = 3" identifier = number_literal) ;) (goto_statement "goto LAB_002857fc;" goto statement_identifier ;) })) }) (else_clause "else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }" else (if_statement "if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }" if (parenthesized_expression "(iVar6 == 0)" ( (binary_expression "iVar6 == 0" identifier == number_literal) )) (compound_statement "{\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }" { (expression_statement "iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);" (assignment_expression "iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890)" identifier = (call_expression "(**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890)" (parenthesized_expression "(**(code **)(puVar30 + 0x1753e4))" ( (pointer_expression "**(code **)(puVar30 + 0x1753e4)" * (pointer_expression "*(code **)(puVar30 + 0x1753e4)" * (cast_expression "(code **)(puVar30 + 0x1753e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1753e4)" ( (binary_expression "puVar30 + 0x1753e4" identifier + number_literal) ))))) )) (argument_list "(iVar19,iVar28 + 0x7890)" ( identifier , (binary_expression "iVar28 + 0x7890" identifier + number_literal) )))) ;) (if_statement "if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }" if (parenthesized_expression "(iVar5 == 0)" ( (binary_expression "iVar5 == 0" identifier == number_literal) )) (compound_statement "{\n                      cVar17 = -1;\n                    }" { (expression_statement "cVar17 = -1;" (assignment_expression "cVar17 = -1" identifier = number_literal) ;) }) (else_clause "else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }" else (compound_statement "{\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }" { (expression_statement "cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);" (assignment_expression "cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10)" identifier = (call_expression "(**(code **)(puVar30 + 0x175c34))(iVar19,0,10)" (parenthesized_expression "(**(code **)(puVar30 + 0x175c34))" ( (pointer_expression "**(code **)(puVar30 + 0x175c34)" * (pointer_expression "*(code **)(puVar30 + 0x175c34)" * (cast_expression "(code **)(puVar30 + 0x175c34)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175c34)" ( (binary_expression "puVar30 + 0x175c34" identifier + number_literal) ))))) )) (argument_list "(iVar19,0,10)" ( identifier , number_literal , number_literal )))) ;) }))) })))))) (expression_statement "iVar6 = iVar6 + 1;" (assignment_expression "iVar6 = iVar6 + 1" identifier = (binary_expression "iVar6 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "( true )" ( true )) ;)) })) (if_statement "if (iVar8 != 1) goto LAB_00285914;" if (parenthesized_expression "(iVar8 != 1)" ( (binary_expression "iVar8 != 1" identifier != number_literal) )) (goto_statement "goto LAB_00285914;" goto statement_identifier ;)) (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (expression_statement "uVar12 = (**(code **)(puVar30 + 0x175a20))();" (assignment_expression "uVar12 = (**(code **)(puVar30 + 0x175a20))()" identifier = (call_expression "(**(code **)(puVar30 + 0x175a20))()" (parenthesized_expression "(**(code **)(puVar30 + 0x175a20))" ( (pointer_expression "**(code **)(puVar30 + 0x175a20)" * (pointer_expression "*(code **)(puVar30 + 0x175a20)" * (cast_expression "(code **)(puVar30 + 0x175a20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a20)" ( (binary_expression "puVar30 + 0x175a20" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (while_statement "while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }" while (parenthesized_expression "(iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    )" ( (comma_expression "iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0" (assignment_expression "iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" identifier = (call_expression "(**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" (parenthesized_expression "(**(code **)(puVar30 + 0x175720))" ( (pointer_expression "**(code **)(puVar30 + 0x175720)" * (pointer_expression "*(code **)(puVar30 + 0x175720)" * (cast_expression "(code **)(puVar30 + 0x175720)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175720)" ( (binary_expression "puVar30 + 0x175720" identifier + number_literal) ))))) )) (argument_list "(uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" ( identifier , number_literal , identifier , identifier , identifier , identifier , (binary_expression "iVar14 + -0x3bc" identifier + number_literal) , identifier , number_literal , (pointer_expression "&cStack_10ae" & identifier) , (pointer_expression "&iStack_10a8" & identifier) , (pointer_expression "&uStack_10ad" & identifier) )))) , (binary_expression "iVar6 == 0" identifier == number_literal)) )) (compound_statement "{\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }" { (if_statement "if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }" if (parenthesized_expression "((cStack_10ae != '\0') && (0 < iStack_10a8))" ( (binary_expression "(cStack_10ae != '\0') && (0 < iStack_10a8)" (parenthesized_expression "(cStack_10ae != '\0')" ( (binary_expression "cStack_10ae != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(0 < iStack_10a8)" ( (binary_expression "0 < iStack_10a8" number_literal < identifier) ))) )) (compound_statement "{\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }" { (expression_statement "iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);" (assignment_expression "iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1)" identifier = (call_expression "(*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1)" (parenthesized_expression "(*(code *)(iVar22 + 0x458c))" ( (pointer_expression "*(code *)(iVar22 + 0x458c)" * (cast_expression "(code *)(iVar22 + 0x458c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar22 + 0x458c)" ( (binary_expression "iVar22 + 0x458c" identifier + number_literal) )))) )) (argument_list "(iVar11 + iStack_10a8 + -1)" ( (binary_expression "iVar11 + iStack_10a8 + -1" (binary_expression "iVar11 + iStack_10a8" identifier + identifier) + number_literal) )))) ;) (if_statement "if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }" if (parenthesized_expression "((int)uVar12 < iVar6)" ( (binary_expression "(int)uVar12 < iVar6" (cast_expression "(int)uVar12" ( (type_descriptor "int" primitive_type) ) identifier) < identifier) )) (compound_statement "{\n                    uVar12 = 0;\n                  }" { (expression_statement "uVar12 = 0;" (assignment_expression "uVar12 = 0" identifier = number_literal) ;) }) (else_clause "else {\n                    uVar12 = uVar12 - iVar6;\n                  }" else (compound_statement "{\n                    uVar12 = uVar12 - iVar6;\n                  }" { (expression_statement "uVar12 = uVar12 - iVar6;" (assignment_expression "uVar12 = uVar12 - iVar6" identifier = (binary_expression "uVar12 - iVar6" identifier - identifier)) ;) }))) })) })) (if_statement "if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }" if (parenthesized_expression "(cVar17 == -1)" ( (binary_expression "cVar17 == -1" identifier == number_literal) )) (compound_statement "{\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }" { (if_statement "if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }" if (parenthesized_expression "(0 < (int)uStack_10c8)" ( (binary_expression "0 < (int)uStack_10c8" number_literal < (cast_expression "(int)uStack_10c8" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }" { (expression_statement "iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);" (assignment_expression "iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a04))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a04))" ( (pointer_expression "**(code **)(puVar30 + 0x175a04)" * (pointer_expression "*(code **)(puVar30 + 0x175a04)" * (cast_expression "(code **)(puVar30 + 0x175a04)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a04)" ( (binary_expression "puVar30 + 0x175a04" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;" if (parenthesized_expression "((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))" ( (binary_expression "(iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0)" (parenthesized_expression "(iVar6 < 0)" ( (binary_expression "iVar6 < 0" identifier < number_literal) )) || (parenthesized_expression "(iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0)" ( (comma_expression "iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0" (assignment_expression "iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a10))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a10))" ( (pointer_expression "**(code **)(puVar30 + 0x175a10)" * (pointer_expression "*(code **)(puVar30 + 0x175a10)" * (cast_expression "(code **)(puVar30 + 0x175a10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a10)" ( (binary_expression "puVar30 + 0x175a10" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) , (binary_expression "iVar6 < 0" identifier < number_literal)) ))) )) (goto_statement "goto LAB_00287db0;" goto statement_identifier ;)) (expression_statement "(**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);" (call_expression "(**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759bc))" ( (pointer_expression "**(code **)(puVar30 + 0x1759bc)" * (pointer_expression "*(code **)(puVar30 + 0x1759bc)" * (cast_expression "(code **)(puVar30 + 0x1759bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1759bc)" ( (binary_expression "puVar30 + 0x1759bc" identifier + number_literal) ))))) )) (argument_list "(iVar3,uStack_10d4 - uStack_10c8)" ( identifier , (binary_expression "uStack_10d4 - uStack_10c8" identifier - identifier) ))) ;) (expression_statement "iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);" (assignment_expression "iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a10))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a10))" ( (pointer_expression "**(code **)(puVar30 + 0x175a10)" * (pointer_expression "*(code **)(puVar30 + 0x175a10)" * (cast_expression "(code **)(puVar30 + 0x175a10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a10)" ( (binary_expression "puVar30 + 0x175a10" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if (iVar6 < 0) goto LAB_00287db0;" if (parenthesized_expression "(iVar6 < 0)" ( (binary_expression "iVar6 < 0" identifier < number_literal) )) (goto_statement "goto LAB_00287db0;" goto statement_identifier ;)) (expression_statement "uStack_10c8 = 0;" (assignment_expression "uStack_10c8 = 0" identifier = number_literal) ;) })) (if_statement "if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }" if (parenthesized_expression "((uStack_10d4 & 1) != 0)" ( (binary_expression "(uStack_10d4 & 1) != 0" (parenthesized_expression "(uStack_10d4 & 1)" ( (binary_expression "uStack_10d4 & 1" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }" { (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0)" ( identifier , number_literal ))) ;) (expression_statement "uStack_10d4 = uStack_10d4 + 1;" (assignment_expression "uStack_10d4 = uStack_10d4 + 1" identifier = (binary_expression "uStack_10d4 + 1" identifier + number_literal)) ;) })) (expression_statement "(**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);" (call_expression "(**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890)" (parenthesized_expression "(**(code **)(puVar30 + 0x175c90))" ( (pointer_expression "**(code **)(puVar30 + 0x175c90)" * (pointer_expression "*(code **)(puVar30 + 0x175c90)" * (cast_expression "(code **)(puVar30 + 0x175c90)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175c90)" ( (binary_expression "puVar30 + 0x175c90" identifier + number_literal) ))))) )) (argument_list "(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x7890" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);" (call_expression "(**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff)" (parenthesized_expression "(**(code **)(puVar30 + 0x175970))" ( (pointer_expression "**(code **)(puVar30 + 0x175970)" * (pointer_expression "*(code **)(puVar30 + 0x175970)" * (cast_expression "(code **)(puVar30 + 0x175970)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175970)" ( (binary_expression "puVar30 + 0x175970" identifier + number_literal) ))))) )) (argument_list "(iVar3,(uint)puStack_10dc & 0xffff)" ( identifier , (binary_expression "(uint)puStack_10dc & 0xffff" (cast_expression "(uint)puStack_10dc" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) ))) ;) (if_statement "if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }" if (parenthesized_expression "(puStack_10ec == (undefined1 *)0x0)" ( (binary_expression "puStack_10ec == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }" { (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0)" ( identifier , number_literal ))) ;) (expression_statement "iVar6 = uStack_10d4 + 7;" (assignment_expression "iVar6 = uStack_10d4 + 7" identifier = (binary_expression "uStack_10d4 + 7" identifier + number_literal)) ;) (labeled_statement "LAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);" statement_identifier : (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0)" ( identifier , number_literal ))) ;)) (expression_statement "iVar6 = iVar6 + 1;" (assignment_expression "iVar6 = iVar6 + 1" identifier = (binary_expression "iVar6 + 1" identifier + number_literal)) ;) }) (else_clause "else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }" else (compound_statement "{\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }" { (expression_statement "bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);" (assignment_expression "bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a20))(puStack_10ec)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a20))" ( (pointer_expression "**(code **)(puVar30 + 0x175a20)" * (pointer_expression "*(code **)(puVar30 + 0x175a20)" * (cast_expression "(code **)(puVar30 + 0x175a20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a20)" ( (binary_expression "puVar30 + 0x175a20" identifier + number_literal) ))))) )) (argument_list "(puStack_10ec)" ( identifier )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,bVar18)" ( identifier , identifier ))) ;) (expression_statement "uVar29 = (uint)bVar18;" (assignment_expression "uVar29 = (uint)bVar18" identifier = (cast_expression "(uint)bVar18" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }" if (parenthesized_expression "(uVar29 != 0)" ( (binary_expression "uVar29 != 0" identifier != number_literal) )) (compound_statement "{\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }" { (expression_statement "puVar21 = puStack_10ec;" (assignment_expression "puVar21 = puStack_10ec" identifier = identifier) ;) (do_statement "do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);" do (compound_statement "{\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    }" { (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,*puVar21)" ( identifier , (pointer_expression "*puVar21" * identifier) ))) ;) (expression_statement "puVar21 = puVar21 + 1;" (assignment_expression "puVar21 = puVar21 + 1" identifier = (binary_expression "puVar21 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(puVar21 != puStack_10ec + uVar29)" ( (binary_expression "puVar21 != puStack_10ec + uVar29" identifier != (binary_expression "puStack_10ec + uVar29" identifier + identifier)) )) ;) })) (expression_statement "iVar6 = uStack_10d4 + 7 + uVar29;" (assignment_expression "iVar6 = uStack_10d4 + 7 + uVar29" identifier = (binary_expression "uStack_10d4 + 7 + uVar29" (binary_expression "uStack_10d4 + 7" identifier + number_literal) + identifier)) ;) (if_statement "if ((bVar18 & 1) == 0) goto LAB_00287bac;" if (parenthesized_expression "((bVar18 & 1) == 0)" ( (binary_expression "(bVar18 & 1) == 0" (parenthesized_expression "(bVar18 & 1)" ( (binary_expression "bVar18 & 1" identifier & number_literal) )) == number_literal) )) (goto_statement "goto LAB_00287bac;" goto statement_identifier ;)) }))) (if_statement "if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }" if (parenthesized_expression "(puStack_10dc == (undefined1 *)0x404)" ( (binary_expression "puStack_10dc == (undefined1 *)0x404" identifier == (cast_expression "(undefined1 *)0x404" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }" { (expression_statement "iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);" (assignment_expression "iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a04))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a04))" ( (pointer_expression "**(code **)(puVar30 + 0x175a04)" * (pointer_expression "*(code **)(puVar30 + 0x175a04)" * (cast_expression "(code **)(puVar30 + 0x175a04)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a04)" ( (binary_expression "puVar30 + 0x175a04" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if (iVar7 < 0) goto LAB_00287db0;" if (parenthesized_expression "(iVar7 < 0)" ( (binary_expression "iVar7 < 0" identifier < number_literal) )) (goto_statement "goto LAB_00287db0;" goto statement_identifier ;)) (expression_statement "(**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);" (call_expression "(**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759bc))" ( (pointer_expression "**(code **)(puVar30 + 0x1759bc)" * (pointer_expression "*(code **)(puVar30 + 0x1759bc)" * (cast_expression "(code **)(puVar30 + 0x1759bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1759bc)" ( (binary_expression "puVar30 + 0x1759bc" identifier + number_literal) ))))) )) (argument_list "(iVar3,0xffffffff)" ( identifier , number_literal ))) ;) (expression_statement "uStack_10d4 = iVar6 + 4;" (assignment_expression "uStack_10d4 = iVar6 + 4" identifier = (binary_expression "iVar6 + 4" identifier + number_literal)) ;) (expression_statement "uStack_10c8 = uStack_10d4;" (assignment_expression "uStack_10c8 = uStack_10d4" identifier = identifier) ;) }) (else_clause "else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }" else (compound_statement "{\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }" { (expression_statement "(**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);" (call_expression "(**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759bc))" ( (pointer_expression "**(code **)(puVar30 + 0x1759bc)" * (pointer_expression "*(code **)(puVar30 + 0x1759bc)" * (cast_expression "(code **)(puVar30 + 0x1759bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1759bc)" ( (binary_expression "puVar30 + 0x1759bc" identifier + number_literal) ))))) )) (argument_list "(iVar3,uVar12)" ( identifier , identifier ))) ;) (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (expression_statement "uStack_10d4 = uVar12 + iVar6 + 4;" (assignment_expression "uStack_10d4 = uVar12 + iVar6 + 4" identifier = (binary_expression "uVar12 + iVar6 + 4" (binary_expression "uVar12 + iVar6" identifier + identifier) + number_literal)) ;) (expression_statement "iVar6 = uVar12 - 1;" (assignment_expression "iVar6 = uVar12 - 1" identifier = (binary_expression "uVar12 - 1" identifier - number_literal)) ;) (if_statement "if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }" if (parenthesized_expression "(uVar12 != 0)" ( (binary_expression "uVar12 != 0" identifier != number_literal) )) (compound_statement "{\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }" { (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (do_statement "do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);" do (compound_statement "{\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    }" { (expression_statement "puVar21 = (undefined1 *)(iVar11 + iStack_10a8);" (assignment_expression "puVar21 = (undefined1 *)(iVar11 + iStack_10a8)" identifier = (cast_expression "(undefined1 *)(iVar11 + iStack_10a8)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar11 + iStack_10a8)" ( (binary_expression "iVar11 + iStack_10a8" identifier + identifier) )))) ;) (expression_statement "iStack_10a8 = iStack_10a8 + 1;" (assignment_expression "iStack_10a8 = iStack_10a8 + 1" identifier = (binary_expression "iStack_10a8 + 1" identifier + number_literal)) ;) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,*puVar21)" ( identifier , (pointer_expression "*puVar21" * identifier) ))) ;) (expression_statement "iVar6 = iVar6 + -1;" (assignment_expression "iVar6 = iVar6 + -1" identifier = (binary_expression "iVar6 + -1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar6 != -1)" ( (binary_expression "iVar6 != -1" identifier != number_literal) )) ;) })) (if_statement "if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }" if (parenthesized_expression "((uStack_10d4 & 1) != 0)" ( (binary_expression "(uStack_10d4 & 1) != 0" (parenthesized_expression "(uStack_10d4 & 1)" ( (binary_expression "uStack_10d4 & 1" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }" { (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0)" ( identifier , number_literal ))) ;) (expression_statement "uStack_10d4 = uStack_10d4 + 1;" (assignment_expression "uStack_10d4 = uStack_10d4 + 1" identifier = (binary_expression "uStack_10d4 + 1" identifier + number_literal)) ;) })) }))) (labeled_statement "LAB_00285914:\n                iVar8 = iVar8 + 1;" statement_identifier : (expression_statement "iVar8 = iVar8 + 1;" (assignment_expression "iVar8 = iVar8 + 1" identifier = (binary_expression "iVar8 + 1" identifier + number_literal)) ;)) }) (else_clause "else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }" else (compound_statement "{\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }" { (if_statement "if (0x7fff < (int)uVar12) goto LAB_00285914;" if (parenthesized_expression "(0x7fff < (int)uVar12)" ( (binary_expression "0x7fff < (int)uVar12" number_literal < (cast_expression "(int)uVar12" ( (type_descriptor "int" primitive_type) ) identifier)) )) (goto_statement "goto LAB_00285914;" goto statement_identifier ;)) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0x1c)" ( identifier , number_literal ))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,cVar17)" ( identifier , identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,(uint)puStack_10dc & 0xff)" ( identifier , (binary_expression "(uint)puStack_10dc & 0xff" (cast_expression "(uint)puStack_10dc" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);" (call_expression "(**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff)" (parenthesized_expression "(**(code **)(puVar30 + 0x175970))" ( (pointer_expression "**(code **)(puVar30 + 0x175970)" * (pointer_expression "*(code **)(puVar30 + 0x175970)" * (cast_expression "(code **)(puVar30 + 0x175970)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175970)" ( (binary_expression "puVar30 + 0x175970" identifier + number_literal) ))))) )) (argument_list "(iVar3,uVar12 & 0xffff)" ( identifier , (binary_expression "uVar12 & 0xffff" identifier & number_literal) ))) ;) (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (expression_statement "uStack_10d4 = uVar12 + uStack_10d4 + 5;" (assignment_expression "uStack_10d4 = uVar12 + uStack_10d4 + 5" identifier = (binary_expression "uVar12 + uStack_10d4 + 5" (binary_expression "uVar12 + uStack_10d4" identifier + identifier) + number_literal)) ;) (expression_statement "iVar6 = uVar12 - 1;" (assignment_expression "iVar6 = uVar12 - 1" identifier = (binary_expression "uVar12 - 1" identifier - number_literal)) ;) (if_statement "if (uVar12 == 0) goto LAB_00285914;" if (parenthesized_expression "(uVar12 == 0)" ( (binary_expression "uVar12 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00285914;" goto statement_identifier ;)) (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (do_statement "do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);" do (compound_statement "{\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                }" { (expression_statement "puVar21 = (undefined1 *)(iVar11 + iStack_10a8);" (assignment_expression "puVar21 = (undefined1 *)(iVar11 + iStack_10a8)" identifier = (cast_expression "(undefined1 *)(iVar11 + iStack_10a8)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar11 + iStack_10a8)" ( (binary_expression "iVar11 + iStack_10a8" identifier + identifier) )))) ;) (expression_statement "iStack_10a8 = iStack_10a8 + 1;" (assignment_expression "iStack_10a8 = iStack_10a8 + 1" identifier = (binary_expression "iStack_10a8 + 1" identifier + number_literal)) ;) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,*puVar21)" ( identifier , (pointer_expression "*puVar21" * identifier) ))) ;) (expression_statement "iVar6 = iVar6 + -1;" (assignment_expression "iVar6 = iVar6 + -1" identifier = (binary_expression "iVar6 + -1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar6 != -1)" ( (binary_expression "iVar6 != -1" identifier != number_literal) )) ;) (expression_statement "iVar8 = 2;" (assignment_expression "iVar8 = 2" identifier = number_literal) ;) }))) })) (expression_statement "iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);" (assignment_expression "iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11)" identifier = (call_expression "(**(code **)(puVar30 + 0x17575c))(iVar11)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(iVar11)" ( identifier )))) ;) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19)" identifier = (call_expression "(**(code **)(puVar30 + 0x17575c))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier )))) ;) (expression_statement "puVar21 = puVar4;" (assignment_expression "puVar21 = puVar4" identifier = identifier) ;) (if_statement "if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }" if (parenthesized_expression "(puStack_10ec != (undefined1 *)0x0)" ( (binary_expression "puStack_10ec != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }" { (expression_statement "puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);" (assignment_expression "puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec)" identifier = (cast_expression "(undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar30 + 0x17575c))(puStack_10ec)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(puStack_10ec)" ( identifier ))))) ;) })) }) while (parenthesized_expression "( true )" ( true )) ;)) })) (goto_statement "goto LAB_00287db0;" goto statement_identifier ;) })) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1)" identifier = (call_expression "(**(code **)(puVar30 + 0x175bf4))(0x14000,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(0x14000,1)" ( number_literal , number_literal )))) ;) (if_statement "if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (compound_statement "{\n        (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }" { (expression_statement "(**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);" (call_expression "(**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000)" (parenthesized_expression "(**(code **)(puVar30 + 0x175dbc))" ( (pointer_expression "**(code **)(puVar30 + 0x175dbc)" * (pointer_expression "*(code **)(puVar30 + 0x175dbc)" * (cast_expression "(code **)(puVar30 + 0x175dbc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175dbc)" ( (binary_expression "puVar30 + 0x175dbc" identifier + number_literal) ))))) )) (argument_list "(iVar19,0,0x14000)" ( identifier , number_literal , number_literal ))) ;) (do_statement "do {\n          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );" do (compound_statement "{\n          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        }" { (expression_statement "iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);" (assignment_expression "iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19)" identifier = (call_expression "(**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175494))" ( (pointer_expression "**(code **)(puVar30 + 0x175494)" * (pointer_expression "*(code **)(puVar30 + 0x175494)" * (cast_expression "(code **)(puVar30 + 0x175494)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175494)" ( (binary_expression "puVar30 + 0x175494" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc,0x14000,iVar19)" ( identifier , number_literal , identifier )))) ;) (if_statement "if (iVar13 == 0) goto LAB_00286038;" if (parenthesized_expression "(iVar13 == 0)" ( (binary_expression "iVar13 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00286038;" goto statement_identifier ;)) (expression_statement "iVar22 = 0;" (assignment_expression "iVar22 = 0" identifier = number_literal) ;) (if_statement "if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }" if (parenthesized_expression "(0 < iVar13)" ( (binary_expression "0 < iVar13" number_literal < identifier) )) (compound_statement "{\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }" { (do_statement "do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);" do (compound_statement "{\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            }" { (expression_statement "iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);" (assignment_expression "iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22)" identifier = (call_expression "(**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22)" (parenthesized_expression "(**(code **)(puVar30 + 0x17607c))" ( (pointer_expression "**(code **)(puVar30 + 0x17607c)" * (pointer_expression "*(code **)(puVar30 + 0x17607c)" * (cast_expression "(code **)(puVar30 + 0x17607c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17607c)" ( (binary_expression "puVar30 + 0x17607c" identifier + number_literal) ))))) )) (argument_list "(iVar3,iVar13 - iVar22,iVar19 + iVar22)" ( identifier , (binary_expression "iVar13 - iVar22" identifier - identifier) , (binary_expression "iVar19 + iVar22" identifier + identifier) )))) ;) (if_statement "if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }" if (parenthesized_expression "(iVar14 < 1)" ( (binary_expression "iVar14 < 1" identifier < number_literal) )) (compound_statement "{\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }" { (if_statement "if (iVar22 < iVar13) goto LAB_00286038;" if (parenthesized_expression "(iVar22 < iVar13)" ( (binary_expression "iVar22 < iVar13" identifier < identifier) )) (goto_statement "goto LAB_00286038;" goto statement_identifier ;)) (break_statement "break;" break ;) })) (expression_statement "iVar22 = iVar22 + iVar14;" (assignment_expression "iVar22 = iVar22 + iVar14" identifier = (binary_expression "iVar22 + iVar14" identifier + identifier)) ;) }) while (parenthesized_expression "(iVar22 < iVar13)" ( (binary_expression "iVar22 < iVar13" identifier < identifier) )) ;) })) }) while (parenthesized_expression "( true )" ( true )) ;) })) (expression_statement "uStack_10d4 = 1;" (assignment_expression "uStack_10d4 = 1" identifier = number_literal) ;) (goto_statement "goto LAB_00286050;" goto statement_identifier ;) })) (expression_statement "puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);" (assignment_expression "puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1)" identifier = (cast_expression "(undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar30 + 0x175bf4))(0x1000,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(0x1000,1)" ( number_literal , number_literal ))))) ;) (if_statement "if (puVar4 == (undefined1 *)0x0) {\nLAB_0028544c:\n      uStack_10d4 = 0xffffffff;\n    }\n    else {\n      uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n      iStack_10cc = 0x1000;\n      uStack_10d4 = 0;\n      uStack_10c8 = 0;\n      uStack_10e4 = 0;\n      cVar17 = '\0';\n      puStack_10dc = (undefined1 *)0x0;\n      iVar19 = 0;\n      iVar11 = 0;\n      iVar13 = *(int *)(puVar30 + 0x175020);\n      iVar22 = *(int *)(puVar30 + 0x1752b0);\n      iVar14 = *(int *)(puVar30 + 0x174fb8);\n      puVar21 = puVar4;\n      while( true ) {\n        while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar11 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar9 = *(int *)(puVar30 + 0x174fc8);\n        iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n        iVar8 = 0;\n        while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0) {\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }\n        iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n        iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n        puVar21 = puVar4;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }\n      }\nLAB_0028573c:\n      (**(code **)(puVar30 + 0x175450))(uVar15);\n      if (iVar11 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar30 + 0x17575c))(iVar11);\n      }\nLAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x17575c))(iVar19);\n      }\n      if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n      }\n      (**(code **)(puVar30 + 0x17575c))(puVar4);\n      if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }\nLAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }\n        goto LAB_00287858;\n      }\n      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n    }" if (parenthesized_expression "(puVar4 == (undefined1 *)0x0)" ( (binary_expression "puVar4 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_0028544c:\n      uStack_10d4 = 0xffffffff;\n    }" { (labeled_statement "LAB_0028544c:\n      uStack_10d4 = 0xffffffff;" statement_identifier : (expression_statement "uStack_10d4 = 0xffffffff;" (assignment_expression "uStack_10d4 = 0xffffffff" identifier = number_literal) ;)) }) (else_clause "else {\n      uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n      iStack_10cc = 0x1000;\n      uStack_10d4 = 0;\n      uStack_10c8 = 0;\n      uStack_10e4 = 0;\n      cVar17 = '\0';\n      puStack_10dc = (undefined1 *)0x0;\n      iVar19 = 0;\n      iVar11 = 0;\n      iVar13 = *(int *)(puVar30 + 0x175020);\n      iVar22 = *(int *)(puVar30 + 0x1752b0);\n      iVar14 = *(int *)(puVar30 + 0x174fb8);\n      puVar21 = puVar4;\n      while( true ) {\n        while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar11 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar9 = *(int *)(puVar30 + 0x174fc8);\n        iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n        iVar8 = 0;\n        while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0) {\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }\n        iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n        iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n        puVar21 = puVar4;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }\n      }\nLAB_0028573c:\n      (**(code **)(puVar30 + 0x175450))(uVar15);\n      if (iVar11 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar30 + 0x17575c))(iVar11);\n      }\nLAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x17575c))(iVar19);\n      }\n      if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n      }\n      (**(code **)(puVar30 + 0x17575c))(puVar4);\n      if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }\nLAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }\n        goto LAB_00287858;\n      }\n      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n    }" else (compound_statement "{\n      uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n      iStack_10cc = 0x1000;\n      uStack_10d4 = 0;\n      uStack_10c8 = 0;\n      uStack_10e4 = 0;\n      cVar17 = '\0';\n      puStack_10dc = (undefined1 *)0x0;\n      iVar19 = 0;\n      iVar11 = 0;\n      iVar13 = *(int *)(puVar30 + 0x175020);\n      iVar22 = *(int *)(puVar30 + 0x1752b0);\n      iVar14 = *(int *)(puVar30 + 0x174fb8);\n      puVar21 = puVar4;\n      while( true ) {\n        while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar11 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar9 = *(int *)(puVar30 + 0x174fc8);\n        iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n        iVar8 = 0;\n        while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0) {\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }\n        iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n        iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n        puVar21 = puVar4;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }\n      }\nLAB_0028573c:\n      (**(code **)(puVar30 + 0x175450))(uVar15);\n      if (iVar11 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar30 + 0x17575c))(iVar11);\n      }\nLAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x17575c))(iVar19);\n      }\n      if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n      }\n      (**(code **)(puVar30 + 0x17575c))(puVar4);\n      if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }\nLAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }\n        goto LAB_00287858;\n      }\n      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n    }" { (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175bdc))();" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175bdc))()" identifier = (call_expression "(**(code **)(puVar30 + 0x175bdc))()" (parenthesized_expression "(**(code **)(puVar30 + 0x175bdc))" ( (pointer_expression "**(code **)(puVar30 + 0x175bdc)" * (pointer_expression "*(code **)(puVar30 + 0x175bdc)" * (cast_expression "(code **)(puVar30 + 0x175bdc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bdc)" ( (binary_expression "puVar30 + 0x175bdc" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (expression_statement "iStack_10cc = 0x1000;" (assignment_expression "iStack_10cc = 0x1000" identifier = number_literal) ;) (expression_statement "uStack_10d4 = 0;" (assignment_expression "uStack_10d4 = 0" identifier = number_literal) ;) (expression_statement "uStack_10c8 = 0;" (assignment_expression "uStack_10c8 = 0" identifier = number_literal) ;) (expression_statement "uStack_10e4 = 0;" (assignment_expression "uStack_10e4 = 0" identifier = number_literal) ;) (expression_statement "cVar17 = '\0';" (assignment_expression "cVar17 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "puStack_10dc = (undefined1 *)0x0;" (assignment_expression "puStack_10dc = (undefined1 *)0x0" identifier = (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iVar19 = 0;" (assignment_expression "iVar19 = 0" identifier = number_literal) ;) (expression_statement "iVar11 = 0;" (assignment_expression "iVar11 = 0" identifier = number_literal) ;) (expression_statement "iVar13 = *(int *)(puVar30 + 0x175020);" (assignment_expression "iVar13 = *(int *)(puVar30 + 0x175020)" identifier = (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) ))))) ;) (expression_statement "iVar22 = *(int *)(puVar30 + 0x1752b0);" (assignment_expression "iVar22 = *(int *)(puVar30 + 0x1752b0)" identifier = (pointer_expression "*(int *)(puVar30 + 0x1752b0)" * (cast_expression "(int *)(puVar30 + 0x1752b0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x1752b0)" ( (binary_expression "puVar30 + 0x1752b0" identifier + number_literal) ))))) ;) (expression_statement "iVar14 = *(int *)(puVar30 + 0x174fb8);" (assignment_expression "iVar14 = *(int *)(puVar30 + 0x174fb8)" identifier = (pointer_expression "*(int *)(puVar30 + 0x174fb8)" * (cast_expression "(int *)(puVar30 + 0x174fb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb8)" ( (binary_expression "puVar30 + 0x174fb8" identifier + number_literal) ))))) ;) (expression_statement "puVar21 = puVar4;" (assignment_expression "puVar21 = puVar4" identifier = identifier) ;) (while_statement "while( true ) {\n        while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar11 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar9 = *(int *)(puVar30 + 0x174fc8);\n        iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n        iVar8 = 0;\n        while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0) {\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }\n        iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n        iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n        puVar21 = puVar4;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }\n      }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n        while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar11 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar9 = *(int *)(puVar30 + 0x174fc8);\n        iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n        iVar8 = 0;\n        while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0) {\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }\n        iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n        iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n        puVar21 = puVar4;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }\n      }" { (while_statement "while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }" while (parenthesized_expression "((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10)))" ( (parenthesized_expression "(iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))" ( (comma_expression "iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10)" (assignment_expression "iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" identifier = (call_expression "(**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ed8))" ( (pointer_expression "**(code **)(puVar30 + 0x175ed8)" * (pointer_expression "*(code **)(puVar30 + 0x175ed8)" * (cast_expression "(code **)(puVar30 + 0x175ed8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175ed8)" ( (binary_expression "puVar30 + 0x175ed8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier )))) , (binary_expression "iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10)" (binary_expression "iVar8 != -1" identifier != number_literal) && (parenthesized_expression "(iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10)" ( (comma_expression "iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10" (assignment_expression "iVar9 = (int)puVar21 - (int)puVar4" identifier = (binary_expression "(int)puVar21 - (int)puVar4" (cast_expression "(int)puVar21" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)puVar4" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar8 != 10" identifier != number_literal)) )))) )) )) (compound_statement "{\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }" { (if_statement "if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }" if (parenthesized_expression "(iStack_10cc <= iVar9 + 1)" ( (binary_expression "iStack_10cc <= iVar9 + 1" identifier <= (binary_expression "iVar9 + 1" identifier + number_literal)) )) (compound_statement "{\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }" { (expression_statement "iStack_10cc = iStack_10cc * 2;" (assignment_expression "iStack_10cc = iStack_10cc * 2" identifier = (binary_expression "iStack_10cc * 2" identifier * number_literal)) ;) (expression_statement "puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);" (assignment_expression "puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)" identifier = (cast_expression "(undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175b08))" ( (pointer_expression "**(code **)(puVar30 + 0x175b08)" * (pointer_expression "*(code **)(puVar30 + 0x175b08)" * (cast_expression "(code **)(puVar30 + 0x175b08)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175b08)" ( (binary_expression "puVar30 + 0x175b08" identifier + number_literal) ))))) )) (argument_list "(puVar4,iStack_10cc + 2,1)" ( identifier , (binary_expression "iStack_10cc + 2" identifier + number_literal) , number_literal ))))) ;) (if_statement "if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;" if (parenthesized_expression "(puVar4 == (undefined1 *)0x0)" ( (binary_expression "puVar4 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_0028573c;" goto statement_identifier ;)) (expression_statement "puVar21 = puVar4 + iVar9;" (assignment_expression "puVar21 = puVar4 + iVar9" identifier = (binary_expression "puVar4 + iVar9" identifier + identifier)) ;) })) (expression_statement "*puVar21 = (char)iVar8;" (assignment_expression "*puVar21 = (char)iVar8" (pointer_expression "*puVar21" * identifier) = (cast_expression "(char)iVar8" ( (type_descriptor "char" primitive_type) ) identifier)) ;) (expression_statement "puVar21 = puVar21 + 1;" (assignment_expression "puVar21 = puVar21 + 1" identifier = (binary_expression "puVar21 + 1" identifier + number_literal)) ;) })) (if_statement "if ((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;" if (parenthesized_expression "((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))" ( (binary_expression "(puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)" (parenthesized_expression "(puVar4 == (undefined1 *)0x0)" ( (binary_expression "puVar4 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)" ( (comma_expression "iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0" (assignment_expression "iStack_10cc = ((int)puVar21 - (int)puVar4) + 1" identifier = (binary_expression "((int)puVar21 - (int)puVar4) + 1" (parenthesized_expression "((int)puVar21 - (int)puVar4)" ( (binary_expression "(int)puVar21 - (int)puVar4" (cast_expression "(int)puVar21" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)puVar4" ( (type_descriptor "int" primitive_type) ) identifier)) )) + number_literal)) , (binary_expression "(int)puVar21 - (int)puVar4 == 0" (binary_expression "(int)puVar21 - (int)puVar4" (cast_expression "(int)puVar21" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)puVar4" ( (type_descriptor "int" primitive_type) ) identifier)) == number_literal)) ))) )) (break_statement "break;" break ;)) (expression_statement "*puVar21 = 0;" (assignment_expression "*puVar21 = 0" (pointer_expression "*puVar21" * identifier) = number_literal) ;) (expression_statement "uStack_10ac = 0;" (assignment_expression "uStack_10ac = 0" identifier = number_literal) ;) (expression_statement "iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);" (assignment_expression "iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1)" identifier = (call_expression "(**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(iStack_10cc,1)" ( identifier , number_literal )))) ;) (if_statement "if (iVar11 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }" if (parenthesized_expression "(iVar11 == 0)" ( (binary_expression "iVar11 == 0" identifier == number_literal) )) (compound_statement "{\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }" { (expression_statement "(**(code **)(puVar30 + 0x175450))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x175450))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x175450))" ( (pointer_expression "**(code **)(puVar30 + 0x175450)" * (pointer_expression "*(code **)(puVar30 + 0x175450)" * (cast_expression "(code **)(puVar30 + 0x175450)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175450)" ( (binary_expression "puVar30 + 0x175450" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (goto_statement "goto LAB_002879d4;" goto statement_identifier ;) })) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1)" identifier = (call_expression "(**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(iStack_10cc,1)" ( identifier , number_literal )))) ;) (if_statement "if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }" { (expression_statement "(**(code **)(puVar30 + 0x175450))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x175450))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x175450))" ( (pointer_expression "**(code **)(puVar30 + 0x175450)" * (pointer_expression "*(code **)(puVar30 + 0x175450)" * (cast_expression "(code **)(puVar30 + 0x175450)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175450)" ( (binary_expression "puVar30 + 0x175450" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "iVar19 = 0;" (assignment_expression "iVar19 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_002879c4;" goto statement_identifier ;) })) (expression_statement "iVar9 = *(int *)(puVar30 + 0x174fc8);" (assignment_expression "iVar9 = *(int *)(puVar30 + 0x174fc8)" identifier = (pointer_expression "*(int *)(puVar30 + 0x174fc8)" * (cast_expression "(int *)(puVar30 + 0x174fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fc8)" ( (binary_expression "puVar30 + 0x174fc8" identifier + number_literal) ))))) ;) (expression_statement "iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;" (assignment_expression "iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8" identifier = (binary_expression "*(int *)(puVar30 + 0x174fb8) + -0x2d8" (pointer_expression "*(int *)(puVar30 + 0x174fb8)" * (cast_expression "(int *)(puVar30 + 0x174fb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb8)" ( (binary_expression "puVar30 + 0x174fb8" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "iVar8 = 0;" (assignment_expression "iVar8 = 0" identifier = number_literal) ;) (while_statement "while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0) {\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }" while (parenthesized_expression "(iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0)" ( (comma_expression "iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0" (assignment_expression "iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af)" identifier = (call_expression "(**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af)" (parenthesized_expression "(**(code **)(puVar30 + 0x175720))" ( (pointer_expression "**(code **)(puVar30 + 0x175720)" * (pointer_expression "*(code **)(puVar30 + 0x175720)" * (cast_expression "(code **)(puVar30 + 0x175720)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175720)" ( (binary_expression "puVar30 + 0x175720" identifier + number_literal) ))))) )) (argument_list "(uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af)" ( identifier , number_literal , identifier , identifier , identifier , identifier , (binary_expression "iVar9 + 0x2c44" identifier + number_literal) , (binary_expression "iVar13 + 0x7178" identifier + number_literal) , number_literal , (pointer_expression "&uStack_10b0" & identifier) , (pointer_expression "&uStack_10ac" & identifier) , (pointer_expression "&uStack_10af" & identifier) )))) , (binary_expression "iVar6 == 0" identifier == number_literal)) )) (compound_statement "{\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }" { (if_statement "if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }" { (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (expression_statement "iVar7 = *(int *)(puVar30 + 0x174fc8);" (assignment_expression "iVar7 = *(int *)(puVar30 + 0x174fc8)" identifier = (pointer_expression "*(int *)(puVar30 + 0x174fc8)" * (cast_expression "(int *)(puVar30 + 0x174fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fc8)" ( (binary_expression "puVar30 + 0x174fc8" identifier + number_literal) ))))) ;) (expression_statement "iVar28 = *(int *)(puVar30 + 0x174fb0);" (assignment_expression "iVar28 = *(int *)(puVar30 + 0x174fb0)" identifier = (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) ))))) ;) (expression_statement "iVar6 = 0;" (assignment_expression "iVar6 = 0" identifier = number_literal) ;) (labeled_statement "LAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );" statement_identifier : (do_statement "do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );" do (compound_statement "{\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            }" { (expression_statement "iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);" (assignment_expression "iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad)" identifier = (call_expression "(**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad)" (parenthesized_expression "(**(code **)(puVar30 + 0x175720))" ( (pointer_expression "**(code **)(puVar30 + 0x175720)" * (pointer_expression "*(code **)(puVar30 + 0x175720)" * (cast_expression "(code **)(puVar30 + 0x175720)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175720)" ( (binary_expression "puVar30 + 0x175720" identifier + number_literal) ))))) )) (argument_list "(uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad)" ( identifier , number_literal , identifier , identifier , identifier , identifier , (binary_expression "iVar7 + 0xabc" identifier + number_literal) , identifier , number_literal , (pointer_expression "&cStack_10ae" & identifier) , (pointer_expression "&iStack_10a8" & identifier) , (pointer_expression "&uStack_10ad" & identifier) )))) ;) (if_statement "if (iVar5 != 0) goto LAB_002850f4;" if (parenthesized_expression "(iVar5 != 0)" ( (binary_expression "iVar5 != 0" identifier != number_literal) )) (goto_statement "goto LAB_002850f4;" goto statement_identifier ;)) (if_statement "if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }" if (parenthesized_expression "(iVar6 == 1)" ( (binary_expression "iVar6 == 1" identifier == number_literal) )) (compound_statement "{\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }" { (expression_statement "uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);" (assignment_expression "uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a28))(iVar19,0,10)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a28))" ( (pointer_expression "**(code **)(puVar30 + 0x175a28)" * (pointer_expression "*(code **)(puVar30 + 0x175a28)" * (cast_expression "(code **)(puVar30 + 0x175a28)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a28)" ( (binary_expression "puVar30 + 0x175a28" identifier + number_literal) ))))) )) (argument_list "(iVar19,0,10)" ( identifier , number_literal , number_literal )))) ;) }) (else_clause "else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }" else (if_statement "if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }" if (parenthesized_expression "(iVar6 == 2)" ( (binary_expression "iVar6 == 2" identifier == number_literal) )) (compound_statement "{\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }" { (expression_statement "iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);" (assignment_expression "iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a20))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a20))" ( (pointer_expression "**(code **)(puVar30 + 0x175a20)" * (pointer_expression "*(code **)(puVar30 + 0x175a20)" * (cast_expression "(code **)(puVar30 + 0x175a20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a20)" ( (binary_expression "puVar30 + 0x175a20" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier )))) ;) (expression_statement "puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);" (assignment_expression "puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)" identifier = (cast_expression "(undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(iVar5 + 0x1000,1)" ( (binary_expression "iVar5 + 0x1000" identifier + number_literal) , number_literal ))))) ;) (if_statement "if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }" if (parenthesized_expression "(puStack_10dc != (undefined1 *)0x0)" ( (binary_expression "puStack_10dc != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }" { (expression_statement "(**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);" (call_expression "(**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x17595c))" ( (pointer_expression "**(code **)(puVar30 + 0x17595c)" * (pointer_expression "*(code **)(puVar30 + 0x17595c)" * (cast_expression "(code **)(puVar30 + 0x17595c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17595c)" ( (binary_expression "puVar30 + 0x17595c" identifier + number_literal) ))))) )) (argument_list "(puStack_10dc,iVar19)" ( identifier , identifier ))) ;) (expression_statement "iVar6 = 3;" (assignment_expression "iVar6 = 3" identifier = number_literal) ;) (goto_statement "goto LAB_00284ff4;" goto statement_identifier ;) })) }) (else_clause "else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }" else (if_statement "if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }" if (parenthesized_expression "(iVar6 == 0)" ( (binary_expression "iVar6 == 0" identifier == number_literal) )) (compound_statement "{\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }" { (expression_statement "iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);" (assignment_expression "iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890)" identifier = (call_expression "(**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890)" (parenthesized_expression "(**(code **)(puVar30 + 0x1753e4))" ( (pointer_expression "**(code **)(puVar30 + 0x1753e4)" * (pointer_expression "*(code **)(puVar30 + 0x1753e4)" * (cast_expression "(code **)(puVar30 + 0x1753e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1753e4)" ( (binary_expression "puVar30 + 0x1753e4" identifier + number_literal) ))))) )) (argument_list "(iVar19,iVar28 + 0x7890)" ( identifier , (binary_expression "iVar28 + 0x7890" identifier + number_literal) )))) ;) (if_statement "if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }" if (parenthesized_expression "(iVar5 == 0)" ( (binary_expression "iVar5 == 0" identifier == number_literal) )) (compound_statement "{\n                  cVar17 = -1;\n                }" { (expression_statement "cVar17 = -1;" (assignment_expression "cVar17 = -1" identifier = number_literal) ;) }) (else_clause "else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }" else (compound_statement "{\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }" { (expression_statement "cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);" (assignment_expression "cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10)" identifier = (call_expression "(**(code **)(puVar30 + 0x175c34))(iVar19,0,10)" (parenthesized_expression "(**(code **)(puVar30 + 0x175c34))" ( (pointer_expression "**(code **)(puVar30 + 0x175c34)" * (pointer_expression "*(code **)(puVar30 + 0x175c34)" * (cast_expression "(code **)(puVar30 + 0x175c34)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175c34)" ( (binary_expression "puVar30 + 0x175c34" identifier + number_literal) ))))) )) (argument_list "(iVar19,0,10)" ( identifier , number_literal , number_literal )))) ;) }))) })))))) (expression_statement "iVar6 = iVar6 + 1;" (assignment_expression "iVar6 = iVar6 + 1" identifier = (binary_expression "iVar6 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "( true )" ( true )) ;)) })) (if_statement "if (iVar8 != 1) goto LAB_002850f4;" if (parenthesized_expression "(iVar8 != 1)" ( (binary_expression "iVar8 != 1" identifier != number_literal) )) (goto_statement "goto LAB_002850f4;" goto statement_identifier ;)) (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (expression_statement "uVar12 = (**(code **)(puVar30 + 0x175a20))();" (assignment_expression "uVar12 = (**(code **)(puVar30 + 0x175a20))()" identifier = (call_expression "(**(code **)(puVar30 + 0x175a20))()" (parenthesized_expression "(**(code **)(puVar30 + 0x175a20))" ( (pointer_expression "**(code **)(puVar30 + 0x175a20)" * (pointer_expression "*(code **)(puVar30 + 0x175a20)" * (cast_expression "(code **)(puVar30 + 0x175a20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a20)" ( (binary_expression "puVar30 + 0x175a20" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (while_statement "while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }" while (parenthesized_expression "(iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0)" ( (comma_expression "iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0" (assignment_expression "iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" identifier = (call_expression "(**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" (parenthesized_expression "(**(code **)(puVar30 + 0x175720))" ( (pointer_expression "**(code **)(puVar30 + 0x175720)" * (pointer_expression "*(code **)(puVar30 + 0x175720)" * (cast_expression "(code **)(puVar30 + 0x175720)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175720)" ( (binary_expression "puVar30 + 0x175720" identifier + number_literal) ))))) )) (argument_list "(uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" ( identifier , number_literal , identifier , identifier , identifier , identifier , (binary_expression "iVar14 + -0x3bc" identifier + number_literal) , identifier , number_literal , (pointer_expression "&cStack_10ae" & identifier) , (pointer_expression "&iStack_10a8" & identifier) , (pointer_expression "&uStack_10ad" & identifier) )))) , (binary_expression "iVar6 == 0" identifier == number_literal)) )) (compound_statement "{\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }" { (if_statement "if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }" if (parenthesized_expression "((cStack_10ae != '\0') && (0 < iStack_10a8))" ( (binary_expression "(cStack_10ae != '\0') && (0 < iStack_10a8)" (parenthesized_expression "(cStack_10ae != '\0')" ( (binary_expression "cStack_10ae != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(0 < iStack_10a8)" ( (binary_expression "0 < iStack_10a8" number_literal < identifier) ))) )) (compound_statement "{\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }" { (expression_statement "iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);" (assignment_expression "iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1)" identifier = (call_expression "(*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1)" (parenthesized_expression "(*(code *)(iVar22 + 0x458c))" ( (pointer_expression "*(code *)(iVar22 + 0x458c)" * (cast_expression "(code *)(iVar22 + 0x458c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar22 + 0x458c)" ( (binary_expression "iVar22 + 0x458c" identifier + number_literal) )))) )) (argument_list "(iVar11 + iStack_10a8 + -1)" ( (binary_expression "iVar11 + iStack_10a8 + -1" (binary_expression "iVar11 + iStack_10a8" identifier + identifier) + number_literal) )))) ;) (if_statement "if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }" if (parenthesized_expression "((int)uVar12 < iVar6)" ( (binary_expression "(int)uVar12 < iVar6" (cast_expression "(int)uVar12" ( (type_descriptor "int" primitive_type) ) identifier) < identifier) )) (compound_statement "{\n                uVar12 = 0;\n              }" { (expression_statement "uVar12 = 0;" (assignment_expression "uVar12 = 0" identifier = number_literal) ;) }) (else_clause "else {\n                uVar12 = uVar12 - iVar6;\n              }" else (compound_statement "{\n                uVar12 = uVar12 - iVar6;\n              }" { (expression_statement "uVar12 = uVar12 - iVar6;" (assignment_expression "uVar12 = uVar12 - iVar6" identifier = (binary_expression "uVar12 - iVar6" identifier - identifier)) ;) }))) })) })) (if_statement "if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }" if (parenthesized_expression "(cVar17 == -1)" ( (binary_expression "cVar17 == -1" identifier == number_literal) )) (compound_statement "{\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }" { (if_statement "if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }" if (parenthesized_expression "(0 < (int)uStack_10c8)" ( (binary_expression "0 < (int)uStack_10c8" number_literal < (cast_expression "(int)uStack_10c8" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }" { (expression_statement "iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);" (assignment_expression "iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a04))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a04))" ( (pointer_expression "**(code **)(puVar30 + 0x175a04)" * (pointer_expression "*(code **)(puVar30 + 0x175a04)" * (cast_expression "(code **)(puVar30 + 0x175a04)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a04)" ( (binary_expression "puVar30 + 0x175a04" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }" if (parenthesized_expression "(iVar6 < 0)" ( (binary_expression "iVar6 < 0" identifier < number_literal) )) (compound_statement "{\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }" { (expression_statement "(**(code **)(puVar30 + 0x17575c))(puVar4);" (call_expression "(**(code **)(puVar30 + 0x17575c))(puVar4)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(puVar4)" ( identifier ))) ;) (goto_statement "goto LAB_0028544c;" goto statement_identifier ;) })) (expression_statement "iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);" (assignment_expression "iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a10))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a10))" ( (pointer_expression "**(code **)(puVar30 + 0x175a10)" * (pointer_expression "*(code **)(puVar30 + 0x175a10)" * (cast_expression "(code **)(puVar30 + 0x175a10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a10)" ( (binary_expression "puVar30 + 0x175a10" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }" if (parenthesized_expression "(iVar6 < 0)" ( (binary_expression "iVar6 < 0" identifier < number_literal) )) (compound_statement "{\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }" { (expression_statement "(**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);" (call_expression "(**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(puVar4,uStack_10d4 - uStack_10c8)" ( identifier , (binary_expression "uStack_10d4 - uStack_10c8" identifier - identifier) ))) ;) (goto_statement "goto LAB_0028544c;" goto statement_identifier ;) })) (expression_statement "(**(code **)(puVar30 + 0x1759bc))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x1759bc))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759bc))" ( (pointer_expression "**(code **)(puVar30 + 0x1759bc)" * (pointer_expression "*(code **)(puVar30 + 0x1759bc)" * (cast_expression "(code **)(puVar30 + 0x1759bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1759bc)" ( (binary_expression "puVar30 + 0x1759bc" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);" (assignment_expression "iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a10))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a10))" ( (pointer_expression "**(code **)(puVar30 + 0x175a10)" * (pointer_expression "*(code **)(puVar30 + 0x175a10)" * (cast_expression "(code **)(puVar30 + 0x175a10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a10)" ( (binary_expression "puVar30 + 0x175a10" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }" if (parenthesized_expression "(iVar6 < 0)" ( (binary_expression "iVar6 < 0" identifier < number_literal) )) (compound_statement "{\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }" { (expression_statement "(**(code **)(puVar30 + 0x17575c))(puVar4);" (call_expression "(**(code **)(puVar30 + 0x17575c))(puVar4)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(puVar4)" ( identifier ))) ;) (goto_statement "goto LAB_0028544c;" goto statement_identifier ;) })) (expression_statement "uStack_10c8 = 0;" (assignment_expression "uStack_10c8 = 0" identifier = number_literal) ;) })) (if_statement "if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }" if (parenthesized_expression "((uStack_10d4 & 1) != 0)" ( (binary_expression "(uStack_10d4 & 1) != 0" (parenthesized_expression "(uStack_10d4 & 1)" ( (binary_expression "uStack_10d4 & 1" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }" { (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0)" ( identifier , number_literal ))) ;) (expression_statement "uStack_10d4 = uStack_10d4 + 1;" (assignment_expression "uStack_10d4 = uStack_10d4 + 1" identifier = (binary_expression "uStack_10d4 + 1" identifier + number_literal)) ;) })) (expression_statement "(**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);" (call_expression "(**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890)" (parenthesized_expression "(**(code **)(puVar30 + 0x175c90))" ( (pointer_expression "**(code **)(puVar30 + 0x175c90)" * (pointer_expression "*(code **)(puVar30 + 0x175c90)" * (cast_expression "(code **)(puVar30 + 0x175c90)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175c90)" ( (binary_expression "puVar30 + 0x175c90" identifier + number_literal) ))))) )) (argument_list "(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x7890" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);" (call_expression "(**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff)" (parenthesized_expression "(**(code **)(puVar30 + 0x175970))" ( (pointer_expression "**(code **)(puVar30 + 0x175970)" * (pointer_expression "*(code **)(puVar30 + 0x175970)" * (cast_expression "(code **)(puVar30 + 0x175970)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175970)" ( (binary_expression "puVar30 + 0x175970" identifier + number_literal) ))))) )) (argument_list "(iVar3,uStack_10e4 & 0xffff)" ( identifier , (binary_expression "uStack_10e4 & 0xffff" identifier & number_literal) ))) ;) (if_statement "if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }" if (parenthesized_expression "(puStack_10dc == (undefined1 *)0x0)" ( (binary_expression "puStack_10dc == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }" { (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0)" ( identifier , number_literal ))) ;) (expression_statement "iVar6 = uStack_10d4 + 7;" (assignment_expression "iVar6 = uStack_10d4 + 7" identifier = (binary_expression "uStack_10d4 + 7" identifier + number_literal)) ;) (labeled_statement "LAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);" statement_identifier : (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0)" ( identifier , number_literal ))) ;)) (expression_statement "iVar6 = iVar6 + 1;" (assignment_expression "iVar6 = iVar6 + 1" identifier = (binary_expression "iVar6 + 1" identifier + number_literal)) ;) }) (else_clause "else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }" else (compound_statement "{\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }" { (expression_statement "bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);" (assignment_expression "bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a20))(puStack_10dc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a20))" ( (pointer_expression "**(code **)(puVar30 + 0x175a20)" * (pointer_expression "*(code **)(puVar30 + 0x175a20)" * (cast_expression "(code **)(puVar30 + 0x175a20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a20)" ( (binary_expression "puVar30 + 0x175a20" identifier + number_literal) ))))) )) (argument_list "(puStack_10dc)" ( identifier )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,bVar18)" ( identifier , identifier ))) ;) (expression_statement "uVar29 = (uint)bVar18;" (assignment_expression "uVar29 = (uint)bVar18" identifier = (cast_expression "(uint)bVar18" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }" if (parenthesized_expression "(uVar29 != 0)" ( (binary_expression "uVar29 != 0" identifier != number_literal) )) (compound_statement "{\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }" { (expression_statement "puVar21 = puStack_10dc;" (assignment_expression "puVar21 = puStack_10dc" identifier = identifier) ;) (do_statement "do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);" do (compound_statement "{\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                }" { (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,*puVar21)" ( identifier , (pointer_expression "*puVar21" * identifier) ))) ;) (expression_statement "puVar21 = puVar21 + 1;" (assignment_expression "puVar21 = puVar21 + 1" identifier = (binary_expression "puVar21 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(puVar21 != puStack_10dc + uVar29)" ( (binary_expression "puVar21 != puStack_10dc + uVar29" identifier != (binary_expression "puStack_10dc + uVar29" identifier + identifier)) )) ;) })) (expression_statement "iVar6 = uStack_10d4 + 7 + uVar29;" (assignment_expression "iVar6 = uStack_10d4 + 7 + uVar29" identifier = (binary_expression "uStack_10d4 + 7 + uVar29" (binary_expression "uStack_10d4 + 7" identifier + number_literal) + identifier)) ;) (if_statement "if ((bVar18 & 1) == 0) goto LAB_00287988;" if (parenthesized_expression "((bVar18 & 1) == 0)" ( (binary_expression "(bVar18 & 1) == 0" (parenthesized_expression "(bVar18 & 1)" ( (binary_expression "bVar18 & 1" identifier & number_literal) )) == number_literal) )) (goto_statement "goto LAB_00287988;" goto statement_identifier ;)) }))) (if_statement "if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }" if (parenthesized_expression "(uStack_10e4 == 0x404)" ( (binary_expression "uStack_10e4 == 0x404" identifier == number_literal) )) (compound_statement "{\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }" { (expression_statement "iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);" (assignment_expression "iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a04))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a04))" ( (pointer_expression "**(code **)(puVar30 + 0x175a04)" * (pointer_expression "*(code **)(puVar30 + 0x175a04)" * (cast_expression "(code **)(puVar30 + 0x175a04)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a04)" ( (binary_expression "puVar30 + 0x175a04" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if (iVar7 < 0) goto LAB_0028544c;" if (parenthesized_expression "(iVar7 < 0)" ( (binary_expression "iVar7 < 0" identifier < number_literal) )) (goto_statement "goto LAB_0028544c;" goto statement_identifier ;)) (expression_statement "(**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);" (call_expression "(**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759bc))" ( (pointer_expression "**(code **)(puVar30 + 0x1759bc)" * (pointer_expression "*(code **)(puVar30 + 0x1759bc)" * (cast_expression "(code **)(puVar30 + 0x1759bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1759bc)" ( (binary_expression "puVar30 + 0x1759bc" identifier + number_literal) ))))) )) (argument_list "(iVar3,0xffffffff)" ( identifier , number_literal ))) ;) (expression_statement "uStack_10d4 = iVar6 + 4;" (assignment_expression "uStack_10d4 = iVar6 + 4" identifier = (binary_expression "iVar6 + 4" identifier + number_literal)) ;) (expression_statement "uStack_10c8 = uStack_10d4;" (assignment_expression "uStack_10c8 = uStack_10d4" identifier = identifier) ;) }) (else_clause "else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }" else (compound_statement "{\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }" { (expression_statement "(**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);" (call_expression "(**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759bc))" ( (pointer_expression "**(code **)(puVar30 + 0x1759bc)" * (pointer_expression "*(code **)(puVar30 + 0x1759bc)" * (cast_expression "(code **)(puVar30 + 0x1759bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1759bc)" ( (binary_expression "puVar30 + 0x1759bc" identifier + number_literal) ))))) )) (argument_list "(iVar3,uVar12)" ( identifier , identifier ))) ;) (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (expression_statement "uStack_10d4 = uVar12 + iVar6 + 4;" (assignment_expression "uStack_10d4 = uVar12 + iVar6 + 4" identifier = (binary_expression "uVar12 + iVar6 + 4" (binary_expression "uVar12 + iVar6" identifier + identifier) + number_literal)) ;) (expression_statement "iVar6 = uVar12 - 1;" (assignment_expression "iVar6 = uVar12 - 1" identifier = (binary_expression "uVar12 - 1" identifier - number_literal)) ;) (if_statement "if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }" if (parenthesized_expression "(0 < (int)uVar12)" ( (binary_expression "0 < (int)uVar12" number_literal < (cast_expression "(int)uVar12" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }" { (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (do_statement "do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);" do (compound_statement "{\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                }" { (expression_statement "puVar21 = (undefined1 *)(iVar11 + iStack_10a8);" (assignment_expression "puVar21 = (undefined1 *)(iVar11 + iStack_10a8)" identifier = (cast_expression "(undefined1 *)(iVar11 + iStack_10a8)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar11 + iStack_10a8)" ( (binary_expression "iVar11 + iStack_10a8" identifier + identifier) )))) ;) (expression_statement "iStack_10a8 = iStack_10a8 + 1;" (assignment_expression "iStack_10a8 = iStack_10a8 + 1" identifier = (binary_expression "iStack_10a8 + 1" identifier + number_literal)) ;) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,*puVar21)" ( identifier , (pointer_expression "*puVar21" * identifier) ))) ;) (expression_statement "iVar6 = iVar6 + -1;" (assignment_expression "iVar6 = iVar6 + -1" identifier = (binary_expression "iVar6 + -1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar6 != -1)" ( (binary_expression "iVar6 != -1" identifier != number_literal) )) ;) })) (if_statement "if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }" if (parenthesized_expression "((uStack_10d4 & 1) != 0)" ( (binary_expression "(uStack_10d4 & 1) != 0" (parenthesized_expression "(uStack_10d4 & 1)" ( (binary_expression "uStack_10d4 & 1" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }" { (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0)" ( identifier , number_literal ))) ;) (expression_statement "uStack_10d4 = uStack_10d4 + 1;" (assignment_expression "uStack_10d4 = uStack_10d4 + 1" identifier = (binary_expression "uStack_10d4 + 1" identifier + number_literal)) ;) })) }))) (labeled_statement "LAB_002850f4:\n            iVar8 = iVar8 + 1;" statement_identifier : (expression_statement "iVar8 = iVar8 + 1;" (assignment_expression "iVar8 = iVar8 + 1" identifier = (binary_expression "iVar8 + 1" identifier + number_literal)) ;)) }) (else_clause "else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }" else (compound_statement "{\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }" { (if_statement "if (0x7fff < (int)uVar12) goto LAB_002850f4;" if (parenthesized_expression "(0x7fff < (int)uVar12)" ( (binary_expression "0x7fff < (int)uVar12" number_literal < (cast_expression "(int)uVar12" ( (type_descriptor "int" primitive_type) ) identifier)) )) (goto_statement "goto LAB_002850f4;" goto statement_identifier ;)) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0x1c)" ( identifier , number_literal ))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,cVar17)" ( identifier , identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,uStack_10e4 & 0xff)" ( identifier , (binary_expression "uStack_10e4 & 0xff" identifier & number_literal) ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);" (call_expression "(**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff)" (parenthesized_expression "(**(code **)(puVar30 + 0x175970))" ( (pointer_expression "**(code **)(puVar30 + 0x175970)" * (pointer_expression "*(code **)(puVar30 + 0x175970)" * (cast_expression "(code **)(puVar30 + 0x175970)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175970)" ( (binary_expression "puVar30 + 0x175970" identifier + number_literal) ))))) )) (argument_list "(iVar3,uVar12 & 0xffff)" ( identifier , (binary_expression "uVar12 & 0xffff" identifier & number_literal) ))) ;) (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (expression_statement "uStack_10d4 = uVar12 + uStack_10d4 + 5;" (assignment_expression "uStack_10d4 = uVar12 + uStack_10d4 + 5" identifier = (binary_expression "uVar12 + uStack_10d4 + 5" (binary_expression "uVar12 + uStack_10d4" identifier + identifier) + number_literal)) ;) (expression_statement "iVar6 = uVar12 - 1;" (assignment_expression "iVar6 = uVar12 - 1" identifier = (binary_expression "uVar12 - 1" identifier - number_literal)) ;) (if_statement "if ((int)uVar12 < 1) goto LAB_002850f4;" if (parenthesized_expression "((int)uVar12 < 1)" ( (binary_expression "(int)uVar12 < 1" (cast_expression "(int)uVar12" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (goto_statement "goto LAB_002850f4;" goto statement_identifier ;)) (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (do_statement "do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);" do (compound_statement "{\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            }" { (expression_statement "puVar21 = (undefined1 *)(iVar11 + iStack_10a8);" (assignment_expression "puVar21 = (undefined1 *)(iVar11 + iStack_10a8)" identifier = (cast_expression "(undefined1 *)(iVar11 + iStack_10a8)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar11 + iStack_10a8)" ( (binary_expression "iVar11 + iStack_10a8" identifier + identifier) )))) ;) (expression_statement "iStack_10a8 = iStack_10a8 + 1;" (assignment_expression "iStack_10a8 = iStack_10a8 + 1" identifier = (binary_expression "iStack_10a8 + 1" identifier + number_literal)) ;) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,*puVar21)" ( identifier , (pointer_expression "*puVar21" * identifier) ))) ;) (expression_statement "iVar6 = iVar6 + -1;" (assignment_expression "iVar6 = iVar6 + -1" identifier = (binary_expression "iVar6 + -1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar6 != -1)" ( (binary_expression "iVar6 != -1" identifier != number_literal) )) ;) (expression_statement "iVar8 = 2;" (assignment_expression "iVar8 = 2" identifier = number_literal) ;) }))) })) (expression_statement "iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);" (assignment_expression "iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11)" identifier = (call_expression "(**(code **)(puVar30 + 0x17575c))(iVar11)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(iVar11)" ( identifier )))) ;) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19)" identifier = (call_expression "(**(code **)(puVar30 + 0x17575c))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier )))) ;) (expression_statement "puVar21 = puVar4;" (assignment_expression "puVar21 = puVar4" identifier = identifier) ;) (if_statement "if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }" if (parenthesized_expression "(puStack_10dc != (undefined1 *)0x0)" ( (binary_expression "puStack_10dc != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }" { (expression_statement "puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);" (assignment_expression "puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc)" identifier = (cast_expression "(undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar30 + 0x17575c))(puStack_10dc)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(puStack_10dc)" ( identifier ))))) ;) })) })) (labeled_statement "LAB_0028573c:\n      (**(code **)(puVar30 + 0x175450))(uVar15);" statement_identifier : (expression_statement "(**(code **)(puVar30 + 0x175450))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x175450))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x175450))" ( (pointer_expression "**(code **)(puVar30 + 0x175450)" * (pointer_expression "*(code **)(puVar30 + 0x175450)" * (cast_expression "(code **)(puVar30 + 0x175450)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175450)" ( (binary_expression "puVar30 + 0x175450" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;)) (if_statement "if (iVar11 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar30 + 0x17575c))(iVar11);\n      }" if (parenthesized_expression "(iVar11 != 0)" ( (binary_expression "iVar11 != 0" identifier != number_literal) )) (compound_statement "{\nLAB_002879c4:\n        (**(code **)(puVar30 + 0x17575c))(iVar11);\n      }" { (labeled_statement "LAB_002879c4:\n        (**(code **)(puVar30 + 0x17575c))(iVar11);" statement_identifier : (expression_statement "(**(code **)(puVar30 + 0x17575c))(iVar11);" (call_expression "(**(code **)(puVar30 + 0x17575c))(iVar11)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(iVar11)" ( identifier ))) ;)) })) (labeled_statement "LAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x17575c))(iVar19);\n      }" statement_identifier : (if_statement "if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x17575c))(iVar19);\n      }" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (compound_statement "{\n        (**(code **)(puVar30 + 0x17575c))(iVar19);\n      }" { (expression_statement "(**(code **)(puVar30 + 0x17575c))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x17575c))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;) }))) (if_statement "if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n      }" if (parenthesized_expression "(puStack_10dc != (undefined1 *)0x0)" ( (binary_expression "puStack_10dc != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        (**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n      }" { (expression_statement "(**(code **)(puVar30 + 0x17575c))(puStack_10dc);" (call_expression "(**(code **)(puVar30 + 0x17575c))(puStack_10dc)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(puStack_10dc)" ( identifier ))) ;) })) (expression_statement "(**(code **)(puVar30 + 0x17575c))(puVar4);" (call_expression "(**(code **)(puVar30 + 0x17575c))(puVar4)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(puVar4)" ( identifier ))) ;) (if_statement "if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }" if (parenthesized_expression "(0 < (int)uStack_10c8)" ( (binary_expression "0 < (int)uStack_10c8" number_literal < (cast_expression "(int)uStack_10c8" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n        iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }" { (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a04))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a04))" ( (pointer_expression "**(code **)(puVar30 + 0x175a04)" * (pointer_expression "*(code **)(puVar30 + 0x175a04)" * (cast_expression "(code **)(puVar30 + 0x175a04)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a04)" ( (binary_expression "puVar30 + 0x175a04" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }" if (parenthesized_expression "((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19))" ( (binary_expression "(-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)" (parenthesized_expression "(-1 < iVar19)" ( (binary_expression "-1 < iVar19" number_literal < identifier) )) && (parenthesized_expression "(iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)" ( (comma_expression "iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a10))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a10))" ( (pointer_expression "**(code **)(puVar30 + 0x175a10)" * (pointer_expression "*(code **)(puVar30 + 0x175a10)" * (cast_expression "(code **)(puVar30 + 0x175a10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a10)" ( (binary_expression "puVar30 + 0x175a10" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) , (binary_expression "-1 < iVar19" number_literal < identifier)) ))) )) (compound_statement "{\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }" { (expression_statement "(**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);" (call_expression "(**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759bc))" ( (pointer_expression "**(code **)(puVar30 + 0x1759bc)" * (pointer_expression "*(code **)(puVar30 + 0x1759bc)" * (cast_expression "(code **)(puVar30 + 0x1759bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1759bc)" ( (binary_expression "puVar30 + 0x1759bc" identifier + number_literal) ))))) )) (argument_list "(iVar3,uStack_10d4 - uStack_10c8)" ( identifier , (binary_expression "uStack_10d4 - uStack_10c8" identifier - identifier) ))) ;) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a10))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a10))" ( (pointer_expression "**(code **)(puVar30 + 0x175a10)" * (pointer_expression "*(code **)(puVar30 + 0x175a10)" * (cast_expression "(code **)(puVar30 + 0x175a10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a10)" ( (binary_expression "puVar30 + 0x175a10" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if (-1 < iVar19) goto LAB_00287ab4;" if (parenthesized_expression "(-1 < iVar19)" ( (binary_expression "-1 < iVar19" number_literal < identifier) )) (goto_statement "goto LAB_00287ab4;" goto statement_identifier ;)) })) (goto_statement "goto LAB_0028544c;" goto statement_identifier ;) })) (labeled_statement "LAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }\n        goto LAB_00287858;\n      }" statement_identifier : (if_statement "if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }\n        goto LAB_00287858;\n      }" if (parenthesized_expression "(uStack_10d4 == 0)" ( (binary_expression "uStack_10d4 == 0" identifier == number_literal) )) (compound_statement "{\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }\n        goto LAB_00287858;\n      }" { (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb4) + 0x1854" (pointer_expression "*(int *)(puVar30 + 0x174fb4)" * (cast_expression "(int *)(puVar30 + 0x174fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb4)" ( (binary_expression "puVar30 + 0x174fb4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) }))) (if_statement "if ((uStack_10d4 & 1) == 0) goto LAB_00286050;" if (parenthesized_expression "((uStack_10d4 & 1) == 0)" ( (binary_expression "(uStack_10d4 & 1) == 0" (parenthesized_expression "(uStack_10d4 & 1)" ( (binary_expression "uStack_10d4 & 1" identifier & number_literal) )) == number_literal) )) (goto_statement "goto LAB_00286050;" goto statement_identifier ;)) }))) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0)" ( identifier , number_literal ))) ;) (goto_statement "goto LAB_00286050;" goto statement_identifier ;) })) (expression_statement "uStack_10d4 = 1;" (assignment_expression "uStack_10d4 = 1" identifier = number_literal) ;) (goto_statement "goto LAB_00284a7c;" goto statement_identifier ;) (labeled_statement "LAB_00286038:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);" statement_identifier : (expression_statement "(**(code **)(puVar30 + 0x1756a8))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;)) (expression_statement "uStack_10d4 = 1;" (assignment_expression "uStack_10d4 = 1" identifier = number_literal) ;) (goto_statement "goto LAB_00286050;" goto statement_identifier ;) (labeled_statement "LAB_00285f24:\n  (**(code **)(puVar30 + 0x175450))(uVar15);" statement_identifier : (expression_statement "(**(code **)(puVar30 + 0x175450))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x175450))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x175450))" ( (pointer_expression "**(code **)(puVar30 + 0x175450)" * (pointer_expression "*(code **)(puVar30 + 0x175450)" * (cast_expression "(code **)(puVar30 + 0x175450)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175450)" ( (binary_expression "puVar30 + 0x175450" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;)) (if_statement "if (iVar11 != 0) {\nLAB_00287be8:\n    (**(code **)(puVar30 + 0x17575c))(iVar11);\n  }" if (parenthesized_expression "(iVar11 != 0)" ( (binary_expression "iVar11 != 0" identifier != number_literal) )) (compound_statement "{\nLAB_00287be8:\n    (**(code **)(puVar30 + 0x17575c))(iVar11);\n  }" { (labeled_statement "LAB_00287be8:\n    (**(code **)(puVar30 + 0x17575c))(iVar11);" statement_identifier : (expression_statement "(**(code **)(puVar30 + 0x17575c))(iVar11);" (call_expression "(**(code **)(puVar30 + 0x17575c))(iVar11)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(iVar11)" ( identifier ))) ;)) })) (labeled_statement "LAB_00287bf8:\n  if (iVar19 != 0) {\n    (**(code **)(puVar30 + 0x17575c))(iVar19);\n  }" statement_identifier : (if_statement "if (iVar19 != 0) {\n    (**(code **)(puVar30 + 0x17575c))(iVar19);\n  }" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (compound_statement "{\n    (**(code **)(puVar30 + 0x17575c))(iVar19);\n  }" { (expression_statement "(**(code **)(puVar30 + 0x17575c))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x17575c))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;) }))) (if_statement "if (puStack_10ec != (undefined1 *)0x0) {\n    (**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n  }" if (parenthesized_expression "(puStack_10ec != (undefined1 *)0x0)" ( (binary_expression "puStack_10ec != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    (**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n  }" { (expression_statement "(**(code **)(puVar30 + 0x17575c))(puStack_10ec);" (call_expression "(**(code **)(puVar30 + 0x17575c))(puStack_10ec)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(puStack_10ec)" ( identifier ))) ;) })) (expression_statement "(**(code **)(puVar30 + 0x17575c))(puVar4);" (call_expression "(**(code **)(puVar30 + 0x17575c))(puVar4)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(puVar4)" ( identifier ))) ;) (if_statement "if ((int)uStack_10c8 < 1) {\nLAB_00287cd8:\n    if (uStack_10d4 == 0) {\n      uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n      (**(code **)(puVar30 + 0x1756a8))(uVar15);\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,\n                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n  }\n  else {\n    iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n    if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n      (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n      iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n      if (-1 < iVar19) goto LAB_00287cd8;\n    }\nLAB_00287db0:\n    uStack_10d4 = 0xffffffff;\n  }" if (parenthesized_expression "((int)uStack_10c8 < 1)" ( (binary_expression "(int)uStack_10c8 < 1" (cast_expression "(int)uStack_10c8" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\nLAB_00287cd8:\n    if (uStack_10d4 == 0) {\n      uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n      (**(code **)(puVar30 + 0x1756a8))(uVar15);\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,\n                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n  }" { (labeled_statement "LAB_00287cd8:\n    if (uStack_10d4 == 0) {\n      uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n      (**(code **)(puVar30 + 0x1756a8))(uVar15);\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,\n                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }" statement_identifier : (if_statement "if (uStack_10d4 == 0) {\n      uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n      (**(code **)(puVar30 + 0x1756a8))(uVar15);\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,\n                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }" if (parenthesized_expression "(uStack_10d4 == 0)" ( (binary_expression "uStack_10d4 == 0" identifier == number_literal) )) (compound_statement "{\n      uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n      (**(code **)(puVar30 + 0x1756a8))(uVar15);\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,\n                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }" { (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,\n                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,\n                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,\n                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb4) + 0x1854" (pointer_expression "*(int *)(puVar30 + 0x174fb4)" * (cast_expression "(int *)(puVar30 + 0x174fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb4)" ( (binary_expression "puVar30 + 0x174fb4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) }))) (if_statement "if ((uStack_10d4 & 1) == 0) goto LAB_00286050;" if (parenthesized_expression "((uStack_10d4 & 1) == 0)" ( (binary_expression "(uStack_10d4 & 1) == 0" (parenthesized_expression "(uStack_10d4 & 1)" ( (binary_expression "uStack_10d4 & 1" identifier & number_literal) )) == number_literal) )) (goto_statement "goto LAB_00286050;" goto statement_identifier ;)) }) (else_clause "else {\n    iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n    if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n      (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n      iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n      if (-1 < iVar19) goto LAB_00287cd8;\n    }\nLAB_00287db0:\n    uStack_10d4 = 0xffffffff;\n  }" else (compound_statement "{\n    iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n    if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n      (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n      iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n      if (-1 < iVar19) goto LAB_00287cd8;\n    }\nLAB_00287db0:\n    uStack_10d4 = 0xffffffff;\n  }" { (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a04))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a04))" ( (pointer_expression "**(code **)(puVar30 + 0x175a04)" * (pointer_expression "*(code **)(puVar30 + 0x175a04)" * (cast_expression "(code **)(puVar30 + 0x175a04)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a04)" ( (binary_expression "puVar30 + 0x175a04" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n      (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n      iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n      if (-1 < iVar19) goto LAB_00287cd8;\n    }" if (parenthesized_expression "((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19))" ( (binary_expression "(-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)" (parenthesized_expression "(-1 < iVar19)" ( (binary_expression "-1 < iVar19" number_literal < identifier) )) && (parenthesized_expression "(iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)" ( (comma_expression "iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a10))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a10))" ( (pointer_expression "**(code **)(puVar30 + 0x175a10)" * (pointer_expression "*(code **)(puVar30 + 0x175a10)" * (cast_expression "(code **)(puVar30 + 0x175a10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a10)" ( (binary_expression "puVar30 + 0x175a10" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) , (binary_expression "-1 < iVar19" number_literal < identifier)) ))) )) (compound_statement "{\n      (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n      iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n      if (-1 < iVar19) goto LAB_00287cd8;\n    }" { (expression_statement "(**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);" (call_expression "(**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759bc))" ( (pointer_expression "**(code **)(puVar30 + 0x1759bc)" * (pointer_expression "*(code **)(puVar30 + 0x1759bc)" * (cast_expression "(code **)(puVar30 + 0x1759bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1759bc)" ( (binary_expression "puVar30 + 0x1759bc" identifier + number_literal) ))))) )) (argument_list "(iVar3,uStack_10d4 - uStack_10c8)" ( identifier , (binary_expression "uStack_10d4 - uStack_10c8" identifier - identifier) ))) ;) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a10))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a10))" ( (pointer_expression "**(code **)(puVar30 + 0x175a10)" * (pointer_expression "*(code **)(puVar30 + 0x175a10)" * (cast_expression "(code **)(puVar30 + 0x175a10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a10)" ( (binary_expression "puVar30 + 0x175a10" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if (-1 < iVar19) goto LAB_00287cd8;" if (parenthesized_expression "(-1 < iVar19)" ( (binary_expression "-1 < iVar19" number_literal < identifier) )) (goto_statement "goto LAB_00287cd8;" goto statement_identifier ;)) })) (labeled_statement "LAB_00287db0:\n    uStack_10d4 = 0xffffffff;" statement_identifier : (expression_statement "uStack_10d4 = 0xffffffff;" (assignment_expression "uStack_10d4 = 0xffffffff" identifier = number_literal) ;)) }))) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0)" ( identifier , number_literal ))) ;) (labeled_statement "LAB_00286050:\n  uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);" statement_identifier : (expression_statement "uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x1754cc))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x1754cc))" ( (pointer_expression "**(code **)(puVar30 + 0x1754cc)" * (pointer_expression "*(code **)(puVar30 + 0x1754cc)" * (cast_expression "(code **)(puVar30 + 0x1754cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1754cc)" ( (binary_expression "puVar30 + 0x1754cc" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;)) (expression_statement "(**(code **)(puVar30 + 0x175ba0))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175ba0))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ba0))" ( (pointer_expression "**(code **)(puVar30 + 0x175ba0)" * (pointer_expression "*(code **)(puVar30 + 0x175ba0)" * (cast_expression "(code **)(puVar30 + 0x175ba0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175ba0)" ( (binary_expression "puVar30 + 0x175ba0" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1)" identifier = (call_expression "(**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175dac))" ( (pointer_expression "**(code **)(puVar30 + 0x175dac)" * (pointer_expression "*(code **)(puVar30 + 0x175dac)" * (cast_expression "(code **)(puVar30 + 0x175dac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175dac)" ( (binary_expression "puVar30 + 0x175dac" identifier + number_literal) ))))) )) (argument_list "(uVar15,extraout_v1)" ( identifier , identifier )))) ;) (if_statement "if (iVar19 == 0) {\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4ee,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }\n    goto LAB_00287858;\n  }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4ee,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }\n    goto LAB_00287858;\n  }" { (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4ee,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4ee,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4ee,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "iVar13 = (**(code **)(puVar30 + 0x175d80))\n                     (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f8,iVar19,param_2);" (assignment_expression "iVar13 = (**(code **)(puVar30 + 0x175d80))\n                     (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f8,iVar19,param_2)" identifier = (call_expression "(**(code **)(puVar30 + 0x175d80))\n                     (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f8,iVar19,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d80))" ( (pointer_expression "**(code **)(puVar30 + 0x175d80)" * (pointer_expression "*(code **)(puVar30 + 0x175d80)" * (cast_expression "(code **)(puVar30 + 0x175d80)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d80)" ( (binary_expression "puVar30 + 0x175d80" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f8,iVar19,param_2)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x174fb4) + 0x17f8" (pointer_expression "*(int *)(puVar30 + 0x174fb4)" * (cast_expression "(int *)(puVar30 + 0x174fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb4)" ( (binary_expression "puVar30 + 0x174fb4" identifier + number_literal) )))) + number_literal) , identifier , identifier )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1754e4))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x1754e4))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x1754e4))" ( (pointer_expression "**(code **)(puVar30 + 0x1754e4)" * (pointer_expression "*(code **)(puVar30 + 0x1754e4)" * (cast_expression "(code **)(puVar30 + 0x1754e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1754e4)" ( (binary_expression "puVar30 + 0x1754e4" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;) (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (if_statement "if (iVar13 == 0) {\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4f6,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }\n    goto LAB_00287858;\n  }" if (parenthesized_expression "(iVar13 == 0)" ( (binary_expression "iVar13 == 0" identifier == number_literal) )) (compound_statement "{\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4f6,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }\n    goto LAB_00287858;\n  }" { (expression_statement "(**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4f6,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4f6,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4f6,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (labeled_statement "LAB_00284a7c:\n  iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78b8,4);" statement_identifier : (expression_statement "iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78b8,4);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78b8,4)" identifier = (call_expression "(**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78b8,4)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d04))" ( (pointer_expression "**(code **)(puVar30 + 0x175d04)" * (pointer_expression "*(code **)(puVar30 + 0x175d04)" * (cast_expression "(code **)(puVar30 + 0x175d04)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d04)" ( (binary_expression "puVar30 + 0x175d04" identifier + number_literal) ))))) )) (argument_list "(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78b8,4)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x78b8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , number_literal )))) ;)) (if_statement "if (iVar3 == 0) {\n    (**(code **)(puVar30 + 0x175464))(auStack_1084,0x1000,*(int *)(puVar30 + 0x175020) + -0x4858,1);\n    iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n    if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x500,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      }\n    }\n    else {\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n      if (iVar19 == 0) {\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);\n        if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }\n    }\n    goto LAB_00286534;\n  }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n    (**(code **)(puVar30 + 0x175464))(auStack_1084,0x1000,*(int *)(puVar30 + 0x175020) + -0x4858,1);\n    iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n    if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x500,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      }\n    }\n    else {\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n      if (iVar19 == 0) {\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);\n        if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }\n    }\n    goto LAB_00286534;\n  }" { (expression_statement "(**(code **)(puVar30 + 0x175464))(auStack_1084,0x1000,*(int *)(puVar30 + 0x175020) + -0x4858,1);" (call_expression "(**(code **)(puVar30 + 0x175464))(auStack_1084,0x1000,*(int *)(puVar30 + 0x175020) + -0x4858,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175464))" ( (pointer_expression "**(code **)(puVar30 + 0x175464)" * (pointer_expression "*(code **)(puVar30 + 0x175464)" * (cast_expression "(code **)(puVar30 + 0x175464)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175464)" ( (binary_expression "puVar30 + 0x175464" identifier + number_literal) ))))) )) (argument_list "(auStack_1084,0x1000,*(int *)(puVar30 + 0x175020) + -0x4858,1)" ( identifier , number_literal , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4858" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) (expression_statement "iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2)" identifier = (call_expression "(**(code **)(puVar30 + 0x175cf4))(0,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175cf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175cf4)" * (pointer_expression "*(code **)(puVar30 + 0x175cf4)" * (cast_expression "(code **)(puVar30 + 0x175cf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175cf4)" ( (binary_expression "puVar30 + 0x175cf4" identifier + number_literal) ))))) )) (argument_list "(0,param_2)" ( number_literal , identifier )))) ;) (if_statement "if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x500,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      }\n    }\n    else {\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n      if (iVar19 == 0) {\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);\n        if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }\n    }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x500,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      }\n    }" { (expression_statement "(**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x500,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x500,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x500,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) })) }) (else_clause "else {\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n      if (iVar19 == 0) {\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);\n        if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }\n    }" else (compound_statement "{\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n      if (iVar19 == 0) {\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);\n        if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }\n    }" { (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1)" identifier = (call_expression "(**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(uStack_10d4,1)" ( identifier , number_literal )))) ;) (if_statement "if (iVar19 == 0) {\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);\n        if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }\n      }" { (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) }) (else_clause "else {\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);\n        if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }" else (compound_statement "{\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);\n        if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }" { (expression_statement "(**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);" (call_expression "(**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759b0))" ( (pointer_expression "**(code **)(puVar30 + 0x1759b0)" * (pointer_expression "*(code **)(puVar30 + 0x1759b0)" * (cast_expression "(code **)(puVar30 + 0x1759b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1759b0)" ( (binary_expression "puVar30 + 0x1759b0" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348),iVar19)" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) , identifier ))) ;) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0)" identifier = (call_expression "(**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1757f8))" ( (pointer_expression "**(code **)(puVar30 + 0x1757f8)" * (pointer_expression "*(code **)(puVar30 + 0x1757f8)" * (cast_expression "(code **)(puVar30 + 0x1757f8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1757f8)" ( (binary_expression "puVar30 + 0x1757f8" identifier + number_literal) ))))) )) (argument_list "(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x78c0" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) )))) ;) (if_statement "if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (compound_statement "{\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }" { (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1)" identifier = (call_expression "(**(code **)(puVar30 + 0x175bf4))(0x14000,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(0x14000,1)" ( number_literal , number_literal )))) ;) (if_statement "if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (compound_statement "{\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }" { (expression_statement "(**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);" (call_expression "(**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000)" (parenthesized_expression "(**(code **)(puVar30 + 0x175dbc))" ( (pointer_expression "**(code **)(puVar30 + 0x175dbc)" * (pointer_expression "*(code **)(puVar30 + 0x175dbc)" * (cast_expression "(code **)(puVar30 + 0x175dbc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175dbc)" ( (binary_expression "puVar30 + 0x175dbc" identifier + number_literal) ))))) )) (argument_list "(iVar19,0,0x14000)" ( identifier , number_literal , number_literal ))) ;) (do_statement "do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );" do (compound_statement "{\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            }" { (expression_statement "iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);" (assignment_expression "iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19)" identifier = (call_expression "(**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175494))" ( (pointer_expression "**(code **)(puVar30 + 0x175494)" * (pointer_expression "*(code **)(puVar30 + 0x175494)" * (cast_expression "(code **)(puVar30 + 0x175494)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175494)" ( (binary_expression "puVar30 + 0x175494" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc,0x14000,iVar19)" ( identifier , number_literal , identifier )))) ;) (if_statement "if (iVar13 == 0) goto LAB_00286b70;" if (parenthesized_expression "(iVar13 == 0)" ( (binary_expression "iVar13 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00286b70;" goto statement_identifier ;)) (expression_statement "iVar22 = 0;" (assignment_expression "iVar22 = 0" identifier = number_literal) ;) (if_statement "if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }" if (parenthesized_expression "(0 < iVar13)" ( (binary_expression "0 < iVar13" number_literal < identifier) )) (compound_statement "{\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }" { (do_statement "do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);" do (compound_statement "{\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                }" { (expression_statement "iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);" (assignment_expression "iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22)" identifier = (call_expression "(**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22)" (parenthesized_expression "(**(code **)(puVar30 + 0x17607c))" ( (pointer_expression "**(code **)(puVar30 + 0x17607c)" * (pointer_expression "*(code **)(puVar30 + 0x17607c)" * (cast_expression "(code **)(puVar30 + 0x17607c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17607c)" ( (binary_expression "puVar30 + 0x17607c" identifier + number_literal) ))))) )) (argument_list "(iVar3,iVar13 - iVar22,iVar19 + iVar22)" ( identifier , (binary_expression "iVar13 - iVar22" identifier - identifier) , (binary_expression "iVar19 + iVar22" identifier + identifier) )))) ;) (if_statement "if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }" if (parenthesized_expression "(iVar14 < 1)" ( (binary_expression "iVar14 < 1" identifier < number_literal) )) (compound_statement "{\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }" { (if_statement "if (iVar22 < iVar13) goto LAB_00286b70;" if (parenthesized_expression "(iVar22 < iVar13)" ( (binary_expression "iVar22 < iVar13" identifier < identifier) )) (goto_statement "goto LAB_00286b70;" goto statement_identifier ;)) (break_statement "break;" break ;) })) (expression_statement "iVar22 = iVar22 + iVar14;" (assignment_expression "iVar22 = iVar22 + iVar14" identifier = (binary_expression "iVar22 + iVar14" identifier + identifier)) ;) }) while (parenthesized_expression "(iVar22 < iVar13)" ( (binary_expression "iVar22 < iVar13" identifier < identifier) )) ;) })) }) while (parenthesized_expression "( true )" ( true )) ;) })) (goto_statement "goto LAB_00286b84;" goto statement_identifier ;) })) (if_statement "if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }" if (parenthesized_expression "(*(int *)(iVar20 + 0x1ec) == 0)" ( (binary_expression "*(int *)(iVar20 + 0x1ec) == 0" (pointer_expression "*(int *)(iVar20 + 0x1ec)" * (cast_expression "(int *)(iVar20 + 0x1ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1ec)" ( (binary_expression "iVar20 + 0x1ec" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }" { (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48a4" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) }) (else_clause "else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }" else (compound_statement "{\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }" { (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175548))();" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175548))()" identifier = (call_expression "(**(code **)(puVar30 + 0x175548))()" (parenthesized_expression "(**(code **)(puVar30 + 0x175548))" ( (pointer_expression "**(code **)(puVar30 + 0x175548)" * (pointer_expression "*(code **)(puVar30 + 0x175548)" * (cast_expression "(code **)(puVar30 + 0x175548)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175548)" ( (binary_expression "puVar30 + 0x175548" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2)" identifier = (call_expression "(**(code **)(puVar30 + 0x175cf4))(0,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175cf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175cf4)" * (pointer_expression "*(code **)(puVar30 + 0x175cf4)" * (cast_expression "(code **)(puVar30 + 0x175cf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175cf4)" ( (binary_expression "puVar30 + 0x175cf4" identifier + number_literal) ))))) )) (argument_list "(0,param_2)" ( number_literal , identifier )))) ;) (if_statement "if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }" { (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) }) (else_clause "else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }" else (compound_statement "{\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }" { (expression_statement "uVar26 = *(undefined4 *)(iVar19 + 0x3348);" (assignment_expression "uVar26 = *(undefined4 *)(iVar19 + 0x3348)" identifier = (pointer_expression "*(undefined4 *)(iVar19 + 0x3348)" * (cast_expression "(undefined4 *)(iVar19 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x3348)" ( (binary_expression "iVar19 + 0x3348" identifier + number_literal) ))))) ;) (expression_statement "uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);" (assignment_expression "uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15)" identifier = (call_expression "(**(code **)(puVar30 + 0x175550))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x175550))" ( (pointer_expression "**(code **)(puVar30 + 0x175550)" * (pointer_expression "*(code **)(puVar30 + 0x175550)" * (cast_expression "(code **)(puVar30 + 0x175550)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175550)" ( (binary_expression "puVar30 + 0x175550" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier )))) ;) (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15)" identifier = (call_expression "(**(code **)(puVar30 + 0x175430))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x175430))" ( (pointer_expression "**(code **)(puVar30 + 0x175430)" * (pointer_expression "*(code **)(puVar30 + 0x175430)" * (cast_expression "(code **)(puVar30 + 0x175430)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175430)" ( (binary_expression "puVar30 + 0x175430" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);" (call_expression "(**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759b0))" ( (pointer_expression "**(code **)(puVar30 + 0x1759b0)" * (pointer_expression "*(code **)(puVar30 + 0x1759b0)" * (cast_expression "(code **)(puVar30 + 0x1759b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1759b0)" ( (binary_expression "puVar30 + 0x1759b0" identifier + number_literal) ))))) )) (argument_list "(uVar26,uVar10,uVar15)" ( identifier , identifier , identifier ))) ;) (expression_statement "iVar13 = FUN_00282440(pcStack_10fc,iVar3);" (assignment_expression "iVar13 = FUN_00282440(pcStack_10fc,iVar3)" identifier = (call_expression "FUN_00282440(pcStack_10fc,iVar3)" identifier (argument_list "(pcStack_10fc,iVar3)" ( identifier , identifier )))) ;) (if_statement "if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }" if (parenthesized_expression "(iVar13 == 0xff)" ( (binary_expression "iVar13 == 0xff" identifier == number_literal) )) (compound_statement "{\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }" { (expression_statement "iVar13 = FUN_00282440(pcStack_10fc,iVar3);" (assignment_expression "iVar13 = FUN_00282440(pcStack_10fc,iVar3)" identifier = (call_expression "FUN_00282440(pcStack_10fc,iVar3)" identifier (argument_list "(pcStack_10fc,iVar3)" ( identifier , identifier )))) ;) (expression_statement "iVar22 = *(int *)(puVar30 + 0x1752b0);" (assignment_expression "iVar22 = *(int *)(puVar30 + 0x1752b0)" identifier = (pointer_expression "*(int *)(puVar30 + 0x1752b0)" * (cast_expression "(int *)(puVar30 + 0x1752b0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x1752b0)" ( (binary_expression "puVar30 + 0x1752b0" identifier + number_literal) ))))) ;) (if_statement "if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }" if (parenthesized_expression "(iVar13 == 0xd8)" ( (binary_expression "iVar13 == 0xd8" identifier == number_literal) )) (compound_statement "{\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }" { (expression_statement "iVar13 = *(int *)(puVar30 + 0x175020);" (assignment_expression "iVar13 = *(int *)(puVar30 + 0x175020)" identifier = (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) ))))) ;) (expression_statement "uVar15 = *(undefined4 *)(iVar13 + -0x4720);" (assignment_expression "uVar15 = *(undefined4 *)(iVar13 + -0x4720)" identifier = (pointer_expression "*(undefined4 *)(iVar13 + -0x4720)" * (cast_expression "(undefined4 *)(iVar13 + -0x4720)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar13 + -0x4720)" ( (binary_expression "iVar13 + -0x4720" identifier + number_literal) ))))) ;) (labeled_statement "LAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);" statement_identifier : (expression_statement "uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);" (assignment_expression "uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" identifier = (call_expression "(**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ed8))" ( (pointer_expression "**(code **)(puVar30 + 0x175ed8)" * (pointer_expression "*(code **)(puVar30 + 0x175ed8)" * (cast_expression "(code **)(puVar30 + 0x175ed8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175ed8)" ( (binary_expression "puVar30 + 0x175ed8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier )))) ;)) (if_statement "if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }" if (parenthesized_expression "(uVar12 != 0xffffffff)" ( (binary_expression "uVar12 != 0xffffffff" identifier != number_literal) )) (compound_statement "{\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }" { (if_statement "if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }" if (parenthesized_expression "(uVar12 == 0xff)" ( (binary_expression "uVar12 == 0xff" identifier == number_literal) )) (compound_statement "{\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }" { (do_statement "do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);" do (compound_statement "{\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    }" { (expression_statement "uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);" (assignment_expression "uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" identifier = (call_expression "(**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ed8))" ( (pointer_expression "**(code **)(puVar30 + 0x175ed8)" * (pointer_expression "*(code **)(puVar30 + 0x175ed8)" * (cast_expression "(code **)(puVar30 + 0x175ed8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175ed8)" ( (binary_expression "puVar30 + 0x175ed8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier )))) ;) (if_statement "if (uVar12 == 0xffffffff) goto LAB_00287dd0;" if (parenthesized_expression "(uVar12 == 0xffffffff)" ( (binary_expression "uVar12 == 0xffffffff" identifier == number_literal) )) (goto_statement "goto LAB_00287dd0;" goto statement_identifier ;)) }) while (parenthesized_expression "(uVar12 == 0xff)" ( (binary_expression "uVar12 == 0xff" identifier == number_literal) )) ;) (if_statement "if (uVar12 == 0xd9) goto LAB_002867e4;" if (parenthesized_expression "(uVar12 == 0xd9)" ( (binary_expression "uVar12 == 0xd9" identifier == number_literal) )) (goto_statement "goto LAB_002867e4;" goto statement_identifier ;)) (if_statement "if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }" if (parenthesized_expression "(uVar12 != 0xed)" ( (binary_expression "uVar12 != 0xed" identifier != number_literal) )) (compound_statement "{\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }" { (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0xff)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0xff)" ( identifier , number_literal ))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,uVar12 & 0xff)" ( identifier , (binary_expression "uVar12 & 0xff" identifier & number_literal) ))) ;) })) (if_statement "if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }" if (parenthesized_expression "(uVar12 == 0xe0)" ( (binary_expression "uVar12 == 0xe0" identifier == number_literal) )) (compound_statement "{\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }" { (expression_statement "(*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);" (call_expression "(*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3)" (parenthesized_expression "(*(code *)(iVar22 + 0x24b0))" ( (pointer_expression "*(code *)(iVar22 + 0x24b0)" * (cast_expression "(code *)(iVar22 + 0x24b0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar22 + 0x24b0)" ( (binary_expression "iVar22 + 0x24b0" identifier + number_literal) )))) )) (argument_list "(pcStack_10fc,iVar3)" ( identifier , identifier ))) ;) (expression_statement "uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);" (assignment_expression "uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c)" identifier = (pointer_expression "*(undefined4 *)(iVar13 + -0x471c)" * (cast_expression "(undefined4 *)(iVar13 + -0x471c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar13 + -0x471c)" ( (binary_expression "iVar13 + -0x471c" identifier + number_literal) ))))) ;) (expression_statement "uStack_109c = *(undefined4 *)(iVar13 + -0x4718);" (assignment_expression "uStack_109c = *(undefined4 *)(iVar13 + -0x4718)" identifier = (pointer_expression "*(undefined4 *)(iVar13 + -0x4718)" * (cast_expression "(undefined4 *)(iVar13 + -0x4718)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar13 + -0x4718)" ( (binary_expression "iVar13 + -0x4718" identifier + number_literal) ))))) ;) (expression_statement "uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);" (assignment_expression "uStack_1098 = *(undefined4 *)(iVar13 + -0x4714)" identifier = (pointer_expression "*(undefined4 *)(iVar13 + -0x4714)" * (cast_expression "(undefined4 *)(iVar13 + -0x4714)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar13 + -0x4714)" ( (binary_expression "iVar13 + -0x4714" identifier + number_literal) ))))) ;) (expression_statement "auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);" (assignment_expression "auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710)" identifier = (pointer_expression "*(undefined1 (*) [4])(iVar13 + -0x4710)" * (cast_expression "(undefined1 (*) [4])(iVar13 + -0x4710)" ( (type_descriptor "undefined1 (*) [4]" type_identifier (abstract_array_declarator "(*) [4]" (abstract_parenthesized_declarator "(*)" ( (abstract_pointer_declarator "*" *) )) [ number_literal ])) ) (parenthesized_expression "(iVar13 + -0x4710)" ( (binary_expression "iVar13 + -0x4710" identifier + number_literal) ))))) ;) (expression_statement "uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);" (assignment_expression "uStack_1090 = *(undefined4 *)(iVar13 + -0x470c)" identifier = (pointer_expression "*(undefined4 *)(iVar13 + -0x470c)" * (cast_expression "(undefined4 *)(iVar13 + -0x470c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar13 + -0x470c)" ( (binary_expression "iVar13 + -0x470c" identifier + number_literal) ))))) ;) (expression_statement "uStack_108c = *(undefined4 *)(iVar13 + -0x4708);" (assignment_expression "uStack_108c = *(undefined4 *)(iVar13 + -0x4708)" identifier = (pointer_expression "*(undefined4 *)(iVar13 + -0x4708)" * (cast_expression "(undefined4 *)(iVar13 + -0x4708)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar13 + -0x4708)" ( (binary_expression "iVar13 + -0x4708" identifier + number_literal) ))))) ;) (expression_statement "uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);" (assignment_expression "uStack_1088 = *(undefined1 *)(iVar13 + -0x4704)" identifier = (pointer_expression "*(undefined1 *)(iVar13 + -0x4704)" * (cast_expression "(undefined1 *)(iVar13 + -0x4704)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar13 + -0x4704)" ( (binary_expression "iVar13 + -0x4704" identifier + number_literal) ))))) ;) (expression_statement "uStack_10a4 = uVar15;" (assignment_expression "uStack_10a4 = uVar15" identifier = identifier) ;) (expression_statement "(**(code **)(puVar30 + 0x175ba0))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x175ba0))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ba0))" ( (pointer_expression "**(code **)(puVar30 + 0x175ba0)" * (pointer_expression "*(code **)(puVar30 + 0x175ba0)" * (cast_expression "(code **)(puVar30 + 0x175ba0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175ba0)" ( (binary_expression "puVar30 + 0x175ba0" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;) (expression_statement "uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);" (assignment_expression "uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8)" identifier = (call_expression "(undefined1)(extraout_v1_00 + 0x10 >> 8)" (parenthesized_expression "(undefined1)" ( identifier )) (argument_list "(extraout_v1_00 + 0x10 >> 8)" ( (binary_expression "extraout_v1_00 + 0x10 >> 8" (binary_expression "extraout_v1_00 + 0x10" identifier + number_literal) >> number_literal) )))) ;) (expression_statement "uVar12 = extraout_v1_00;" (assignment_expression "uVar12 = extraout_v1_00" identifier = identifier) ;) (if_statement "if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }" if (parenthesized_expression "((extraout_v1_00 & 1) != 0)" ( (binary_expression "(extraout_v1_00 & 1) != 0" (parenthesized_expression "(extraout_v1_00 & 1)" ( (binary_expression "extraout_v1_00 & 1" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }" { (expression_statement "uVar12 = extraout_v1_00 + 1;" (assignment_expression "uVar12 = extraout_v1_00 + 1" identifier = (binary_expression "extraout_v1_00 + 1" identifier + number_literal)) ;) (expression_statement "uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);" (assignment_expression "uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8)" identifier = (call_expression "(undefined1)(extraout_v1_00 + 0x11 >> 8)" (parenthesized_expression "(undefined1)" ( identifier )) (argument_list "(extraout_v1_00 + 0x11 >> 8)" ( (binary_expression "extraout_v1_00 + 0x11 >> 8" (binary_expression "extraout_v1_00 + 0x11" identifier + number_literal) >> number_literal) )))) ;) })) (expression_statement "uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');" (assignment_expression "uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10')" identifier = (call_expression "CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10')" identifier (argument_list "(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10')" ( (call_expression "CONCAT21(uStack_10a4._0_2_,uVar16)" identifier (argument_list "(uStack_10a4._0_2_,uVar16)" ( (field_expression "uStack_10a4._0_2_" identifier . field_identifier) , identifier ))) , (binary_expression "(char)uVar12 + '\x10'" (cast_expression "(char)uVar12" ( (type_descriptor "char" primitive_type) ) identifier) + (char_literal "'\x10'" ' escape_sequence ')) )))) ;) (expression_statement "puVar25 = &uStack_10a4;" (assignment_expression "puVar25 = &uStack_10a4" identifier = (pointer_expression "&uStack_10a4" & identifier)) ;) (do_statement "do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));" do (compound_statement "{\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      }" { (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,*(undefined1 *)puVar25)" ( identifier , (pointer_expression "*(undefined1 *)puVar25" * (cast_expression "(undefined1 *)puVar25" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ))) ;) (expression_statement "puVar25 = (undefined4 *)((int)puVar25 + 1);" (assignment_expression "puVar25 = (undefined4 *)((int)puVar25 + 1)" identifier = (cast_expression "(undefined4 *)((int)puVar25 + 1)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar25 + 1)" ( (binary_expression "(int)puVar25 + 1" (cast_expression "(int)puVar25" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) }) while (parenthesized_expression "(puVar25 != (undefined4 *)(auStack_1094 + 2))" ( (binary_expression "puVar25 != (undefined4 *)(auStack_1094 + 2)" identifier != (cast_expression "(undefined4 *)(auStack_1094 + 2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_1094 + 2)" ( (binary_expression "auStack_1094 + 2" identifier + number_literal) )))) )) ;) (do_statement "do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);" do (compound_statement "{\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      }" { (expression_statement "iVar14 = FUN_00282440(iVar19,iVar3);" (assignment_expression "iVar14 = FUN_00282440(iVar19,iVar3)" identifier = (call_expression "FUN_00282440(iVar19,iVar3)" identifier (argument_list "(iVar19,iVar3)" ( identifier , identifier )))) ;) }) while (parenthesized_expression "(iVar14 != -1)" ( (binary_expression "iVar14 != -1" identifier != number_literal) )) ;) (expression_statement "(**(code **)(puVar30 + 0x175ba0))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x175ba0))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ba0))" ( (pointer_expression "**(code **)(puVar30 + 0x175ba0)" * (pointer_expression "*(code **)(puVar30 + 0x175ba0)" * (cast_expression "(code **)(puVar30 + 0x175ba0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175ba0)" ( (binary_expression "puVar30 + 0x175ba0" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;) (if_statement "if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }" if (parenthesized_expression "((extraout_v1_01 & 1) != 0)" ( (binary_expression "(extraout_v1_01 & 1) != 0" (parenthesized_expression "(extraout_v1_01 & 1)" ( (binary_expression "extraout_v1_01 & 1" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }" { (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0)" ( identifier , number_literal ))) ;) })) }) (else_clause "else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }" else (if_statement "if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }" if (parenthesized_expression "(uVar12 == 0xed)" ( (binary_expression "uVar12 == 0xed" identifier == number_literal) )) (compound_statement "{\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }" { (expression_statement "iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);" (assignment_expression "iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" identifier = (call_expression "(**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ed8))" ( (pointer_expression "**(code **)(puVar30 + 0x175ed8)" * (pointer_expression "*(code **)(puVar30 + 0x175ed8)" * (cast_expression "(code **)(puVar30 + 0x175ed8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175ed8)" ( (binary_expression "puVar30 + 0x175ed8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier )))) ;) (if_statement "if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }" if (parenthesized_expression "((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1))" ( (binary_expression "(iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)" (parenthesized_expression "(iVar14 != -1)" ( (binary_expression "iVar14 != -1" identifier != number_literal) )) && (parenthesized_expression "(iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)" ( (comma_expression "iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1" (assignment_expression "iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" identifier = (call_expression "(**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ed8))" ( (pointer_expression "**(code **)(puVar30 + 0x175ed8)" * (pointer_expression "*(code **)(puVar30 + 0x175ed8)" * (cast_expression "(code **)(puVar30 + 0x175ed8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175ed8)" ( (binary_expression "puVar30 + 0x175ed8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier )))) , (binary_expression "iVar11 != -1" identifier != number_literal)) ))) )) (compound_statement "{\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }" { (expression_statement "iVar11 = iVar14 * 0x100 + -2 + iVar11;" (assignment_expression "iVar11 = iVar14 * 0x100 + -2 + iVar11" identifier = (binary_expression "iVar14 * 0x100 + -2 + iVar11" (binary_expression "iVar14 * 0x100 + -2" (binary_expression "iVar14 * 0x100" identifier * number_literal) + number_literal) + identifier)) ;) (do_statement "do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);" do (compound_statement "{\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        }" { (if_statement "if (iVar11 == 0) break;" if (parenthesized_expression "(iVar11 == 0)" ( (binary_expression "iVar11 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);" (assignment_expression "iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" identifier = (call_expression "(**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ed8))" ( (pointer_expression "**(code **)(puVar30 + 0x175ed8)" * (pointer_expression "*(code **)(puVar30 + 0x175ed8)" * (cast_expression "(code **)(puVar30 + 0x175ed8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175ed8)" ( (binary_expression "puVar30 + 0x175ed8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier )))) ;) (expression_statement "iVar11 = iVar11 + -1;" (assignment_expression "iVar11 = iVar11 + -1" identifier = (binary_expression "iVar11 + -1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar14 != -1)" ( (binary_expression "iVar14 != -1" identifier != number_literal) )) ;) })) }) (else_clause "else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }" else (compound_statement "{\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }" { (if_statement "if (uVar12 == 0xda) goto LAB_002867c8;" if (parenthesized_expression "(uVar12 == 0xda)" ( (binary_expression "uVar12 == 0xda" identifier == number_literal) )) (goto_statement "goto LAB_002867c8;" goto statement_identifier ;)) (expression_statement "(*(code *)(iVar22 + 0x24b0))(pcStack_10fc);" (call_expression "(*(code *)(iVar22 + 0x24b0))(pcStack_10fc)" (parenthesized_expression "(*(code *)(iVar22 + 0x24b0))" ( (pointer_expression "*(code *)(iVar22 + 0x24b0)" * (cast_expression "(code *)(iVar22 + 0x24b0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar22 + 0x24b0)" ( (binary_expression "iVar22 + 0x24b0" identifier + number_literal) )))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) }))))) }) (else_clause "else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }" else (compound_statement "{\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }" { (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,uVar12 & 0xff)" ( identifier , (binary_expression "uVar12 & 0xff" identifier & number_literal) ))) ;) }))) (goto_statement "goto LAB_002869d4;" goto statement_identifier ;) })) (labeled_statement "LAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));" statement_identifier : (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar19 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar19 + 0x3348)" * (cast_expression "(undefined4 *)(iVar19 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x3348)" ( (binary_expression "iVar19 + 0x3348" identifier + number_literal) )))) )))) ;)) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;) (goto_statement "goto LAB_00286b84;" goto statement_identifier ;) })) })) (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar19 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar19 + 0x3348)" * (cast_expression "(undefined4 *)(iVar19 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x3348)" ( (binary_expression "iVar19 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4850" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) }))) }))) }))) }))) (goto_statement "goto LAB_00286534;" goto statement_identifier ;) })) (expression_statement "iVar3 = *(int *)(puVar30 + 0x174fb0);" (assignment_expression "iVar3 = *(int *)(puVar30 + 0x174fb0)" identifier = (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_00284aa4;" goto statement_identifier ;) (labeled_statement "LAB_00286b70:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);" statement_identifier : (expression_statement "(**(code **)(puVar30 + 0x1756a8))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;)) (goto_statement "goto LAB_00286b84;" goto statement_identifier ;) (labeled_statement "LAB_00286f40:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);" statement_identifier : (expression_statement "(**(code **)(puVar30 + 0x1756a8))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;)) (goto_statement "goto LAB_00286f50;" goto statement_identifier ;) (labeled_statement "LAB_00287414:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);" statement_identifier : (expression_statement "(**(code **)(puVar30 + 0x1756a8))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;)) (goto_statement "goto LAB_00287424;" goto statement_identifier ;) (labeled_statement "LAB_00287758:\n  (**(code **)(puVar30 + 0x1756a8))(iVar3);" statement_identifier : (expression_statement "(**(code **)(puVar30 + 0x1756a8))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;)) (goto_statement "goto LAB_00287768;" goto statement_identifier ;) (labeled_statement "LAB_002867c8:\n  do {\n    iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n  } while (iVar13 != -1);" statement_identifier : (do_statement "do {\n    iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n  } while (iVar13 != -1);" do (compound_statement "{\n    iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n  }" { (expression_statement "iVar13 = FUN_00282440(pcStack_10fc,iVar3);" (assignment_expression "iVar13 = FUN_00282440(pcStack_10fc,iVar3)" identifier = (call_expression "FUN_00282440(pcStack_10fc,iVar3)" identifier (argument_list "(pcStack_10fc,iVar3)" ( identifier , identifier )))) ;) }) while (parenthesized_expression "(iVar13 != -1)" ( (binary_expression "iVar13 != -1" identifier != number_literal) )) ;)) (labeled_statement "LAB_002867e4:\n  uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));" statement_identifier : (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar19 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar19 + 0x3348)" * (cast_expression "(undefined4 *)(iVar19 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x3348)" ( (binary_expression "iVar19 + 0x3348" identifier + number_literal) )))) )))) ;)) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;) (labeled_statement "LAB_00286b84:\n  uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);" statement_identifier : (expression_statement "uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x1754cc))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x1754cc))" ( (pointer_expression "**(code **)(puVar30 + 0x1754cc)" * (pointer_expression "*(code **)(puVar30 + 0x1754cc)" * (cast_expression "(code **)(puVar30 + 0x1754cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1754cc)" ( (binary_expression "puVar30 + 0x1754cc" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;)) (expression_statement "(**(code **)(puVar30 + 0x175ba0))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175ba0))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ba0))" ( (pointer_expression "**(code **)(puVar30 + 0x175ba0)" * (pointer_expression "*(code **)(puVar30 + 0x175ba0)" * (cast_expression "(code **)(puVar30 + 0x175ba0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175ba0)" ( (binary_expression "puVar30 + 0x175ba0" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_02);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_02)" identifier = (call_expression "(**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_02)" (parenthesized_expression "(**(code **)(puVar30 + 0x175dac))" ( (pointer_expression "**(code **)(puVar30 + 0x175dac)" * (pointer_expression "*(code **)(puVar30 + 0x175dac)" * (cast_expression "(code **)(puVar30 + 0x175dac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175dac)" ( (binary_expression "puVar30 + 0x175dac" identifier + number_literal) ))))) )) (argument_list "(uVar15,extraout_v1_02)" ( identifier , identifier )))) ;) (if_statement "if (iVar19 == 0) {\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x535,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }\n  }\n  else {\n    iVar13 = (**(code **)(puVar30 + 0x175d80))(pcStack_10fc,auStack_1084,iVar19,param_2);\n    (**(code **)(puVar30 + 0x1754e4))(iVar19);\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    iVar3 = *(int *)(puVar30 + 0x174fb0);\n    if (iVar13 != 0) {\nLAB_00284aa4:\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc);\n      if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0);\n      if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      iVar2 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4);\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar2 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);\n        (**(code **)(puVar30 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar2);\n      }\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc);\n      goto LAB_00287858;\n    }\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x53d,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }\n  }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x535,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }\n  }" { (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x535,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x535,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x535,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) }) (else_clause "else {\n    iVar13 = (**(code **)(puVar30 + 0x175d80))(pcStack_10fc,auStack_1084,iVar19,param_2);\n    (**(code **)(puVar30 + 0x1754e4))(iVar19);\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    iVar3 = *(int *)(puVar30 + 0x174fb0);\n    if (iVar13 != 0) {\nLAB_00284aa4:\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc);\n      if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0);\n      if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      iVar2 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4);\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar2 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);\n        (**(code **)(puVar30 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar2);\n      }\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc);\n      goto LAB_00287858;\n    }\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x53d,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }\n  }" else (compound_statement "{\n    iVar13 = (**(code **)(puVar30 + 0x175d80))(pcStack_10fc,auStack_1084,iVar19,param_2);\n    (**(code **)(puVar30 + 0x1754e4))(iVar19);\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    iVar3 = *(int *)(puVar30 + 0x174fb0);\n    if (iVar13 != 0) {\nLAB_00284aa4:\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc);\n      if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0);\n      if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      iVar2 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4);\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar2 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);\n        (**(code **)(puVar30 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar2);\n      }\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc);\n      goto LAB_00287858;\n    }\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x53d,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }\n  }" { (expression_statement "iVar13 = (**(code **)(puVar30 + 0x175d80))(pcStack_10fc,auStack_1084,iVar19,param_2);" (assignment_expression "iVar13 = (**(code **)(puVar30 + 0x175d80))(pcStack_10fc,auStack_1084,iVar19,param_2)" identifier = (call_expression "(**(code **)(puVar30 + 0x175d80))(pcStack_10fc,auStack_1084,iVar19,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d80))" ( (pointer_expression "**(code **)(puVar30 + 0x175d80)" * (pointer_expression "*(code **)(puVar30 + 0x175d80)" * (cast_expression "(code **)(puVar30 + 0x175d80)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d80)" ( (binary_expression "puVar30 + 0x175d80" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc,auStack_1084,iVar19,param_2)" ( identifier , identifier , identifier , identifier )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1754e4))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x1754e4))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x1754e4))" ( (pointer_expression "**(code **)(puVar30 + 0x1754e4)" * (pointer_expression "*(code **)(puVar30 + 0x1754e4)" * (cast_expression "(code **)(puVar30 + 0x1754e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1754e4)" ( (binary_expression "puVar30 + 0x1754e4" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;) (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "iVar3 = *(int *)(puVar30 + 0x174fb0);" (assignment_expression "iVar3 = *(int *)(puVar30 + 0x174fb0)" identifier = (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) ))))) ;) (if_statement "if (iVar13 != 0) {\nLAB_00284aa4:\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc);\n      if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0);\n      if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      iVar2 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4);\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar2 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);\n        (**(code **)(puVar30 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar2);\n      }\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc);\n      goto LAB_00287858;\n    }" if (parenthesized_expression "(iVar13 != 0)" ( (binary_expression "iVar13 != 0" identifier != number_literal) )) (compound_statement "{\nLAB_00284aa4:\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc);\n      if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0);\n      if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      iVar2 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4);\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar2 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);\n        (**(code **)(puVar30 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar2);\n      }\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc);\n      goto LAB_00287858;\n    }" { (labeled_statement "LAB_00284aa4:\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc);" statement_identifier : (expression_statement "iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc)" identifier = (call_expression "(**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc)" (parenthesized_expression "(**(code **)(puVar30 + 0x1757f8))" ( (pointer_expression "**(code **)(puVar30 + 0x1757f8)" * (pointer_expression "*(code **)(puVar30 + 0x1757f8)" * (cast_expression "(code **)(puVar30 + 0x1757f8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1757f8)" ( (binary_expression "puVar30 + 0x1757f8" identifier + number_literal) ))))) )) (argument_list "(iVar2,iVar3 + 0x78dc)" ( identifier , (binary_expression "iVar3 + 0x78dc" identifier + number_literal) )))) ;)) (if_statement "if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n      }" { (labeled_statement "LAB_00284ae8:\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);" statement_identifier : (expression_statement "iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2)" identifier = (call_expression "(**(code **)(puVar30 + 0x175cf4))(0,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175cf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175cf4)" * (pointer_expression "*(code **)(puVar30 + 0x175cf4)" * (cast_expression "(code **)(puVar30 + 0x175cf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175cf4)" ( (binary_expression "puVar30 + 0x175cf4" identifier + number_literal) ))))) )) (argument_list "(0,param_2)" ( number_literal , identifier )))) ;)) (if_statement "if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" { (expression_statement "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1)" identifier = (call_expression "(**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(uStack_10d4,1)" ( identifier , number_literal )))) ;) (if_statement "if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" { (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "(**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);" (call_expression "(**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759b0))" ( (pointer_expression "**(code **)(puVar30 + 0x1759b0)" * (pointer_expression "*(code **)(puVar30 + 0x1759b0)" * (cast_expression "(code **)(puVar30 + 0x1759b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1759b0)" ( (binary_expression "puVar30 + 0x1759b0" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348),iVar19)" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) , identifier ))) ;) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1)" identifier = (call_expression "(**(code **)(puVar30 + 0x175bf4))(0x14000,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(0x14000,1)" ( number_literal , number_literal )))) ;) (if_statement "if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (compound_statement "{\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }" { (expression_statement "(**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);" (call_expression "(**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000)" (parenthesized_expression "(**(code **)(puVar30 + 0x175dbc))" ( (pointer_expression "**(code **)(puVar30 + 0x175dbc)" * (pointer_expression "*(code **)(puVar30 + 0x175dbc)" * (cast_expression "(code **)(puVar30 + 0x175dbc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175dbc)" ( (binary_expression "puVar30 + 0x175dbc" identifier + number_literal) ))))) )) (argument_list "(iVar19,0,0x14000)" ( identifier , number_literal , number_literal ))) ;) (do_statement "do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );" do (compound_statement "{\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          }" { (expression_statement "iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);" (assignment_expression "iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19)" identifier = (call_expression "(**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175494))" ( (pointer_expression "**(code **)(puVar30 + 0x175494)" * (pointer_expression "*(code **)(puVar30 + 0x175494)" * (cast_expression "(code **)(puVar30 + 0x175494)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175494)" ( (binary_expression "puVar30 + 0x175494" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc,0x14000,iVar19)" ( identifier , number_literal , identifier )))) ;) (if_statement "if (iVar13 == 0) goto LAB_00286f40;" if (parenthesized_expression "(iVar13 == 0)" ( (binary_expression "iVar13 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00286f40;" goto statement_identifier ;)) (expression_statement "iVar22 = 0;" (assignment_expression "iVar22 = 0" identifier = number_literal) ;) (if_statement "if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }" if (parenthesized_expression "(0 < iVar13)" ( (binary_expression "0 < iVar13" number_literal < identifier) )) (compound_statement "{\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }" { (do_statement "do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);" do (compound_statement "{\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              }" { (expression_statement "iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);" (assignment_expression "iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22)" identifier = (call_expression "(**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22)" (parenthesized_expression "(**(code **)(puVar30 + 0x17607c))" ( (pointer_expression "**(code **)(puVar30 + 0x17607c)" * (pointer_expression "*(code **)(puVar30 + 0x17607c)" * (cast_expression "(code **)(puVar30 + 0x17607c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17607c)" ( (binary_expression "puVar30 + 0x17607c" identifier + number_literal) ))))) )) (argument_list "(iVar3,iVar13 - iVar22,iVar19 + iVar22)" ( identifier , (binary_expression "iVar13 - iVar22" identifier - identifier) , (binary_expression "iVar19 + iVar22" identifier + identifier) )))) ;) (if_statement "if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }" if (parenthesized_expression "(iVar14 < 1)" ( (binary_expression "iVar14 < 1" identifier < number_literal) )) (compound_statement "{\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }" { (if_statement "if (iVar22 < iVar13) goto LAB_00286f40;" if (parenthesized_expression "(iVar22 < iVar13)" ( (binary_expression "iVar22 < iVar13" identifier < identifier) )) (goto_statement "goto LAB_00286f40;" goto statement_identifier ;)) (break_statement "break;" break ;) })) (expression_statement "iVar22 = iVar22 + iVar14;" (assignment_expression "iVar22 = iVar22 + iVar14" identifier = (binary_expression "iVar22 + iVar14" identifier + identifier)) ;) }) while (parenthesized_expression "(iVar22 < iVar13)" ( (binary_expression "iVar22 < iVar13" identifier < identifier) )) ;) })) }) while (parenthesized_expression "( true )" ( true )) ;) })) (labeled_statement "LAB_00286f50:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);" statement_identifier : (expression_statement "uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x1754cc))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x1754cc))" ( (pointer_expression "**(code **)(puVar30 + 0x1754cc)" * (pointer_expression "*(code **)(puVar30 + 0x1754cc)" * (cast_expression "(code **)(puVar30 + 0x1754cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1754cc)" ( (binary_expression "puVar30 + 0x1754cc" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;)) (expression_statement "(**(code **)(puVar30 + 0x175ba0))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175ba0))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ba0))" ( (pointer_expression "**(code **)(puVar30 + 0x175ba0)" * (pointer_expression "*(code **)(puVar30 + 0x175ba0)" * (cast_expression "(code **)(puVar30 + 0x175ba0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175ba0)" ( (binary_expression "puVar30 + 0x175ba0" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03)" identifier = (call_expression "(**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03)" (parenthesized_expression "(**(code **)(puVar30 + 0x175dac))" ( (pointer_expression "**(code **)(puVar30 + 0x175dac)" * (pointer_expression "*(code **)(puVar30 + 0x175dac)" * (cast_expression "(code **)(puVar30 + 0x175dac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175dac)" ( (binary_expression "puVar30 + 0x175dac" identifier + number_literal) ))))) )) (argument_list "(uVar15,extraout_v1_03)" ( identifier , identifier )))) ;) (if_statement "if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" { (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "(**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);" (call_expression "(**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d80))" ( (pointer_expression "**(code **)(puVar30 + 0x175d80)" * (pointer_expression "*(code **)(puVar30 + 0x175d80)" * (cast_expression "(code **)(puVar30 + 0x175d80)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d80)" ( (binary_expression "puVar30 + 0x175d80" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x174fb4) + -0x286c" (pointer_expression "*(int *)(puVar30 + 0x174fb4)" * (cast_expression "(int *)(puVar30 + 0x174fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb4)" ( (binary_expression "puVar30 + 0x174fb4" identifier + number_literal) )))) + number_literal) , identifier , identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x1754e4))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x1754e4))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x1754e4))" ( (pointer_expression "**(code **)(puVar30 + 0x1754e4)" * (pointer_expression "*(code **)(puVar30 + 0x1754e4)" * (cast_expression "(code **)(puVar30 + 0x1754e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1754e4)" ( (binary_expression "puVar30 + 0x1754e4" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;) (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "iVar19 = *(int *)(puVar30 + 0x174fb0);" (assignment_expression "iVar19 = *(int *)(puVar30 + 0x174fb0)" identifier = (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) ))))) ;) }) (else_clause "else {\n        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }" else (compound_statement "{\n        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }" { (expression_statement "iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8)" identifier = (call_expression "(**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8)" (parenthesized_expression "(**(code **)(puVar30 + 0x1757f8))" ( (pointer_expression "**(code **)(puVar30 + 0x1757f8)" * (pointer_expression "*(code **)(puVar30 + 0x1757f8)" * (cast_expression "(code **)(puVar30 + 0x1757f8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1757f8)" ( (binary_expression "puVar30 + 0x1757f8" identifier + number_literal) ))))) )) (argument_list "(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x78d8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "iVar19 = *(int *)(puVar30 + 0x174fb0);" (assignment_expression "iVar19 = *(int *)(puVar30 + 0x174fb0)" identifier = (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) ))))) ;) (if_statement "if (iVar3 == 0) goto LAB_00284ae8;" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00284ae8;" goto statement_identifier ;)) }))) (expression_statement "iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0)" identifier = (call_expression "(**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1757f8))" ( (pointer_expression "**(code **)(puVar30 + 0x1757f8)" * (pointer_expression "*(code **)(puVar30 + 0x1757f8)" * (cast_expression "(code **)(puVar30 + 0x1757f8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1757f8)" ( (binary_expression "puVar30 + 0x1757f8" identifier + number_literal) ))))) )) (argument_list "(iVar2,iVar19 + 0x78e0)" ( identifier , (binary_expression "iVar19 + 0x78e0" identifier + number_literal) )))) ;) (if_statement "if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }" { (expression_statement "iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2)" identifier = (call_expression "(**(code **)(puVar30 + 0x175cf4))(0,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175cf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175cf4)" * (pointer_expression "*(code **)(puVar30 + 0x175cf4)" * (cast_expression "(code **)(puVar30 + 0x175cf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175cf4)" ( (binary_expression "puVar30 + 0x175cf4" identifier + number_literal) ))))) )) (argument_list "(0,param_2)" ( number_literal , identifier )))) ;) (if_statement "if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" { (expression_statement "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1)" identifier = (call_expression "(**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(uStack_10d4,1)" ( identifier , number_literal )))) ;) (if_statement "if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" { (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "(**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);" (call_expression "(**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759b0))" ( (pointer_expression "**(code **)(puVar30 + 0x1759b0)" * (pointer_expression "*(code **)(puVar30 + 0x1759b0)" * (cast_expression "(code **)(puVar30 + 0x1759b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1759b0)" ( (binary_expression "puVar30 + 0x1759b0" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348),iVar19)" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) , identifier ))) ;) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1)" identifier = (call_expression "(**(code **)(puVar30 + 0x175bf4))(0x14000,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(0x14000,1)" ( number_literal , number_literal )))) ;) (if_statement "if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (compound_statement "{\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }" { (expression_statement "(**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);" (call_expression "(**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000)" (parenthesized_expression "(**(code **)(puVar30 + 0x175dbc))" ( (pointer_expression "**(code **)(puVar30 + 0x175dbc)" * (pointer_expression "*(code **)(puVar30 + 0x175dbc)" * (cast_expression "(code **)(puVar30 + 0x175dbc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175dbc)" ( (binary_expression "puVar30 + 0x175dbc" identifier + number_literal) ))))) )) (argument_list "(iVar19,0,0x14000)" ( identifier , number_literal , number_literal ))) ;) (do_statement "do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );" do (compound_statement "{\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          }" { (expression_statement "iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);" (assignment_expression "iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19)" identifier = (call_expression "(**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175494))" ( (pointer_expression "**(code **)(puVar30 + 0x175494)" * (pointer_expression "*(code **)(puVar30 + 0x175494)" * (cast_expression "(code **)(puVar30 + 0x175494)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175494)" ( (binary_expression "puVar30 + 0x175494" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc,0x14000,iVar19)" ( identifier , number_literal , identifier )))) ;) (if_statement "if (iVar13 == 0) goto LAB_00287414;" if (parenthesized_expression "(iVar13 == 0)" ( (binary_expression "iVar13 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00287414;" goto statement_identifier ;)) (expression_statement "iVar22 = 0;" (assignment_expression "iVar22 = 0" identifier = number_literal) ;) (if_statement "if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }" if (parenthesized_expression "(0 < iVar13)" ( (binary_expression "0 < iVar13" number_literal < identifier) )) (compound_statement "{\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }" { (do_statement "do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);" do (compound_statement "{\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              }" { (expression_statement "iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);" (assignment_expression "iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22)" identifier = (call_expression "(**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22)" (parenthesized_expression "(**(code **)(puVar30 + 0x17607c))" ( (pointer_expression "**(code **)(puVar30 + 0x17607c)" * (pointer_expression "*(code **)(puVar30 + 0x17607c)" * (cast_expression "(code **)(puVar30 + 0x17607c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17607c)" ( (binary_expression "puVar30 + 0x17607c" identifier + number_literal) ))))) )) (argument_list "(iVar3,iVar13 - iVar22,iVar19 + iVar22)" ( identifier , (binary_expression "iVar13 - iVar22" identifier - identifier) , (binary_expression "iVar19 + iVar22" identifier + identifier) )))) ;) (if_statement "if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }" if (parenthesized_expression "(iVar14 < 1)" ( (binary_expression "iVar14 < 1" identifier < number_literal) )) (compound_statement "{\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }" { (if_statement "if (iVar22 < iVar13) goto LAB_00287414;" if (parenthesized_expression "(iVar22 < iVar13)" ( (binary_expression "iVar22 < iVar13" identifier < identifier) )) (goto_statement "goto LAB_00287414;" goto statement_identifier ;)) (break_statement "break;" break ;) })) (expression_statement "iVar22 = iVar22 + iVar14;" (assignment_expression "iVar22 = iVar22 + iVar14" identifier = (binary_expression "iVar22 + iVar14" identifier + identifier)) ;) }) while (parenthesized_expression "(iVar22 < iVar13)" ( (binary_expression "iVar22 < iVar13" identifier < identifier) )) ;) })) }) while (parenthesized_expression "( true )" ( true )) ;) })) (labeled_statement "LAB_00287424:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);" statement_identifier : (expression_statement "uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x1754cc))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x1754cc))" ( (pointer_expression "**(code **)(puVar30 + 0x1754cc)" * (pointer_expression "*(code **)(puVar30 + 0x1754cc)" * (cast_expression "(code **)(puVar30 + 0x1754cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1754cc)" ( (binary_expression "puVar30 + 0x1754cc" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;)) (expression_statement "(**(code **)(puVar30 + 0x175ba0))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175ba0))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ba0))" ( (pointer_expression "**(code **)(puVar30 + 0x175ba0)" * (pointer_expression "*(code **)(puVar30 + 0x175ba0)" * (cast_expression "(code **)(puVar30 + 0x175ba0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175ba0)" ( (binary_expression "puVar30 + 0x175ba0" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04)" identifier = (call_expression "(**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04)" (parenthesized_expression "(**(code **)(puVar30 + 0x175dac))" ( (pointer_expression "**(code **)(puVar30 + 0x175dac)" * (pointer_expression "*(code **)(puVar30 + 0x175dac)" * (cast_expression "(code **)(puVar30 + 0x175dac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175dac)" ( (binary_expression "puVar30 + 0x175dac" identifier + number_literal) ))))) )) (argument_list "(uVar15,extraout_v1_04)" ( identifier , identifier )))) ;) (if_statement "if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" { (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "(**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);" (call_expression "(**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d80))" ( (pointer_expression "**(code **)(puVar30 + 0x175d80)" * (pointer_expression "*(code **)(puVar30 + 0x175d80)" * (cast_expression "(code **)(puVar30 + 0x175d80)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d80)" ( (binary_expression "puVar30 + 0x175d80" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x174fb4) + 0x17f0" (pointer_expression "*(int *)(puVar30 + 0x174fb4)" * (cast_expression "(int *)(puVar30 + 0x174fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb4)" ( (binary_expression "puVar30 + 0x174fb4" identifier + number_literal) )))) + number_literal) , identifier , identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x1754e4))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x1754e4))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x1754e4))" ( (pointer_expression "**(code **)(puVar30 + 0x1754e4)" * (pointer_expression "*(code **)(puVar30 + 0x1754e4)" * (cast_expression "(code **)(puVar30 + 0x1754e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1754e4)" ( (binary_expression "puVar30 + 0x1754e4" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;) (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "iVar3 = *(int *)(puVar30 + 0x174fb0);" (assignment_expression "iVar3 = *(int *)(puVar30 + 0x174fb0)" identifier = (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) ))))) ;) }) (else_clause "else {\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }" else (compound_statement "{\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }" { (expression_statement "iVar3 = *(int *)(puVar30 + 0x174fb0);" (assignment_expression "iVar3 = *(int *)(puVar30 + 0x174fb0)" identifier = (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) ))))) ;) }))) (expression_statement "iVar2 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4);" (assignment_expression "iVar2 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4)" identifier = (call_expression "(**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4)" (parenthesized_expression "(**(code **)(puVar30 + 0x1757f8))" ( (pointer_expression "**(code **)(puVar30 + 0x1757f8)" * (pointer_expression "*(code **)(puVar30 + 0x1757f8)" * (cast_expression "(code **)(puVar30 + 0x1757f8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1757f8)" ( (binary_expression "puVar30 + 0x1757f8" identifier + number_literal) ))))) )) (argument_list "(iVar2,iVar3 + 0x78d4)" ( identifier , (binary_expression "iVar3 + 0x78d4" identifier + number_literal) )))) ;) (if_statement "if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar2 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);\n        (**(code **)(puVar30 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar2);\n      }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n        iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar2 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);\n        (**(code **)(puVar30 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar2);\n      }" { (expression_statement "iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);" (assignment_expression "iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2)" identifier = (call_expression "(**(code **)(puVar30 + 0x175cf4))(0,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175cf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175cf4)" * (pointer_expression "*(code **)(puVar30 + 0x175cf4)" * (cast_expression "(code **)(puVar30 + 0x175cf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175cf4)" ( (binary_expression "puVar30 + 0x175cf4" identifier + number_literal) ))))) )) (argument_list "(0,param_2)" ( number_literal , identifier )))) ;) (if_statement "if (iVar2 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" { (expression_statement "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1)" identifier = (call_expression "(**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(uStack_10d4,1)" ( identifier , number_literal )))) ;) (if_statement "if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" { (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar2);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar2)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "(**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);" (call_expression "(**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759b0))" ( (pointer_expression "**(code **)(puVar30 + 0x1759b0)" * (pointer_expression "*(code **)(puVar30 + 0x1759b0)" * (cast_expression "(code **)(puVar30 + 0x1759b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1759b0)" ( (binary_expression "puVar30 + 0x1759b0" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar2 + 0x3348),iVar3)" ( (pointer_expression "*(undefined4 *)(iVar2 + 0x3348)" * (cast_expression "(undefined4 *)(iVar2 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x3348)" ( (binary_expression "iVar2 + 0x3348" identifier + number_literal) )))) , identifier ))) ;) (expression_statement "iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1)" identifier = (call_expression "(**(code **)(puVar30 + 0x175bf4))(0x14000,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(0x14000,1)" ( number_literal , number_literal )))) ;) (if_statement "if (iVar3 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }" if (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (compound_statement "{\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }" { (expression_statement "(**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);" (call_expression "(**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000)" (parenthesized_expression "(**(code **)(puVar30 + 0x175dbc))" ( (pointer_expression "**(code **)(puVar30 + 0x175dbc)" * (pointer_expression "*(code **)(puVar30 + 0x175dbc)" * (cast_expression "(code **)(puVar30 + 0x175dbc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175dbc)" ( (binary_expression "puVar30 + 0x175dbc" identifier + number_literal) ))))) )) (argument_list "(iVar3,0,0x14000)" ( identifier , number_literal , number_literal ))) ;) (do_statement "do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );" do (compound_statement "{\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          }" { (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175494))" ( (pointer_expression "**(code **)(puVar30 + 0x175494)" * (pointer_expression "*(code **)(puVar30 + 0x175494)" * (cast_expression "(code **)(puVar30 + 0x175494)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175494)" ( (binary_expression "puVar30 + 0x175494" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc,0x14000,iVar3)" ( identifier , number_literal , identifier )))) ;) (if_statement "if (iVar19 == 0) goto LAB_00287758;" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00287758;" goto statement_identifier ;)) (expression_statement "iVar13 = 0;" (assignment_expression "iVar13 = 0" identifier = number_literal) ;) (if_statement "if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }" if (parenthesized_expression "(0 < iVar19)" ( (binary_expression "0 < iVar19" number_literal < identifier) )) (compound_statement "{\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }" { (do_statement "do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);" do (compound_statement "{\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              }" { (expression_statement "iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);" (assignment_expression "iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13)" identifier = (call_expression "(**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13)" (parenthesized_expression "(**(code **)(puVar30 + 0x17607c))" ( (pointer_expression "**(code **)(puVar30 + 0x17607c)" * (pointer_expression "*(code **)(puVar30 + 0x17607c)" * (cast_expression "(code **)(puVar30 + 0x17607c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17607c)" ( (binary_expression "puVar30 + 0x17607c" identifier + number_literal) ))))) )) (argument_list "(iVar2,iVar19 - iVar13,iVar3 + iVar13)" ( identifier , (binary_expression "iVar19 - iVar13" identifier - identifier) , (binary_expression "iVar3 + iVar13" identifier + identifier) )))) ;) (if_statement "if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }" if (parenthesized_expression "(iVar22 < 1)" ( (binary_expression "iVar22 < 1" identifier < number_literal) )) (compound_statement "{\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }" { (if_statement "if (iVar13 < iVar19) goto LAB_00287758;" if (parenthesized_expression "(iVar13 < iVar19)" ( (binary_expression "iVar13 < iVar19" identifier < identifier) )) (goto_statement "goto LAB_00287758;" goto statement_identifier ;)) (break_statement "break;" break ;) })) (expression_statement "iVar13 = iVar13 + iVar22;" (assignment_expression "iVar13 = iVar13 + iVar22" identifier = (binary_expression "iVar13 + iVar22" identifier + identifier)) ;) }) while (parenthesized_expression "(iVar13 < iVar19)" ( (binary_expression "iVar13 < iVar19" identifier < identifier) )) ;) })) }) while (parenthesized_expression "( true )" ( true )) ;) })) (labeled_statement "LAB_00287768:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);" statement_identifier : (expression_statement "uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2)" identifier = (call_expression "(**(code **)(puVar30 + 0x1754cc))(iVar2)" (parenthesized_expression "(**(code **)(puVar30 + 0x1754cc))" ( (pointer_expression "**(code **)(puVar30 + 0x1754cc)" * (pointer_expression "*(code **)(puVar30 + 0x1754cc)" * (cast_expression "(code **)(puVar30 + 0x1754cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1754cc)" ( (binary_expression "puVar30 + 0x1754cc" identifier + number_literal) ))))) )) (argument_list "(iVar2)" ( identifier )))) ;)) (expression_statement "(**(code **)(puVar30 + 0x175ba0))(iVar2);" (call_expression "(**(code **)(puVar30 + 0x175ba0))(iVar2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ba0))" ( (pointer_expression "**(code **)(puVar30 + 0x175ba0)" * (pointer_expression "*(code **)(puVar30 + 0x175ba0)" * (cast_expression "(code **)(puVar30 + 0x175ba0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175ba0)" ( (binary_expression "puVar30 + 0x175ba0" identifier + number_literal) ))))) )) (argument_list "(iVar2)" ( identifier ))) ;) (expression_statement "iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05)" identifier = (call_expression "(**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05)" (parenthesized_expression "(**(code **)(puVar30 + 0x175dac))" ( (pointer_expression "**(code **)(puVar30 + 0x175dac)" * (pointer_expression "*(code **)(puVar30 + 0x175dac)" * (cast_expression "(code **)(puVar30 + 0x175dac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175dac)" ( (binary_expression "puVar30 + 0x175dac" identifier + number_literal) ))))) )) (argument_list "(uVar15,extraout_v1_05)" ( identifier , identifier )))) ;) (if_statement "if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" { (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar2 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar2 + 0x3348)" * (cast_expression "(undefined4 *)(iVar2 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x3348)" ( (binary_expression "iVar2 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar2);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar2)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "(**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);" (call_expression "(**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d80))" ( (pointer_expression "**(code **)(puVar30 + 0x175d80)" * (pointer_expression "*(code **)(puVar30 + 0x175d80)" * (cast_expression "(code **)(puVar30 + 0x175d80)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d80)" ( (binary_expression "puVar30 + 0x175d80" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x174fb8) + 0x76a8" (pointer_expression "*(int *)(puVar30 + 0x174fb8)" * (cast_expression "(int *)(puVar30 + 0x174fb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb8)" ( (binary_expression "puVar30 + 0x174fb8" identifier + number_literal) )))) + number_literal) , identifier , identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x1754e4))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x1754e4))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x1754e4))" ( (pointer_expression "**(code **)(puVar30 + 0x1754e4)" * (pointer_expression "*(code **)(puVar30 + 0x1754e4)" * (cast_expression "(code **)(puVar30 + 0x1754e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1754e4)" ( (binary_expression "puVar30 + 0x1754e4" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar2 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar2 + 0x3348)" * (cast_expression "(undefined4 *)(iVar2 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x3348)" ( (binary_expression "iVar2 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar2);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar2)" ( identifier ))) ;) })) (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc);" (assignment_expression "pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc)" identifier = (cast_expression "(char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar30 + 0x175b34))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175b34))" ( (pointer_expression "**(code **)(puVar30 + 0x175b34)" * (pointer_expression "*(code **)(puVar30 + 0x175b34)" * (cast_expression "(code **)(puVar30 + 0x175b34)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175b34)" ( (binary_expression "puVar30 + 0x175b34" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))))) ;) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "(**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x53d,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x53d,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x53d,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) }))) (labeled_statement "LAB_00286534:\n  pcStack_10fc = (char *)0x0;" statement_identifier : (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (labeled_statement "LAB_00287858:\n  if (iStack_84 != **(int **)(puVar30 + 0x175918)) {\n    pcVar31 = *(code **)(puVar30 + 0x17574c);\n    (*pcVar31)();\n    iVar19 = *(int *)(pcVar31 + 0x171abc);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x483c);\n    iVar3 = *(int *)(pcVar31 + 0x171dbc) + 0x4930;\n    *(int *)(iVar20 + 0x18) = iVar3;\n    iVar2 = *(int *)(pcVar31 + 0x171dbc) + 0x3578;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4820);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4800);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47dc);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47c0);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47a8);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4788);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d8,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78dc,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4760);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e8,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78f4,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    return (char *)0x810;\n  }" statement_identifier : (if_statement "if (iStack_84 != **(int **)(puVar30 + 0x175918)) {\n    pcVar31 = *(code **)(puVar30 + 0x17574c);\n    (*pcVar31)();\n    iVar19 = *(int *)(pcVar31 + 0x171abc);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x483c);\n    iVar3 = *(int *)(pcVar31 + 0x171dbc) + 0x4930;\n    *(int *)(iVar20 + 0x18) = iVar3;\n    iVar2 = *(int *)(pcVar31 + 0x171dbc) + 0x3578;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4820);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4800);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47dc);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47c0);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47a8);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4788);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d8,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78dc,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4760);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e8,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78f4,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    return (char *)0x810;\n  }" if (parenthesized_expression "(iStack_84 != **(int **)(puVar30 + 0x175918))" ( (binary_expression "iStack_84 != **(int **)(puVar30 + 0x175918)" identifier != (pointer_expression "**(int **)(puVar30 + 0x175918)" * (pointer_expression "*(int **)(puVar30 + 0x175918)" * (cast_expression "(int **)(puVar30 + 0x175918)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175918)" ( (binary_expression "puVar30 + 0x175918" identifier + number_literal) )))))) )) (compound_statement "{\n    pcVar31 = *(code **)(puVar30 + 0x17574c);\n    (*pcVar31)();\n    iVar19 = *(int *)(pcVar31 + 0x171abc);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x483c);\n    iVar3 = *(int *)(pcVar31 + 0x171dbc) + 0x4930;\n    *(int *)(iVar20 + 0x18) = iVar3;\n    iVar2 = *(int *)(pcVar31 + 0x171dbc) + 0x3578;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4820);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4800);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47dc);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47c0);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47a8);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4788);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d8,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78dc,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4760);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e8,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78f4,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    return (char *)0x810;\n  }" { (expression_statement "pcVar31 = *(code **)(puVar30 + 0x17574c);" (assignment_expression "pcVar31 = *(code **)(puVar30 + 0x17574c)" identifier = (pointer_expression "*(code **)(puVar30 + 0x17574c)" * (cast_expression "(code **)(puVar30 + 0x17574c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17574c)" ( (binary_expression "puVar30 + 0x17574c" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar31)();" (call_expression "(*pcVar31)()" (parenthesized_expression "(*pcVar31)" ( (pointer_expression "*pcVar31" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "iVar19 = *(int *)(pcVar31 + 0x171abc);" (assignment_expression "iVar19 = *(int *)(pcVar31 + 0x171abc)" identifier = (pointer_expression "*(int *)(pcVar31 + 0x171abc)" * (cast_expression "(int *)(pcVar31 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171abc)" ( (binary_expression "pcVar31 + 0x171abc" identifier + number_literal) ))))) ;) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x483c);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x483c)" identifier = (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x483c)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" * (cast_expression "(code **)(pcVar31 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1727d0)" ( (binary_expression "pcVar31 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x483c)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x7890" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" * (cast_expression "(int *)(pcVar31 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171abc)" ( (binary_expression "pcVar31 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171b2c) + -0x483c" (pointer_expression "*(int *)(pcVar31 + 0x171b2c)" * (cast_expression "(int *)(pcVar31 + 0x171b2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171b2c)" ( (binary_expression "pcVar31 + 0x171b2c" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "iVar3 = *(int *)(pcVar31 + 0x171dbc) + 0x4930;" (assignment_expression "iVar3 = *(int *)(pcVar31 + 0x171dbc) + 0x4930" identifier = (binary_expression "*(int *)(pcVar31 + 0x171dbc) + 0x4930" (pointer_expression "*(int *)(pcVar31 + 0x171dbc)" * (cast_expression "(int *)(pcVar31 + 0x171dbc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171dbc)" ( (binary_expression "pcVar31 + 0x171dbc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar2 = *(int *)(pcVar31 + 0x171dbc) + 0x3578;" (assignment_expression "iVar2 = *(int *)(pcVar31 + 0x171dbc) + 0x3578" identifier = (binary_expression "*(int *)(pcVar31 + 0x171dbc) + 0x3578" (pointer_expression "*(int *)(pcVar31 + 0x171dbc)" * (cast_expression "(int *)(pcVar31 + 0x171dbc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171dbc)" ( (binary_expression "pcVar31 + 0x171dbc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" * (cast_expression "(code **)(pcVar31 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1720b0)" ( (binary_expression "pcVar31 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4820);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4820)" identifier = (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4820)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" * (cast_expression "(code **)(pcVar31 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1727d0)" ( (binary_expression "pcVar31 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4820)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x78a0" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" * (cast_expression "(int *)(pcVar31 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171abc)" ( (binary_expression "pcVar31 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171b2c) + -0x4820" (pointer_expression "*(int *)(pcVar31 + 0x171b2c)" * (cast_expression "(int *)(pcVar31 + 0x171b2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171b2c)" ( (binary_expression "pcVar31 + 0x171b2c" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" * (cast_expression "(code **)(pcVar31 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1720b0)" ( (binary_expression "pcVar31 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4800);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4800)" identifier = (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4800)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" * (cast_expression "(code **)(pcVar31 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1727d0)" ( (binary_expression "pcVar31 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4800)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x78ac" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" * (cast_expression "(int *)(pcVar31 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171abc)" ( (binary_expression "pcVar31 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171b2c) + -0x4800" (pointer_expression "*(int *)(pcVar31 + 0x171b2c)" * (cast_expression "(int *)(pcVar31 + 0x171b2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171b2c)" ( (binary_expression "pcVar31 + 0x171b2c" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" * (cast_expression "(code **)(pcVar31 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1720b0)" ( (binary_expression "pcVar31 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47dc);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47dc)" identifier = (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47dc)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" * (cast_expression "(code **)(pcVar31 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1727d0)" ( (binary_expression "pcVar31 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47dc)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x78b8" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" * (cast_expression "(int *)(pcVar31 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171abc)" ( (binary_expression "pcVar31 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171b2c) + -0x47dc" (pointer_expression "*(int *)(pcVar31 + 0x171b2c)" * (cast_expression "(int *)(pcVar31 + 0x171b2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171b2c)" ( (binary_expression "pcVar31 + 0x171b2c" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" * (cast_expression "(code **)(pcVar31 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1720b0)" ( (binary_expression "pcVar31 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47c0);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47c0)" identifier = (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47c0)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" * (cast_expression "(code **)(pcVar31 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1727d0)" ( (binary_expression "pcVar31 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47c0)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x78c0" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" * (cast_expression "(int *)(pcVar31 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171abc)" ( (binary_expression "pcVar31 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171b2c) + -0x47c0" (pointer_expression "*(int *)(pcVar31 + 0x171b2c)" * (cast_expression "(int *)(pcVar31 + 0x171b2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171b2c)" ( (binary_expression "pcVar31 + 0x171b2c" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" * (cast_expression "(code **)(pcVar31 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1720b0)" ( (binary_expression "pcVar31 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47a8);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47a8)" identifier = (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47a8)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" * (cast_expression "(code **)(pcVar31 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1727d0)" ( (binary_expression "pcVar31 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47a8)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x78cc" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" * (cast_expression "(int *)(pcVar31 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171abc)" ( (binary_expression "pcVar31 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171b2c) + -0x47a8" (pointer_expression "*(int *)(pcVar31 + 0x171b2c)" * (cast_expression "(int *)(pcVar31 + 0x171b2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171b2c)" ( (binary_expression "pcVar31 + 0x171b2c" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" * (cast_expression "(code **)(pcVar31 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1720b0)" ( (binary_expression "pcVar31 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4788);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4788)" identifier = (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4788)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" * (cast_expression "(code **)(pcVar31 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1727d0)" ( (binary_expression "pcVar31 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4788)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x78d4" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" * (cast_expression "(int *)(pcVar31 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171abc)" ( (binary_expression "pcVar31 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171b2c) + -0x4788" (pointer_expression "*(int *)(pcVar31 + 0x171b2c)" * (cast_expression "(int *)(pcVar31 + 0x171b2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171b2c)" ( (binary_expression "pcVar31 + 0x171b2c" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" * (cast_expression "(code **)(pcVar31 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1720b0)" ( (binary_expression "pcVar31 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (expression_statement "iVar13 = *(int *)(pcVar31 + 0x171b2c);" (assignment_expression "iVar13 = *(int *)(pcVar31 + 0x171b2c)" identifier = (pointer_expression "*(int *)(pcVar31 + 0x171b2c)" * (cast_expression "(int *)(pcVar31 + 0x171b2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171b2c)" ( (binary_expression "pcVar31 + 0x171b2c" identifier + number_literal) ))))) ;) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d8,iVar13 + -0x4774);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d8,iVar13 + -0x4774)" identifier = (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d8,iVar13 + -0x4774)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" * (cast_expression "(code **)(pcVar31 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1727d0)" ( (binary_expression "pcVar31 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d8,iVar13 + -0x4774)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x78d8" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" * (cast_expression "(int *)(pcVar31 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171abc)" ( (binary_expression "pcVar31 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar13 + -0x4774" identifier + number_literal) )))) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" * (cast_expression "(code **)(pcVar31 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1720b0)" ( (binary_expression "pcVar31 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78dc,iVar13 + -0x4774);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78dc,iVar13 + -0x4774)" identifier = (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78dc,iVar13 + -0x4774)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" * (cast_expression "(code **)(pcVar31 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1727d0)" ( (binary_expression "pcVar31 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78dc,iVar13 + -0x4774)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x78dc" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" * (cast_expression "(int *)(pcVar31 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171abc)" ( (binary_expression "pcVar31 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar13 + -0x4774" identifier + number_literal) )))) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" * (cast_expression "(code **)(pcVar31 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1720b0)" ( (binary_expression "pcVar31 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4760);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4760)" identifier = (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4760)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" * (cast_expression "(code **)(pcVar31 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1727d0)" ( (binary_expression "pcVar31 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4760)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x78e0" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" * (cast_expression "(int *)(pcVar31 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171abc)" ( (binary_expression "pcVar31 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171b2c) + -0x4760" (pointer_expression "*(int *)(pcVar31 + 0x171b2c)" * (cast_expression "(int *)(pcVar31 + 0x171b2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171b2c)" ( (binary_expression "pcVar31 + 0x171b2c" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" * (cast_expression "(code **)(pcVar31 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1720b0)" ( (binary_expression "pcVar31 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (expression_statement "iVar13 = *(int *)(pcVar31 + 0x171b2c);" (assignment_expression "iVar13 = *(int *)(pcVar31 + 0x171b2c)" identifier = (pointer_expression "*(int *)(pcVar31 + 0x171b2c)" * (cast_expression "(int *)(pcVar31 + 0x171b2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171b2c)" ( (binary_expression "pcVar31 + 0x171b2c" identifier + number_literal) ))))) ;) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e8,iVar13 + -0x4750);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e8,iVar13 + -0x4750)" identifier = (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e8,iVar13 + -0x4750)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" * (cast_expression "(code **)(pcVar31 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1727d0)" ( (binary_expression "pcVar31 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e8,iVar13 + -0x4750)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x78e8" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" * (cast_expression "(int *)(pcVar31 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171abc)" ( (binary_expression "pcVar31 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar13 + -0x4750" identifier + number_literal) )))) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" * (cast_expression "(code **)(pcVar31 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1720b0)" ( (binary_expression "pcVar31 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78f4,iVar13 + -0x4750);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78f4,iVar13 + -0x4750)" identifier = (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78f4,iVar13 + -0x4750)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" * (cast_expression "(code **)(pcVar31 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1727d0)" ( (binary_expression "pcVar31 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78f4,iVar13 + -0x4750)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x78f4" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" * (cast_expression "(int *)(pcVar31 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171abc)" ( (binary_expression "pcVar31 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar13 + -0x4750" identifier + number_literal) )))) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" * (cast_expression "(code **)(pcVar31 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1720b0)" ( (binary_expression "pcVar31 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (return_statement "return (char *)0x810;" return (cast_expression "(char *)0x810" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ;) }))) (return_statement "return pcStack_10fc;" return identifier ;) })))
(translation_unit "/* WARNING: Enum "GravityType": Some values do not have unique names */\n/* WARNING: Enum "DisposeType": Some values do not have unique names */\n/* WARNING: Enum "ChannelType": Some values do not have unique names */\n/* WARNING: Enum "PixelChannel": Some values do not have unique names */\n/* WARNING: Enum "ExceptionType": Some values do not have unique names */\n\nsize_t convertHTMLcodes(char *s)\n\n{\n  undefined1 uVar16;\n  char *pcVar1;\n  int iVar2;\n  int iVar3;\n  size_t sVar4;\n  undefined1 *puVar5;\n  char cVar17;\n  int iVar6;\n  int iVar7;\n  byte bVar18;\n  int iVar8;\n  int iVar9;\n  int iVar10;\n  Image *ofile;\n  Image *ifile;\n  undefined4 uVar11;\n  uint uVar12;\n  int iVar13;\n  int iVar14;\n  undefined4 uVar15;\n  undefined4 extraout_v1;\n  uint extraout_v1_00;\n  uint extraout_v1_01;\n  undefined4 extraout_v1_02;\n  undefined4 extraout_v1_03;\n  undefined4 extraout_v1_04;\n  undefined4 extraout_v1_05;\n  char *in_a1;\n  int iVar19;\n  int iVar20;\n  undefined1 *puVar21;\n  int iVar22;\n  char *unaff_s1;\n  char *pcVar23;\n  char *unaff_s2;\n  int iVar24;\n  int unaff_s3;\n  undefined4 *puVar25;\n  char *unaff_s4;\n  int iVar26;\n  BlobInfo *pBVar27;\n  char *unaff_s5;\n  char *pcVar28;\n  int unaff_s6;\n  int iVar29;\n  uint uVar30;\n  int unaff_s7;\n  undefined *puVar31;\n  int *unaff_s8;\n  code *pcVar32;\n  Image *pIStack_10fc;\n  undefined1 *puStack_10ec;\n  uint uStack_10e4;\n  undefined1 *puStack_10dc;\n  uint uStack_10d4;\n  int iStack_10cc;\n  uint uStack_10c8;\n  undefined1 uStack_10b0;\n  undefined1 uStack_10af;\n  char cStack_10ae;\n  undefined1 uStack_10ad;\n  undefined4 uStack_10ac;\n  int iStack_10a8;\n  undefined4 uStack_10a4;\n  undefined4 uStack_10a0;\n  undefined4 uStack_109c;\n  undefined4 uStack_1098;\n  undefined1 auStack_1094 [4];\n  undefined4 uStack_1090;\n  undefined4 uStack_108c;\n  undefined1 uStack_1088;\n  undefined1 auStack_1084 [4096];\n  int iStack_84;\n  char *pcStack_80;\n  char *pcStack_7c;\n  char *pcStack_78;\n  int iStack_74;\n  char *pcStack_70;\n  char *pcStack_6c;\n  int iStack_68;\n  int iStack_64;\n  int *piStack_60;\n  code *pcStack_5c;\n  int value;\n  int local_2c;\n  \n  puVar31 = PTR_s__003f9950;\n  local_2c = *(int *)PTR___stack_chk_guard_003fa248;\n  if (*s == '\0') {\n    pcVar1 = (char *)0x0;\n  }\n  else {\n    unaff_s2 = s;\n    if (*s == ';') {\n      pcVar1 = (char *)0x1;\nLAB_0028466c:\n      if (s == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (s[1] == '#')) {\n          in_a1 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(s,in_a1,&value);\n          unaff_s4 = puVar31 + -0x46bf;\n          if (iVar20 == 1) {\n            if (s[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = s + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              in_a1 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(s + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (s[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (s[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *s = (char)value;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar31 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar28 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar28;\n          if ((int)pcVar28 <= (int)pcVar1) {\n            if (s != unaff_s4) {\n              iVar20 = (int)*s;\n              unaff_s5 = s;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar28 + -1),\n                     unaff_s4 + (int)(pcVar28 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            in_a1 = s + (int)pcVar28;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(in_a1);\n            (*(code *)PTR_memmove_003f9f68)(s + 1,in_a1,iVar20 + 1);\n            *s = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar28 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar1 = s + 1;\n      iVar20 = 1;\n      in_a1 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }\n  }\nLAB_00284620:\n  if (local_2c == *(int *)PTR___stack_chk_guard_003fa248) {\n    return (size_t)pcVar1;\n  }\n  pcVar32 = ReadMETAImage;\n  iVar20 = local_2c;\n  puVar31 = PTR___stack_chk_fail_003fa07c;\n  (*(code *)PTR___stack_chk_fail_003fa07c)();\n  iStack_84 = **(int **)(puVar31 + 0x175918);\n  pcStack_80 = pcVar1;\n  pcStack_7c = unaff_s1;\n  pcStack_78 = unaff_s2;\n  iStack_74 = unaff_s3;\n  pcStack_70 = unaff_s4;\n  pcStack_6c = unaff_s5;\n  iStack_68 = unaff_s6;\n  iStack_64 = unaff_s7;\n  piStack_60 = unaff_s8;\n  pcStack_5c = pcVar32;\n  if (iVar20 == 0) {\n    sVar4 = (**(code **)(puVar31 + 0x175cf0))\n                      (*(int *)(puVar31 + 0x174fb0) + 0x3d48,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4a5,*(int *)(puVar31 + 0x175020) + -0x46f0);\n    return sVar4;\n  }\n  if (*(int *)(iVar20 + 0x3214) != -0x54535255) {\n    sVar4 = (**(code **)(puVar31 + 0x175cf0))\n                      (*(int *)(puVar31 + 0x174fb0) + 0x3d70,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4a6,*(int *)(puVar31 + 0x175020) + -0x46f0);\n    return sVar4;\n  }\n  if (*(int *)(iVar20 + 0x3210) != 0) {\n    (**(code **)(puVar31 + 0x1758c8))\n              (0x8000,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x4a8,*(int *)(puVar31 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210);\n  }\n  if (in_a1 == (char *)0x0) {\n    sVar4 = (**(code **)(puVar31 + 0x175cf0))\n                      (*(int *)(puVar31 + 0x174fb0) + 0x4c80,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4aa,*(int *)(puVar31 + 0x175020) + -0x46f0);\n    return sVar4;\n  }\n  if (*(int *)(in_a1 + 0x1c) != -0x54535255) {\n    sVar4 = (**(code **)(puVar31 + 0x175cf0))\n                      (*(int *)(puVar31 + 0x174fb0) + 0x595c,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4ab,*(int *)(puVar31 + 0x175020) + -0x46f0);\n    return sVar4;\n  }\n  pIStack_10fc = (Image *)(**(code **)(puVar31 + 0x175cf4))(iVar20,in_a1);\n  iVar2 = (**(code **)(puVar31 + 0x175934))(iVar20,pIStack_10fc,2,in_a1);\n  if (iVar2 == 0) {\n    (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n    pIStack_10fc = (Image *)0x0;\n    goto LAB_00287858;\n  }\n  pIStack_10fc->columns = 1;\n  pIStack_10fc->rows = 1;\n  iVar2 = (**(code **)(puVar31 + 0x175578))(pIStack_10fc,in_a1);\n  if (iVar2 == 0) {\n    (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n    pIStack_10fc = (Image *)0x0;\n    goto LAB_00287858;\n  }\n  iVar2 = iVar20 + 0x210;\n  iVar3 = (**(code **)(puVar31 + 0x175d04))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x7890,4);\n  if (iVar3 == 0) {\n    iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n    if (iVar3 == 0) {\n      (**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x4c2,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n      if (pIStack_10fc != (Image *)0x0) {\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n        pIStack_10fc = (Image *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(1,1);\n    if (puVar5 == (undefined1 *)0x0) {\n      (**(code **)(puVar31 + 0x175634))(iVar3);\n      (**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x4c7,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n      if (pIStack_10fc != (Image *)0x0) {\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n        pIStack_10fc = (Image *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    *puVar5 = 0;\n    (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),puVar5);\n    iVar19 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78a0);\n    if (iVar19 != 0) {\n      iVar19 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78ac);\n      if (iVar19 == 0) {\n        puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(0x1000,1);\n        if (puVar5 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar31 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar26 = 0;\n          iVar13 = *(int *)(puVar31 + 0x175020);\n          iVar22 = *(int *)(puVar31 + 0x1752b0);\n          iVar14 = *(int *)(puVar31 + 0x174fb8);\n          puVar21 = puVar5;\nLAB_00285dec:\n          do {\n            iVar9 = (**(code **)(puVar31 + 0x175a78))(pIStack_10fc);\n            if ((iVar9 != -1) && (iVar9 != 10)) {\n              iVar10 = (**(code **)(puVar31 + 0x175e30))(pIStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar5;\n              if (iVar10 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1)\n                  ;\n                  if (puVar5 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar5 + iVar24;\n                }\n                *puVar21 = (char)iVar9;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar5 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar26 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n            if (iVar26 == 0) {\n              (**(code **)(puVar31 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar31 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar10 = *(int *)(puVar31 + 0x174fc8);\n            iVar24 = *(int *)(puVar31 + 0x174fb8) + -0x2d8;\n            iVar9 = 0;\n            while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                     (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar7 == 0) {\n              if (iVar9 == 0) {\n                iStack_10a8 = 0;\n                iVar8 = *(int *)(puVar31 + 0x174fc8);\n                iVar29 = *(int *)(puVar31 + 0x174fb0);\n                iVar7 = 0;\nLAB_002857fc:\n                do {\n                  iVar6 = (**(code **)(puVar31 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar6 != 0) goto LAB_00285914;\n                  if (iVar7 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar7 == 2) {\n                    iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar7 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                      (**(code **)(puVar31 + 0x175f24))(puStack_10ec,iVar19,iVar7 + 0x1000);\n                      iVar7 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar7 == 0) {\n                    iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                    if (iVar6 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar7 = iVar7 + 1;\n                } while( true );\n              }\n              if (iVar9 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar31 + 0x175a20))();\n              while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar7) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar7;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if ((iVar7 < 0) || (iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3), iVar7 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar31 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = iVar7 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n                  uVar30 = (uint)bVar18;\n                  if (uVar30 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar30);\n                  }\n                  iVar7 = uStack_10d4 + 7 + uVar30;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if (iVar8 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar7 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar7 + 4;\n                  iVar7 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      iVar7 = iVar7 + -1;\n                    } while (iVar7 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar9 = iVar9 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar7 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n                iVar9 = 2;\n              }\n            }\n            iVar26 = (**(code **)(puVar31 + 0x17575c))(iVar26);\n            iVar19 = (**(code **)(puVar31 + 0x17575c))(iVar19);\n            puVar21 = puVar5;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }\n      iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n      if (iVar19 != 0) {\n        (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }\n      uStack_10d4 = 1;\n      goto LAB_00286050;\n    }\n    puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(0x1000,1);\n    if (puVar5 == (undefined1 *)0x0) {\nLAB_0028544c:\n      uStack_10d4 = 0xffffffff;\n    }\n    else {\n      uVar15 = (**(code **)(puVar31 + 0x175bdc))();\n      iStack_10cc = 0x1000;\n      uStack_10d4 = 0;\n      uStack_10c8 = 0;\n      uStack_10e4 = 0;\n      cVar17 = '\0';\n      puStack_10dc = (undefined1 *)0x0;\n      iVar19 = 0;\n      iVar26 = 0;\n      iVar13 = *(int *)(puVar31 + 0x175020);\n      iVar22 = *(int *)(puVar31 + 0x1752b0);\n      iVar14 = *(int *)(puVar31 + 0x174fb8);\n      puVar21 = puVar5;\n      while( true ) {\n        while ((iVar9 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar9 != -1 &&\n               (iVar10 = (int)puVar21 - (int)puVar5, iVar9 != 10))) {\n          if (iStack_10cc <= iVar10 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1);\n            if (puVar5 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar5 + iVar10;\n          }\n          *puVar21 = (char)iVar9;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar5 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar26 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n        if (iVar26 == 0) {\n          (**(code **)(puVar31 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar31 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar10 = *(int *)(puVar31 + 0x174fc8);\n        iVar24 = *(int *)(puVar31 + 0x174fb8) + -0x2d8;\n        iVar9 = 0;\n        while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                 (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar7 == 0) {\n          if (iVar9 == 0) {\n            iStack_10a8 = 0;\n            iVar8 = *(int *)(puVar31 + 0x174fc8);\n            iVar29 = *(int *)(puVar31 + 0x174fb0);\n            iVar7 = 0;\nLAB_00284ff4:\n            do {\n              iVar6 = (**(code **)(puVar31 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar6 != 0) goto LAB_002850f4;\n              if (iVar7 == 1) {\n                uStack_10e4 = (**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar7 == 2) {\n                iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar7 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar7 == 0) {\n                iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                if (iVar6 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar7 = iVar7 + 1;\n            } while( true );\n          }\n          if (iVar9 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar31 + 0x175a20))();\n          while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar7) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar7;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }\n              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar31 + 0x1759bc))(iVar3);\n              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar31 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              iVar7 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              iVar7 = iVar7 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n              uVar30 = (uint)bVar18;\n              if (uVar30 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar30);\n              }\n              iVar7 = uStack_10d4 + 7 + uVar30;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n              if (iVar8 < 0) goto LAB_0028544c;\n              (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar7 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar7 + 4;\n              iVar7 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar9 = iVar9 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar7 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n              iVar7 = iVar7 + -1;\n            } while (iVar7 != -1);\n            iVar9 = 2;\n          }\n        }\n        iVar26 = (**(code **)(puVar31 + 0x17575c))(iVar26);\n        iVar19 = (**(code **)(puVar31 + 0x17575c))(iVar19);\n        puVar21 = puVar5;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10dc);\n        }\n      }\nLAB_0028573c:\n      (**(code **)(puVar31 + 0x175450))(uVar15);\n      if (iVar26 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar31 + 0x17575c))(iVar26);\n      }\nLAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar31 + 0x17575c))(iVar19);\n      }\n      if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar31 + 0x17575c))(puStack_10dc);\n      }\n      (**(code **)(puVar31 + 0x17575c))(puVar5);\n      if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }\nLAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar3);\n        (**(code **)(puVar31 + 0x175608))\n                  (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                   *(int *)(puVar31 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar31 + 0x174fb4) + 0x1854,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pIStack_10fc != (Image *)0x0) {\n          (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n          (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n          pIStack_10fc = (Image *)0x0;\n        }\n        goto LAB_00287858;\n      }\n      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n    }\n    (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n    goto LAB_00286050;\n  }\n  uStack_10d4 = 1;\n  goto LAB_00284a7c;\nLAB_00286038:\n  (**(code **)(puVar31 + 0x1756a8))(iVar19);\n  uStack_10d4 = 1;\n  goto LAB_00286050;\nLAB_00285f24:\n  (**(code **)(puVar31 + 0x175450))(uVar15);\n  if (iVar26 != 0) {\nLAB_00287be8:\n    (**(code **)(puVar31 + 0x17575c))(iVar26);\n  }\nLAB_00287bf8:\n  if (iVar19 != 0) {\n    (**(code **)(puVar31 + 0x17575c))(iVar19);\n  }\n  if (puStack_10ec != (undefined1 *)0x0) {\n    (**(code **)(puVar31 + 0x17575c))(puStack_10ec);\n  }\n  (**(code **)(puVar31 + 0x17575c))(puVar5);\n  if ((int)uStack_10c8 < 1) {\nLAB_00287cd8:\n    if (uStack_10d4 == 0) {\n      uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n      (**(code **)(puVar31 + 0x1756a8))(uVar15);\n      (**(code **)(puVar31 + 0x175634))(iVar3);\n      (**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x4e0,0x1a9,*(int *)(puVar31 + 0x174fb4) + 0x1854,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n      if (pIStack_10fc != (Image *)0x0) {\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n        pIStack_10fc = (Image *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n  }\n  else {\n    iVar19 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n    if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3), -1 < iVar19)) {\n      (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n      iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n      if (-1 < iVar19) goto LAB_00287cd8;\n    }\nLAB_00287db0:\n    uStack_10d4 = 0xffffffff;\n  }\n  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\nLAB_00286050:\n  uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3);\n  (**(code **)(puVar31 + 0x175ba0))(iVar3);\n  iVar19 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1);\n  if (iVar19 == 0) {\n    uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar31 + 0x1756a8))(uVar15);\n    (**(code **)(puVar31 + 0x175634))(iVar3);\n    (**(code **)(puVar31 + 0x175608))\n              (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x4ee,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78\n               ,iVar20 + 0x2210);\n    if (pIStack_10fc != (Image *)0x0) {\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      pIStack_10fc = (Image *)0x0;\n    }\n    goto LAB_00287858;\n  }\n  iVar13 = (**(code **)(puVar31 + 0x175d80))\n                     (pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + 0x17f8,iVar19,in_a1);\n  (**(code **)(puVar31 + 0x1754e4))(iVar19);\n  uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n  (**(code **)(puVar31 + 0x1756a8))(uVar15);\n  (**(code **)(puVar31 + 0x175634))(iVar3);\n  if (iVar13 == 0) {\n    (**(code **)(puVar31 + 0x175608))\n              (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x4f6,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78\n               ,iVar20 + 0x2210);\n    if (pIStack_10fc != (Image *)0x0) {\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      pIStack_10fc = (Image *)0x0;\n    }\n    goto LAB_00287858;\n  }\nLAB_00284a7c:\n  iVar3 = (**(code **)(puVar31 + 0x175d04))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78b8,4);\n  if (iVar3 == 0) {\n    (**(code **)(puVar31 + 0x175464))(auStack_1084,0x1000,*(int *)(puVar31 + 0x175020) + -0x4858,1);\n    ofile = (Image *)(**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n    if (ofile == (Image *)0x0) {\n      (**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x500,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n      if (pIStack_10fc != (Image *)0x0) {\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      }\n    }\n    else {\n      iVar3 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n      if (iVar3 == 0) {\n        (**(code **)(puVar31 + 0x175634))(ofile);\n        (**(code **)(puVar31 + 0x175608))\n                  (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                   *(int *)(puVar31 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pIStack_10fc != (Image *)0x0) {\n          (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n          (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n          pIStack_10fc = (Image *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar31 + 0x1759b0))(ofile->blob,iVar3);\n        iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78c0);\n        if (iVar3 != 0) {\n          iVar3 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n          if (iVar3 != 0) {\n            (**(code **)(puVar31 + 0x175dbc))(iVar3,0,0x14000);\n            do {\n              iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);\n              if (iVar19 == 0) goto LAB_00286b70;\n              iVar13 = 0;\n              if (0 < iVar19) {\n                do {\n                  iVar22 = (**(code **)(puVar31 + 0x17607c))(ofile,iVar19 - iVar13,iVar3 + iVar13);\n                  if (iVar22 < 1) {\n                    if (iVar13 < iVar19) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar13 = iVar13 + iVar22;\n                } while (iVar13 < iVar19);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(ofile);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar31 + 0x175020) + -0x48a4,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar31 + 0x175548))();\n          ifile = (Image *)(**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n          if (ifile == (Image *)0x0) {\n            uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n            (**(code **)(puVar31 + 0x1756a8))(uVar15);\n            (**(code **)(puVar31 + 0x175634))(ofile);\n            (**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            pBVar27 = ifile->blob;\n            uVar11 = (**(code **)(puVar31 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar31 + 0x175430))(uVar15);\n            (**(code **)(puVar31 + 0x1759b0))(pBVar27,uVar11,uVar15);\n            iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n            if (iVar3 == 0xff) {\n              iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n              iVar19 = *(int *)(puVar31 + 0x1752b0);\n              if (iVar3 == 0xd8) {\n                iVar3 = *(int *)(puVar31 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar3 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,0xff);\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc,ofile);\n                      uStack_10a0 = *(undefined4 *)(iVar3 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar3 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar3 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar3 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar3 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar3 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar3 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar13 = jpeg_transfer_1(ifile,ofile);\n                      } while (iVar13 != -1);\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if ((iVar13 != -1) &&\n                         (iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1)) {\n                        iVar22 = iVar13 * 0x100 + -2 + iVar22;\n                        do {\n                          if (iVar22 == 0) break;\n                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                          iVar22 = iVar22 + -1;\n                        } while (iVar13 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n                (**(code **)(puVar31 + 0x1756a8))(uVar15);\n                (**(code **)(puVar31 + 0x175634))(ifile);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n            (**(code **)(puVar31 + 0x1756a8))(uVar15);\n            (**(code **)(puVar31 + 0x175634))(ifile);\n            (**(code **)(puVar31 + 0x175634))(ofile);\n            (**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar31 + 0x175020) + -0x4850,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }\n    }\n    goto LAB_00286534;\n  }\n  iVar3 = *(int *)(puVar31 + 0x174fb0);\n  goto LAB_00284aa4;\nLAB_00286b70:\n  (**(code **)(puVar31 + 0x1756a8))(iVar3);\n  goto LAB_00286b84;\nLAB_00286f40:\n  (**(code **)(puVar31 + 0x1756a8))(iVar19);\n  goto LAB_00286f50;\nLAB_00287414:\n  (**(code **)(puVar31 + 0x1756a8))(iVar19);\n  goto LAB_00287424;\nLAB_00287758:\n  (**(code **)(puVar31 + 0x1756a8))(iVar3);\n  goto LAB_00287768;\nLAB_002867c8:\n  do {\n    iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n  } while (iVar3 != -1);\nLAB_002867e4:\n  uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n  (**(code **)(puVar31 + 0x1756a8))(uVar15);\n  (**(code **)(puVar31 + 0x175634))(ifile);\nLAB_00286b84:\n  uVar15 = (**(code **)(puVar31 + 0x1754cc))(ofile);\n  (**(code **)(puVar31 + 0x175ba0))(ofile);\n  iVar3 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_02);\n  if (iVar3 == 0) {\n    uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n    (**(code **)(puVar31 + 0x1756a8))(uVar15);\n    (**(code **)(puVar31 + 0x175634))(ofile);\n    (**(code **)(puVar31 + 0x175608))\n              (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x535,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78\n               ,iVar20 + 0x2210);\n    if (pIStack_10fc != (Image *)0x0) {\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      pIStack_10fc = (Image *)0x0;\n      goto LAB_00287858;\n    }\n  }\n  else {\n    iVar19 = (**(code **)(puVar31 + 0x175d80))(pIStack_10fc,auStack_1084,iVar3,in_a1);\n    (**(code **)(puVar31 + 0x1754e4))(iVar3);\n    uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n    (**(code **)(puVar31 + 0x1756a8))(uVar15);\n    (**(code **)(puVar31 + 0x175634))(ofile);\n    iVar3 = *(int *)(puVar31 + 0x174fb0);\n    if (iVar19 != 0) {\nLAB_00284aa4:\n      iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar3 + 0x78dc);\n      if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3);\n        (**(code **)(puVar31 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + -0x286c,iVar19,in_a1);\n        (**(code **)(puVar31 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar31 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar31 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }\n      iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar19 + 0x78e0);\n      if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3);\n        (**(code **)(puVar31 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + 0x17f0,iVar19,in_a1);\n        (**(code **)(puVar31 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar31 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar31 + 0x174fb0);\n      }\n      iVar2 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar3 + 0x78d4);\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n        if (iVar2 == 0) {\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar31 + 0x175634))(iVar2);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar31 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar31 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar2);\n        (**(code **)(puVar31 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar2);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb8) + 0x76a8,iVar3,in_a1);\n        (**(code **)(puVar31 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar2);\n      }\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      pIStack_10fc = (Image *)(**(code **)(puVar31 + 0x175b34))(pIStack_10fc);\n      goto LAB_00287858;\n    }\n    (**(code **)(puVar31 + 0x175608))\n              (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x53d,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78\n               ,iVar20 + 0x2210);\n    if (pIStack_10fc != (Image *)0x0) {\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      pIStack_10fc = (Image *)0x0;\n      goto LAB_00287858;\n    }\n  }\nLAB_00286534:\n  pIStack_10fc = (Image *)0x0;\nLAB_00287858:\n  if (iStack_84 != **(int **)(puVar31 + 0x175918)) {\n    pcVar32 = *(code **)(puVar31 + 0x17574c);\n    (*pcVar32)();\n    iVar19 = *(int *)(pcVar32 + 0x171abc);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x483c);\n    iVar3 = *(int *)(pcVar32 + 0x171dbc) + 0x4930;\n    *(int *)(iVar20 + 0x18) = iVar3;\n    iVar2 = *(int *)(pcVar32 + 0x171dbc) + 0x3578;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4820);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4800);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x47dc);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x47c0);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x47a8);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4788);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar32 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78d8,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78dc,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4760);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar32 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78e8,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78f4,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    return 0x810;\n  }\n  return (size_t)pIStack_10fc;\n}\n\n" comment comment comment comment comment (function_definition "size_t convertHTMLcodes(char *s)\n\n{\n  undefined1 uVar16;\n  char *pcVar1;\n  int iVar2;\n  int iVar3;\n  size_t sVar4;\n  undefined1 *puVar5;\n  char cVar17;\n  int iVar6;\n  int iVar7;\n  byte bVar18;\n  int iVar8;\n  int iVar9;\n  int iVar10;\n  Image *ofile;\n  Image *ifile;\n  undefined4 uVar11;\n  uint uVar12;\n  int iVar13;\n  int iVar14;\n  undefined4 uVar15;\n  undefined4 extraout_v1;\n  uint extraout_v1_00;\n  uint extraout_v1_01;\n  undefined4 extraout_v1_02;\n  undefined4 extraout_v1_03;\n  undefined4 extraout_v1_04;\n  undefined4 extraout_v1_05;\n  char *in_a1;\n  int iVar19;\n  int iVar20;\n  undefined1 *puVar21;\n  int iVar22;\n  char *unaff_s1;\n  char *pcVar23;\n  char *unaff_s2;\n  int iVar24;\n  int unaff_s3;\n  undefined4 *puVar25;\n  char *unaff_s4;\n  int iVar26;\n  BlobInfo *pBVar27;\n  char *unaff_s5;\n  char *pcVar28;\n  int unaff_s6;\n  int iVar29;\n  uint uVar30;\n  int unaff_s7;\n  undefined *puVar31;\n  int *unaff_s8;\n  code *pcVar32;\n  Image *pIStack_10fc;\n  undefined1 *puStack_10ec;\n  uint uStack_10e4;\n  undefined1 *puStack_10dc;\n  uint uStack_10d4;\n  int iStack_10cc;\n  uint uStack_10c8;\n  undefined1 uStack_10b0;\n  undefined1 uStack_10af;\n  char cStack_10ae;\n  undefined1 uStack_10ad;\n  undefined4 uStack_10ac;\n  int iStack_10a8;\n  undefined4 uStack_10a4;\n  undefined4 uStack_10a0;\n  undefined4 uStack_109c;\n  undefined4 uStack_1098;\n  undefined1 auStack_1094 [4];\n  undefined4 uStack_1090;\n  undefined4 uStack_108c;\n  undefined1 uStack_1088;\n  undefined1 auStack_1084 [4096];\n  int iStack_84;\n  char *pcStack_80;\n  char *pcStack_7c;\n  char *pcStack_78;\n  int iStack_74;\n  char *pcStack_70;\n  char *pcStack_6c;\n  int iStack_68;\n  int iStack_64;\n  int *piStack_60;\n  code *pcStack_5c;\n  int value;\n  int local_2c;\n  \n  puVar31 = PTR_s__003f9950;\n  local_2c = *(int *)PTR___stack_chk_guard_003fa248;\n  if (*s == '\0') {\n    pcVar1 = (char *)0x0;\n  }\n  else {\n    unaff_s2 = s;\n    if (*s == ';') {\n      pcVar1 = (char *)0x1;\nLAB_0028466c:\n      if (s == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (s[1] == '#')) {\n          in_a1 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(s,in_a1,&value);\n          unaff_s4 = puVar31 + -0x46bf;\n          if (iVar20 == 1) {\n            if (s[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = s + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              in_a1 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(s + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (s[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (s[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *s = (char)value;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar31 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar28 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar28;\n          if ((int)pcVar28 <= (int)pcVar1) {\n            if (s != unaff_s4) {\n              iVar20 = (int)*s;\n              unaff_s5 = s;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar28 + -1),\n                     unaff_s4 + (int)(pcVar28 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            in_a1 = s + (int)pcVar28;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(in_a1);\n            (*(code *)PTR_memmove_003f9f68)(s + 1,in_a1,iVar20 + 1);\n            *s = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar28 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar1 = s + 1;\n      iVar20 = 1;\n      in_a1 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }\n  }\nLAB_00284620:\n  if (local_2c == *(int *)PTR___stack_chk_guard_003fa248) {\n    return (size_t)pcVar1;\n  }\n  pcVar32 = ReadMETAImage;\n  iVar20 = local_2c;\n  puVar31 = PTR___stack_chk_fail_003fa07c;\n  (*(code *)PTR___stack_chk_fail_003fa07c)();\n  iStack_84 = **(int **)(puVar31 + 0x175918);\n  pcStack_80 = pcVar1;\n  pcStack_7c = unaff_s1;\n  pcStack_78 = unaff_s2;\n  iStack_74 = unaff_s3;\n  pcStack_70 = unaff_s4;\n  pcStack_6c = unaff_s5;\n  iStack_68 = unaff_s6;\n  iStack_64 = unaff_s7;\n  piStack_60 = unaff_s8;\n  pcStack_5c = pcVar32;\n  if (iVar20 == 0) {\n    sVar4 = (**(code **)(puVar31 + 0x175cf0))\n                      (*(int *)(puVar31 + 0x174fb0) + 0x3d48,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4a5,*(int *)(puVar31 + 0x175020) + -0x46f0);\n    return sVar4;\n  }\n  if (*(int *)(iVar20 + 0x3214) != -0x54535255) {\n    sVar4 = (**(code **)(puVar31 + 0x175cf0))\n                      (*(int *)(puVar31 + 0x174fb0) + 0x3d70,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4a6,*(int *)(puVar31 + 0x175020) + -0x46f0);\n    return sVar4;\n  }\n  if (*(int *)(iVar20 + 0x3210) != 0) {\n    (**(code **)(puVar31 + 0x1758c8))\n              (0x8000,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x4a8,*(int *)(puVar31 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210);\n  }\n  if (in_a1 == (char *)0x0) {\n    sVar4 = (**(code **)(puVar31 + 0x175cf0))\n                      (*(int *)(puVar31 + 0x174fb0) + 0x4c80,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4aa,*(int *)(puVar31 + 0x175020) + -0x46f0);\n    return sVar4;\n  }\n  if (*(int *)(in_a1 + 0x1c) != -0x54535255) {\n    sVar4 = (**(code **)(puVar31 + 0x175cf0))\n                      (*(int *)(puVar31 + 0x174fb0) + 0x595c,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4ab,*(int *)(puVar31 + 0x175020) + -0x46f0);\n    return sVar4;\n  }\n  pIStack_10fc = (Image *)(**(code **)(puVar31 + 0x175cf4))(iVar20,in_a1);\n  iVar2 = (**(code **)(puVar31 + 0x175934))(iVar20,pIStack_10fc,2,in_a1);\n  if (iVar2 == 0) {\n    (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n    pIStack_10fc = (Image *)0x0;\n    goto LAB_00287858;\n  }\n  pIStack_10fc->columns = 1;\n  pIStack_10fc->rows = 1;\n  iVar2 = (**(code **)(puVar31 + 0x175578))(pIStack_10fc,in_a1);\n  if (iVar2 == 0) {\n    (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n    pIStack_10fc = (Image *)0x0;\n    goto LAB_00287858;\n  }\n  iVar2 = iVar20 + 0x210;\n  iVar3 = (**(code **)(puVar31 + 0x175d04))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x7890,4);\n  if (iVar3 == 0) {\n    iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n    if (iVar3 == 0) {\n      (**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x4c2,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n      if (pIStack_10fc != (Image *)0x0) {\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n        pIStack_10fc = (Image *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(1,1);\n    if (puVar5 == (undefined1 *)0x0) {\n      (**(code **)(puVar31 + 0x175634))(iVar3);\n      (**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x4c7,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n      if (pIStack_10fc != (Image *)0x0) {\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n        pIStack_10fc = (Image *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    *puVar5 = 0;\n    (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),puVar5);\n    iVar19 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78a0);\n    if (iVar19 != 0) {\n      iVar19 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78ac);\n      if (iVar19 == 0) {\n        puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(0x1000,1);\n        if (puVar5 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar31 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar26 = 0;\n          iVar13 = *(int *)(puVar31 + 0x175020);\n          iVar22 = *(int *)(puVar31 + 0x1752b0);\n          iVar14 = *(int *)(puVar31 + 0x174fb8);\n          puVar21 = puVar5;\nLAB_00285dec:\n          do {\n            iVar9 = (**(code **)(puVar31 + 0x175a78))(pIStack_10fc);\n            if ((iVar9 != -1) && (iVar9 != 10)) {\n              iVar10 = (**(code **)(puVar31 + 0x175e30))(pIStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar5;\n              if (iVar10 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1)\n                  ;\n                  if (puVar5 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar5 + iVar24;\n                }\n                *puVar21 = (char)iVar9;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar5 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar26 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n            if (iVar26 == 0) {\n              (**(code **)(puVar31 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar31 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar10 = *(int *)(puVar31 + 0x174fc8);\n            iVar24 = *(int *)(puVar31 + 0x174fb8) + -0x2d8;\n            iVar9 = 0;\n            while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                     (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar7 == 0) {\n              if (iVar9 == 0) {\n                iStack_10a8 = 0;\n                iVar8 = *(int *)(puVar31 + 0x174fc8);\n                iVar29 = *(int *)(puVar31 + 0x174fb0);\n                iVar7 = 0;\nLAB_002857fc:\n                do {\n                  iVar6 = (**(code **)(puVar31 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar6 != 0) goto LAB_00285914;\n                  if (iVar7 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar7 == 2) {\n                    iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar7 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                      (**(code **)(puVar31 + 0x175f24))(puStack_10ec,iVar19,iVar7 + 0x1000);\n                      iVar7 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar7 == 0) {\n                    iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                    if (iVar6 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar7 = iVar7 + 1;\n                } while( true );\n              }\n              if (iVar9 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar31 + 0x175a20))();\n              while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar7) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar7;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if ((iVar7 < 0) || (iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3), iVar7 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar31 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = iVar7 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n                  uVar30 = (uint)bVar18;\n                  if (uVar30 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar30);\n                  }\n                  iVar7 = uStack_10d4 + 7 + uVar30;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if (iVar8 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar7 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar7 + 4;\n                  iVar7 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      iVar7 = iVar7 + -1;\n                    } while (iVar7 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar9 = iVar9 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar7 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n                iVar9 = 2;\n              }\n            }\n            iVar26 = (**(code **)(puVar31 + 0x17575c))(iVar26);\n            iVar19 = (**(code **)(puVar31 + 0x17575c))(iVar19);\n            puVar21 = puVar5;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }\n      iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n      if (iVar19 != 0) {\n        (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }\n      uStack_10d4 = 1;\n      goto LAB_00286050;\n    }\n    puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(0x1000,1);\n    if (puVar5 == (undefined1 *)0x0) {\nLAB_0028544c:\n      uStack_10d4 = 0xffffffff;\n    }\n    else {\n      uVar15 = (**(code **)(puVar31 + 0x175bdc))();\n      iStack_10cc = 0x1000;\n      uStack_10d4 = 0;\n      uStack_10c8 = 0;\n      uStack_10e4 = 0;\n      cVar17 = '\0';\n      puStack_10dc = (undefined1 *)0x0;\n      iVar19 = 0;\n      iVar26 = 0;\n      iVar13 = *(int *)(puVar31 + 0x175020);\n      iVar22 = *(int *)(puVar31 + 0x1752b0);\n      iVar14 = *(int *)(puVar31 + 0x174fb8);\n      puVar21 = puVar5;\n      while( true ) {\n        while ((iVar9 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar9 != -1 &&\n               (iVar10 = (int)puVar21 - (int)puVar5, iVar9 != 10))) {\n          if (iStack_10cc <= iVar10 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1);\n            if (puVar5 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar5 + iVar10;\n          }\n          *puVar21 = (char)iVar9;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar5 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar26 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n        if (iVar26 == 0) {\n          (**(code **)(puVar31 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar31 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar10 = *(int *)(puVar31 + 0x174fc8);\n        iVar24 = *(int *)(puVar31 + 0x174fb8) + -0x2d8;\n        iVar9 = 0;\n        while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                 (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar7 == 0) {\n          if (iVar9 == 0) {\n            iStack_10a8 = 0;\n            iVar8 = *(int *)(puVar31 + 0x174fc8);\n            iVar29 = *(int *)(puVar31 + 0x174fb0);\n            iVar7 = 0;\nLAB_00284ff4:\n            do {\n              iVar6 = (**(code **)(puVar31 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar6 != 0) goto LAB_002850f4;\n              if (iVar7 == 1) {\n                uStack_10e4 = (**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar7 == 2) {\n                iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar7 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar7 == 0) {\n                iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                if (iVar6 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar7 = iVar7 + 1;\n            } while( true );\n          }\n          if (iVar9 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar31 + 0x175a20))();\n          while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar7) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar7;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }\n              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar31 + 0x1759bc))(iVar3);\n              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar31 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              iVar7 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              iVar7 = iVar7 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n              uVar30 = (uint)bVar18;\n              if (uVar30 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar30);\n              }\n              iVar7 = uStack_10d4 + 7 + uVar30;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n              if (iVar8 < 0) goto LAB_0028544c;\n              (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar7 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar7 + 4;\n              iVar7 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar9 = iVar9 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar7 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n              iVar7 = iVar7 + -1;\n            } while (iVar7 != -1);\n            iVar9 = 2;\n          }\n        }\n        iVar26 = (**(code **)(puVar31 + 0x17575c))(iVar26);\n        iVar19 = (**(code **)(puVar31 + 0x17575c))(iVar19);\n        puVar21 = puVar5;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10dc);\n        }\n      }\nLAB_0028573c:\n      (**(code **)(puVar31 + 0x175450))(uVar15);\n      if (iVar26 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar31 + 0x17575c))(iVar26);\n      }\nLAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar31 + 0x17575c))(iVar19);\n      }\n      if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar31 + 0x17575c))(puStack_10dc);\n      }\n      (**(code **)(puVar31 + 0x17575c))(puVar5);\n      if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }\nLAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar3);\n        (**(code **)(puVar31 + 0x175608))\n                  (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                   *(int *)(puVar31 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar31 + 0x174fb4) + 0x1854,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pIStack_10fc != (Image *)0x0) {\n          (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n          (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n          pIStack_10fc = (Image *)0x0;\n        }\n        goto LAB_00287858;\n      }\n      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n    }\n    (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n    goto LAB_00286050;\n  }\n  uStack_10d4 = 1;\n  goto LAB_00284a7c;\nLAB_00286038:\n  (**(code **)(puVar31 + 0x1756a8))(iVar19);\n  uStack_10d4 = 1;\n  goto LAB_00286050;\nLAB_00285f24:\n  (**(code **)(puVar31 + 0x175450))(uVar15);\n  if (iVar26 != 0) {\nLAB_00287be8:\n    (**(code **)(puVar31 + 0x17575c))(iVar26);\n  }\nLAB_00287bf8:\n  if (iVar19 != 0) {\n    (**(code **)(puVar31 + 0x17575c))(iVar19);\n  }\n  if (puStack_10ec != (undefined1 *)0x0) {\n    (**(code **)(puVar31 + 0x17575c))(puStack_10ec);\n  }\n  (**(code **)(puVar31 + 0x17575c))(puVar5);\n  if ((int)uStack_10c8 < 1) {\nLAB_00287cd8:\n    if (uStack_10d4 == 0) {\n      uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n      (**(code **)(puVar31 + 0x1756a8))(uVar15);\n      (**(code **)(puVar31 + 0x175634))(iVar3);\n      (**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x4e0,0x1a9,*(int *)(puVar31 + 0x174fb4) + 0x1854,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n      if (pIStack_10fc != (Image *)0x0) {\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n        pIStack_10fc = (Image *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n  }\n  else {\n    iVar19 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n    if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3), -1 < iVar19)) {\n      (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n      iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n      if (-1 < iVar19) goto LAB_00287cd8;\n    }\nLAB_00287db0:\n    uStack_10d4 = 0xffffffff;\n  }\n  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\nLAB_00286050:\n  uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3);\n  (**(code **)(puVar31 + 0x175ba0))(iVar3);\n  iVar19 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1);\n  if (iVar19 == 0) {\n    uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar31 + 0x1756a8))(uVar15);\n    (**(code **)(puVar31 + 0x175634))(iVar3);\n    (**(code **)(puVar31 + 0x175608))\n              (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x4ee,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78\n               ,iVar20 + 0x2210);\n    if (pIStack_10fc != (Image *)0x0) {\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      pIStack_10fc = (Image *)0x0;\n    }\n    goto LAB_00287858;\n  }\n  iVar13 = (**(code **)(puVar31 + 0x175d80))\n                     (pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + 0x17f8,iVar19,in_a1);\n  (**(code **)(puVar31 + 0x1754e4))(iVar19);\n  uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n  (**(code **)(puVar31 + 0x1756a8))(uVar15);\n  (**(code **)(puVar31 + 0x175634))(iVar3);\n  if (iVar13 == 0) {\n    (**(code **)(puVar31 + 0x175608))\n              (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x4f6,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78\n               ,iVar20 + 0x2210);\n    if (pIStack_10fc != (Image *)0x0) {\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      pIStack_10fc = (Image *)0x0;\n    }\n    goto LAB_00287858;\n  }\nLAB_00284a7c:\n  iVar3 = (**(code **)(puVar31 + 0x175d04))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78b8,4);\n  if (iVar3 == 0) {\n    (**(code **)(puVar31 + 0x175464))(auStack_1084,0x1000,*(int *)(puVar31 + 0x175020) + -0x4858,1);\n    ofile = (Image *)(**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n    if (ofile == (Image *)0x0) {\n      (**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x500,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n      if (pIStack_10fc != (Image *)0x0) {\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      }\n    }\n    else {\n      iVar3 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n      if (iVar3 == 0) {\n        (**(code **)(puVar31 + 0x175634))(ofile);\n        (**(code **)(puVar31 + 0x175608))\n                  (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                   *(int *)(puVar31 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pIStack_10fc != (Image *)0x0) {\n          (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n          (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n          pIStack_10fc = (Image *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar31 + 0x1759b0))(ofile->blob,iVar3);\n        iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78c0);\n        if (iVar3 != 0) {\n          iVar3 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n          if (iVar3 != 0) {\n            (**(code **)(puVar31 + 0x175dbc))(iVar3,0,0x14000);\n            do {\n              iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);\n              if (iVar19 == 0) goto LAB_00286b70;\n              iVar13 = 0;\n              if (0 < iVar19) {\n                do {\n                  iVar22 = (**(code **)(puVar31 + 0x17607c))(ofile,iVar19 - iVar13,iVar3 + iVar13);\n                  if (iVar22 < 1) {\n                    if (iVar13 < iVar19) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar13 = iVar13 + iVar22;\n                } while (iVar13 < iVar19);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(ofile);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar31 + 0x175020) + -0x48a4,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar31 + 0x175548))();\n          ifile = (Image *)(**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n          if (ifile == (Image *)0x0) {\n            uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n            (**(code **)(puVar31 + 0x1756a8))(uVar15);\n            (**(code **)(puVar31 + 0x175634))(ofile);\n            (**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            pBVar27 = ifile->blob;\n            uVar11 = (**(code **)(puVar31 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar31 + 0x175430))(uVar15);\n            (**(code **)(puVar31 + 0x1759b0))(pBVar27,uVar11,uVar15);\n            iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n            if (iVar3 == 0xff) {\n              iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n              iVar19 = *(int *)(puVar31 + 0x1752b0);\n              if (iVar3 == 0xd8) {\n                iVar3 = *(int *)(puVar31 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar3 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,0xff);\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc,ofile);\n                      uStack_10a0 = *(undefined4 *)(iVar3 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar3 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar3 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar3 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar3 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar3 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar3 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar13 = jpeg_transfer_1(ifile,ofile);\n                      } while (iVar13 != -1);\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if ((iVar13 != -1) &&\n                         (iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1)) {\n                        iVar22 = iVar13 * 0x100 + -2 + iVar22;\n                        do {\n                          if (iVar22 == 0) break;\n                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                          iVar22 = iVar22 + -1;\n                        } while (iVar13 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n                (**(code **)(puVar31 + 0x1756a8))(uVar15);\n                (**(code **)(puVar31 + 0x175634))(ifile);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n            (**(code **)(puVar31 + 0x1756a8))(uVar15);\n            (**(code **)(puVar31 + 0x175634))(ifile);\n            (**(code **)(puVar31 + 0x175634))(ofile);\n            (**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar31 + 0x175020) + -0x4850,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }\n    }\n    goto LAB_00286534;\n  }\n  iVar3 = *(int *)(puVar31 + 0x174fb0);\n  goto LAB_00284aa4;\nLAB_00286b70:\n  (**(code **)(puVar31 + 0x1756a8))(iVar3);\n  goto LAB_00286b84;\nLAB_00286f40:\n  (**(code **)(puVar31 + 0x1756a8))(iVar19);\n  goto LAB_00286f50;\nLAB_00287414:\n  (**(code **)(puVar31 + 0x1756a8))(iVar19);\n  goto LAB_00287424;\nLAB_00287758:\n  (**(code **)(puVar31 + 0x1756a8))(iVar3);\n  goto LAB_00287768;\nLAB_002867c8:\n  do {\n    iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n  } while (iVar3 != -1);\nLAB_002867e4:\n  uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n  (**(code **)(puVar31 + 0x1756a8))(uVar15);\n  (**(code **)(puVar31 + 0x175634))(ifile);\nLAB_00286b84:\n  uVar15 = (**(code **)(puVar31 + 0x1754cc))(ofile);\n  (**(code **)(puVar31 + 0x175ba0))(ofile);\n  iVar3 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_02);\n  if (iVar3 == 0) {\n    uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n    (**(code **)(puVar31 + 0x1756a8))(uVar15);\n    (**(code **)(puVar31 + 0x175634))(ofile);\n    (**(code **)(puVar31 + 0x175608))\n              (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x535,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78\n               ,iVar20 + 0x2210);\n    if (pIStack_10fc != (Image *)0x0) {\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      pIStack_10fc = (Image *)0x0;\n      goto LAB_00287858;\n    }\n  }\n  else {\n    iVar19 = (**(code **)(puVar31 + 0x175d80))(pIStack_10fc,auStack_1084,iVar3,in_a1);\n    (**(code **)(puVar31 + 0x1754e4))(iVar3);\n    uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n    (**(code **)(puVar31 + 0x1756a8))(uVar15);\n    (**(code **)(puVar31 + 0x175634))(ofile);\n    iVar3 = *(int *)(puVar31 + 0x174fb0);\n    if (iVar19 != 0) {\nLAB_00284aa4:\n      iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar3 + 0x78dc);\n      if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3);\n        (**(code **)(puVar31 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + -0x286c,iVar19,in_a1);\n        (**(code **)(puVar31 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar31 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar31 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }\n      iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar19 + 0x78e0);\n      if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3);\n        (**(code **)(puVar31 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + 0x17f0,iVar19,in_a1);\n        (**(code **)(puVar31 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar31 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar31 + 0x174fb0);\n      }\n      iVar2 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar3 + 0x78d4);\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n        if (iVar2 == 0) {\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar31 + 0x175634))(iVar2);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar31 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar31 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar2);\n        (**(code **)(puVar31 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar2);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb8) + 0x76a8,iVar3,in_a1);\n        (**(code **)(puVar31 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar2);\n      }\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      pIStack_10fc = (Image *)(**(code **)(puVar31 + 0x175b34))(pIStack_10fc);\n      goto LAB_00287858;\n    }\n    (**(code **)(puVar31 + 0x175608))\n              (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x53d,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78\n               ,iVar20 + 0x2210);\n    if (pIStack_10fc != (Image *)0x0) {\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      pIStack_10fc = (Image *)0x0;\n      goto LAB_00287858;\n    }\n  }\nLAB_00286534:\n  pIStack_10fc = (Image *)0x0;\nLAB_00287858:\n  if (iStack_84 != **(int **)(puVar31 + 0x175918)) {\n    pcVar32 = *(code **)(puVar31 + 0x17574c);\n    (*pcVar32)();\n    iVar19 = *(int *)(pcVar32 + 0x171abc);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x483c);\n    iVar3 = *(int *)(pcVar32 + 0x171dbc) + 0x4930;\n    *(int *)(iVar20 + 0x18) = iVar3;\n    iVar2 = *(int *)(pcVar32 + 0x171dbc) + 0x3578;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4820);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4800);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x47dc);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x47c0);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x47a8);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4788);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar32 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78d8,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78dc,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4760);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar32 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78e8,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78f4,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    return 0x810;\n  }\n  return (size_t)pIStack_10fc;\n}" primitive_type (function_declarator "convertHTMLcodes(char *s)" identifier (parameter_list "(char *s)" ( (parameter_declaration "char *s" primitive_type (pointer_declarator "*s" * identifier)) ))) (compound_statement "{\n  undefined1 uVar16;\n  char *pcVar1;\n  int iVar2;\n  int iVar3;\n  size_t sVar4;\n  undefined1 *puVar5;\n  char cVar17;\n  int iVar6;\n  int iVar7;\n  byte bVar18;\n  int iVar8;\n  int iVar9;\n  int iVar10;\n  Image *ofile;\n  Image *ifile;\n  undefined4 uVar11;\n  uint uVar12;\n  int iVar13;\n  int iVar14;\n  undefined4 uVar15;\n  undefined4 extraout_v1;\n  uint extraout_v1_00;\n  uint extraout_v1_01;\n  undefined4 extraout_v1_02;\n  undefined4 extraout_v1_03;\n  undefined4 extraout_v1_04;\n  undefined4 extraout_v1_05;\n  char *in_a1;\n  int iVar19;\n  int iVar20;\n  undefined1 *puVar21;\n  int iVar22;\n  char *unaff_s1;\n  char *pcVar23;\n  char *unaff_s2;\n  int iVar24;\n  int unaff_s3;\n  undefined4 *puVar25;\n  char *unaff_s4;\n  int iVar26;\n  BlobInfo *pBVar27;\n  char *unaff_s5;\n  char *pcVar28;\n  int unaff_s6;\n  int iVar29;\n  uint uVar30;\n  int unaff_s7;\n  undefined *puVar31;\n  int *unaff_s8;\n  code *pcVar32;\n  Image *pIStack_10fc;\n  undefined1 *puStack_10ec;\n  uint uStack_10e4;\n  undefined1 *puStack_10dc;\n  uint uStack_10d4;\n  int iStack_10cc;\n  uint uStack_10c8;\n  undefined1 uStack_10b0;\n  undefined1 uStack_10af;\n  char cStack_10ae;\n  undefined1 uStack_10ad;\n  undefined4 uStack_10ac;\n  int iStack_10a8;\n  undefined4 uStack_10a4;\n  undefined4 uStack_10a0;\n  undefined4 uStack_109c;\n  undefined4 uStack_1098;\n  undefined1 auStack_1094 [4];\n  undefined4 uStack_1090;\n  undefined4 uStack_108c;\n  undefined1 uStack_1088;\n  undefined1 auStack_1084 [4096];\n  int iStack_84;\n  char *pcStack_80;\n  char *pcStack_7c;\n  char *pcStack_78;\n  int iStack_74;\n  char *pcStack_70;\n  char *pcStack_6c;\n  int iStack_68;\n  int iStack_64;\n  int *piStack_60;\n  code *pcStack_5c;\n  int value;\n  int local_2c;\n  \n  puVar31 = PTR_s__003f9950;\n  local_2c = *(int *)PTR___stack_chk_guard_003fa248;\n  if (*s == '\0') {\n    pcVar1 = (char *)0x0;\n  }\n  else {\n    unaff_s2 = s;\n    if (*s == ';') {\n      pcVar1 = (char *)0x1;\nLAB_0028466c:\n      if (s == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (s[1] == '#')) {\n          in_a1 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(s,in_a1,&value);\n          unaff_s4 = puVar31 + -0x46bf;\n          if (iVar20 == 1) {\n            if (s[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = s + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              in_a1 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(s + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (s[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (s[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *s = (char)value;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar31 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar28 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar28;\n          if ((int)pcVar28 <= (int)pcVar1) {\n            if (s != unaff_s4) {\n              iVar20 = (int)*s;\n              unaff_s5 = s;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar28 + -1),\n                     unaff_s4 + (int)(pcVar28 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            in_a1 = s + (int)pcVar28;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(in_a1);\n            (*(code *)PTR_memmove_003f9f68)(s + 1,in_a1,iVar20 + 1);\n            *s = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar28 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar1 = s + 1;\n      iVar20 = 1;\n      in_a1 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }\n  }\nLAB_00284620:\n  if (local_2c == *(int *)PTR___stack_chk_guard_003fa248) {\n    return (size_t)pcVar1;\n  }\n  pcVar32 = ReadMETAImage;\n  iVar20 = local_2c;\n  puVar31 = PTR___stack_chk_fail_003fa07c;\n  (*(code *)PTR___stack_chk_fail_003fa07c)();\n  iStack_84 = **(int **)(puVar31 + 0x175918);\n  pcStack_80 = pcVar1;\n  pcStack_7c = unaff_s1;\n  pcStack_78 = unaff_s2;\n  iStack_74 = unaff_s3;\n  pcStack_70 = unaff_s4;\n  pcStack_6c = unaff_s5;\n  iStack_68 = unaff_s6;\n  iStack_64 = unaff_s7;\n  piStack_60 = unaff_s8;\n  pcStack_5c = pcVar32;\n  if (iVar20 == 0) {\n    sVar4 = (**(code **)(puVar31 + 0x175cf0))\n                      (*(int *)(puVar31 + 0x174fb0) + 0x3d48,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4a5,*(int *)(puVar31 + 0x175020) + -0x46f0);\n    return sVar4;\n  }\n  if (*(int *)(iVar20 + 0x3214) != -0x54535255) {\n    sVar4 = (**(code **)(puVar31 + 0x175cf0))\n                      (*(int *)(puVar31 + 0x174fb0) + 0x3d70,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4a6,*(int *)(puVar31 + 0x175020) + -0x46f0);\n    return sVar4;\n  }\n  if (*(int *)(iVar20 + 0x3210) != 0) {\n    (**(code **)(puVar31 + 0x1758c8))\n              (0x8000,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x4a8,*(int *)(puVar31 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210);\n  }\n  if (in_a1 == (char *)0x0) {\n    sVar4 = (**(code **)(puVar31 + 0x175cf0))\n                      (*(int *)(puVar31 + 0x174fb0) + 0x4c80,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4aa,*(int *)(puVar31 + 0x175020) + -0x46f0);\n    return sVar4;\n  }\n  if (*(int *)(in_a1 + 0x1c) != -0x54535255) {\n    sVar4 = (**(code **)(puVar31 + 0x175cf0))\n                      (*(int *)(puVar31 + 0x174fb0) + 0x595c,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4ab,*(int *)(puVar31 + 0x175020) + -0x46f0);\n    return sVar4;\n  }\n  pIStack_10fc = (Image *)(**(code **)(puVar31 + 0x175cf4))(iVar20,in_a1);\n  iVar2 = (**(code **)(puVar31 + 0x175934))(iVar20,pIStack_10fc,2,in_a1);\n  if (iVar2 == 0) {\n    (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n    pIStack_10fc = (Image *)0x0;\n    goto LAB_00287858;\n  }\n  pIStack_10fc->columns = 1;\n  pIStack_10fc->rows = 1;\n  iVar2 = (**(code **)(puVar31 + 0x175578))(pIStack_10fc,in_a1);\n  if (iVar2 == 0) {\n    (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n    pIStack_10fc = (Image *)0x0;\n    goto LAB_00287858;\n  }\n  iVar2 = iVar20 + 0x210;\n  iVar3 = (**(code **)(puVar31 + 0x175d04))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x7890,4);\n  if (iVar3 == 0) {\n    iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n    if (iVar3 == 0) {\n      (**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x4c2,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n      if (pIStack_10fc != (Image *)0x0) {\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n        pIStack_10fc = (Image *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(1,1);\n    if (puVar5 == (undefined1 *)0x0) {\n      (**(code **)(puVar31 + 0x175634))(iVar3);\n      (**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x4c7,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n      if (pIStack_10fc != (Image *)0x0) {\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n        pIStack_10fc = (Image *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    *puVar5 = 0;\n    (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),puVar5);\n    iVar19 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78a0);\n    if (iVar19 != 0) {\n      iVar19 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78ac);\n      if (iVar19 == 0) {\n        puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(0x1000,1);\n        if (puVar5 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar31 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar26 = 0;\n          iVar13 = *(int *)(puVar31 + 0x175020);\n          iVar22 = *(int *)(puVar31 + 0x1752b0);\n          iVar14 = *(int *)(puVar31 + 0x174fb8);\n          puVar21 = puVar5;\nLAB_00285dec:\n          do {\n            iVar9 = (**(code **)(puVar31 + 0x175a78))(pIStack_10fc);\n            if ((iVar9 != -1) && (iVar9 != 10)) {\n              iVar10 = (**(code **)(puVar31 + 0x175e30))(pIStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar5;\n              if (iVar10 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1)\n                  ;\n                  if (puVar5 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar5 + iVar24;\n                }\n                *puVar21 = (char)iVar9;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar5 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar26 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n            if (iVar26 == 0) {\n              (**(code **)(puVar31 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar31 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar10 = *(int *)(puVar31 + 0x174fc8);\n            iVar24 = *(int *)(puVar31 + 0x174fb8) + -0x2d8;\n            iVar9 = 0;\n            while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                     (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar7 == 0) {\n              if (iVar9 == 0) {\n                iStack_10a8 = 0;\n                iVar8 = *(int *)(puVar31 + 0x174fc8);\n                iVar29 = *(int *)(puVar31 + 0x174fb0);\n                iVar7 = 0;\nLAB_002857fc:\n                do {\n                  iVar6 = (**(code **)(puVar31 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar6 != 0) goto LAB_00285914;\n                  if (iVar7 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar7 == 2) {\n                    iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar7 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                      (**(code **)(puVar31 + 0x175f24))(puStack_10ec,iVar19,iVar7 + 0x1000);\n                      iVar7 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar7 == 0) {\n                    iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                    if (iVar6 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar7 = iVar7 + 1;\n                } while( true );\n              }\n              if (iVar9 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar31 + 0x175a20))();\n              while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar7) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar7;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if ((iVar7 < 0) || (iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3), iVar7 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar31 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = iVar7 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n                  uVar30 = (uint)bVar18;\n                  if (uVar30 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar30);\n                  }\n                  iVar7 = uStack_10d4 + 7 + uVar30;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if (iVar8 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar7 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar7 + 4;\n                  iVar7 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      iVar7 = iVar7 + -1;\n                    } while (iVar7 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar9 = iVar9 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar7 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n                iVar9 = 2;\n              }\n            }\n            iVar26 = (**(code **)(puVar31 + 0x17575c))(iVar26);\n            iVar19 = (**(code **)(puVar31 + 0x17575c))(iVar19);\n            puVar21 = puVar5;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }\n      iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n      if (iVar19 != 0) {\n        (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }\n      uStack_10d4 = 1;\n      goto LAB_00286050;\n    }\n    puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(0x1000,1);\n    if (puVar5 == (undefined1 *)0x0) {\nLAB_0028544c:\n      uStack_10d4 = 0xffffffff;\n    }\n    else {\n      uVar15 = (**(code **)(puVar31 + 0x175bdc))();\n      iStack_10cc = 0x1000;\n      uStack_10d4 = 0;\n      uStack_10c8 = 0;\n      uStack_10e4 = 0;\n      cVar17 = '\0';\n      puStack_10dc = (undefined1 *)0x0;\n      iVar19 = 0;\n      iVar26 = 0;\n      iVar13 = *(int *)(puVar31 + 0x175020);\n      iVar22 = *(int *)(puVar31 + 0x1752b0);\n      iVar14 = *(int *)(puVar31 + 0x174fb8);\n      puVar21 = puVar5;\n      while( true ) {\n        while ((iVar9 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar9 != -1 &&\n               (iVar10 = (int)puVar21 - (int)puVar5, iVar9 != 10))) {\n          if (iStack_10cc <= iVar10 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1);\n            if (puVar5 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar5 + iVar10;\n          }\n          *puVar21 = (char)iVar9;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar5 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar26 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n        if (iVar26 == 0) {\n          (**(code **)(puVar31 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar31 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar10 = *(int *)(puVar31 + 0x174fc8);\n        iVar24 = *(int *)(puVar31 + 0x174fb8) + -0x2d8;\n        iVar9 = 0;\n        while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                 (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar7 == 0) {\n          if (iVar9 == 0) {\n            iStack_10a8 = 0;\n            iVar8 = *(int *)(puVar31 + 0x174fc8);\n            iVar29 = *(int *)(puVar31 + 0x174fb0);\n            iVar7 = 0;\nLAB_00284ff4:\n            do {\n              iVar6 = (**(code **)(puVar31 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar6 != 0) goto LAB_002850f4;\n              if (iVar7 == 1) {\n                uStack_10e4 = (**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar7 == 2) {\n                iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar7 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar7 == 0) {\n                iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                if (iVar6 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar7 = iVar7 + 1;\n            } while( true );\n          }\n          if (iVar9 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar31 + 0x175a20))();\n          while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar7) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar7;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }\n              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar31 + 0x1759bc))(iVar3);\n              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar31 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              iVar7 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              iVar7 = iVar7 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n              uVar30 = (uint)bVar18;\n              if (uVar30 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar30);\n              }\n              iVar7 = uStack_10d4 + 7 + uVar30;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n              if (iVar8 < 0) goto LAB_0028544c;\n              (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar7 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar7 + 4;\n              iVar7 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar9 = iVar9 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar7 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n              iVar7 = iVar7 + -1;\n            } while (iVar7 != -1);\n            iVar9 = 2;\n          }\n        }\n        iVar26 = (**(code **)(puVar31 + 0x17575c))(iVar26);\n        iVar19 = (**(code **)(puVar31 + 0x17575c))(iVar19);\n        puVar21 = puVar5;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10dc);\n        }\n      }\nLAB_0028573c:\n      (**(code **)(puVar31 + 0x175450))(uVar15);\n      if (iVar26 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar31 + 0x17575c))(iVar26);\n      }\nLAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar31 + 0x17575c))(iVar19);\n      }\n      if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar31 + 0x17575c))(puStack_10dc);\n      }\n      (**(code **)(puVar31 + 0x17575c))(puVar5);\n      if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }\nLAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar3);\n        (**(code **)(puVar31 + 0x175608))\n                  (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                   *(int *)(puVar31 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar31 + 0x174fb4) + 0x1854,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pIStack_10fc != (Image *)0x0) {\n          (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n          (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n          pIStack_10fc = (Image *)0x0;\n        }\n        goto LAB_00287858;\n      }\n      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n    }\n    (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n    goto LAB_00286050;\n  }\n  uStack_10d4 = 1;\n  goto LAB_00284a7c;\nLAB_00286038:\n  (**(code **)(puVar31 + 0x1756a8))(iVar19);\n  uStack_10d4 = 1;\n  goto LAB_00286050;\nLAB_00285f24:\n  (**(code **)(puVar31 + 0x175450))(uVar15);\n  if (iVar26 != 0) {\nLAB_00287be8:\n    (**(code **)(puVar31 + 0x17575c))(iVar26);\n  }\nLAB_00287bf8:\n  if (iVar19 != 0) {\n    (**(code **)(puVar31 + 0x17575c))(iVar19);\n  }\n  if (puStack_10ec != (undefined1 *)0x0) {\n    (**(code **)(puVar31 + 0x17575c))(puStack_10ec);\n  }\n  (**(code **)(puVar31 + 0x17575c))(puVar5);\n  if ((int)uStack_10c8 < 1) {\nLAB_00287cd8:\n    if (uStack_10d4 == 0) {\n      uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n      (**(code **)(puVar31 + 0x1756a8))(uVar15);\n      (**(code **)(puVar31 + 0x175634))(iVar3);\n      (**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x4e0,0x1a9,*(int *)(puVar31 + 0x174fb4) + 0x1854,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n      if (pIStack_10fc != (Image *)0x0) {\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n        pIStack_10fc = (Image *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n  }\n  else {\n    iVar19 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n    if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3), -1 < iVar19)) {\n      (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n      iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n      if (-1 < iVar19) goto LAB_00287cd8;\n    }\nLAB_00287db0:\n    uStack_10d4 = 0xffffffff;\n  }\n  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\nLAB_00286050:\n  uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3);\n  (**(code **)(puVar31 + 0x175ba0))(iVar3);\n  iVar19 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1);\n  if (iVar19 == 0) {\n    uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar31 + 0x1756a8))(uVar15);\n    (**(code **)(puVar31 + 0x175634))(iVar3);\n    (**(code **)(puVar31 + 0x175608))\n              (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x4ee,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78\n               ,iVar20 + 0x2210);\n    if (pIStack_10fc != (Image *)0x0) {\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      pIStack_10fc = (Image *)0x0;\n    }\n    goto LAB_00287858;\n  }\n  iVar13 = (**(code **)(puVar31 + 0x175d80))\n                     (pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + 0x17f8,iVar19,in_a1);\n  (**(code **)(puVar31 + 0x1754e4))(iVar19);\n  uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n  (**(code **)(puVar31 + 0x1756a8))(uVar15);\n  (**(code **)(puVar31 + 0x175634))(iVar3);\n  if (iVar13 == 0) {\n    (**(code **)(puVar31 + 0x175608))\n              (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x4f6,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78\n               ,iVar20 + 0x2210);\n    if (pIStack_10fc != (Image *)0x0) {\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      pIStack_10fc = (Image *)0x0;\n    }\n    goto LAB_00287858;\n  }\nLAB_00284a7c:\n  iVar3 = (**(code **)(puVar31 + 0x175d04))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78b8,4);\n  if (iVar3 == 0) {\n    (**(code **)(puVar31 + 0x175464))(auStack_1084,0x1000,*(int *)(puVar31 + 0x175020) + -0x4858,1);\n    ofile = (Image *)(**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n    if (ofile == (Image *)0x0) {\n      (**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x500,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n      if (pIStack_10fc != (Image *)0x0) {\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      }\n    }\n    else {\n      iVar3 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n      if (iVar3 == 0) {\n        (**(code **)(puVar31 + 0x175634))(ofile);\n        (**(code **)(puVar31 + 0x175608))\n                  (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                   *(int *)(puVar31 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pIStack_10fc != (Image *)0x0) {\n          (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n          (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n          pIStack_10fc = (Image *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar31 + 0x1759b0))(ofile->blob,iVar3);\n        iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78c0);\n        if (iVar3 != 0) {\n          iVar3 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n          if (iVar3 != 0) {\n            (**(code **)(puVar31 + 0x175dbc))(iVar3,0,0x14000);\n            do {\n              iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);\n              if (iVar19 == 0) goto LAB_00286b70;\n              iVar13 = 0;\n              if (0 < iVar19) {\n                do {\n                  iVar22 = (**(code **)(puVar31 + 0x17607c))(ofile,iVar19 - iVar13,iVar3 + iVar13);\n                  if (iVar22 < 1) {\n                    if (iVar13 < iVar19) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar13 = iVar13 + iVar22;\n                } while (iVar13 < iVar19);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(ofile);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar31 + 0x175020) + -0x48a4,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar31 + 0x175548))();\n          ifile = (Image *)(**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n          if (ifile == (Image *)0x0) {\n            uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n            (**(code **)(puVar31 + 0x1756a8))(uVar15);\n            (**(code **)(puVar31 + 0x175634))(ofile);\n            (**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            pBVar27 = ifile->blob;\n            uVar11 = (**(code **)(puVar31 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar31 + 0x175430))(uVar15);\n            (**(code **)(puVar31 + 0x1759b0))(pBVar27,uVar11,uVar15);\n            iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n            if (iVar3 == 0xff) {\n              iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n              iVar19 = *(int *)(puVar31 + 0x1752b0);\n              if (iVar3 == 0xd8) {\n                iVar3 = *(int *)(puVar31 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar3 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,0xff);\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc,ofile);\n                      uStack_10a0 = *(undefined4 *)(iVar3 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar3 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar3 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar3 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar3 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar3 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar3 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar13 = jpeg_transfer_1(ifile,ofile);\n                      } while (iVar13 != -1);\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if ((iVar13 != -1) &&\n                         (iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1)) {\n                        iVar22 = iVar13 * 0x100 + -2 + iVar22;\n                        do {\n                          if (iVar22 == 0) break;\n                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                          iVar22 = iVar22 + -1;\n                        } while (iVar13 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n                (**(code **)(puVar31 + 0x1756a8))(uVar15);\n                (**(code **)(puVar31 + 0x175634))(ifile);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n            (**(code **)(puVar31 + 0x1756a8))(uVar15);\n            (**(code **)(puVar31 + 0x175634))(ifile);\n            (**(code **)(puVar31 + 0x175634))(ofile);\n            (**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar31 + 0x175020) + -0x4850,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }\n    }\n    goto LAB_00286534;\n  }\n  iVar3 = *(int *)(puVar31 + 0x174fb0);\n  goto LAB_00284aa4;\nLAB_00286b70:\n  (**(code **)(puVar31 + 0x1756a8))(iVar3);\n  goto LAB_00286b84;\nLAB_00286f40:\n  (**(code **)(puVar31 + 0x1756a8))(iVar19);\n  goto LAB_00286f50;\nLAB_00287414:\n  (**(code **)(puVar31 + 0x1756a8))(iVar19);\n  goto LAB_00287424;\nLAB_00287758:\n  (**(code **)(puVar31 + 0x1756a8))(iVar3);\n  goto LAB_00287768;\nLAB_002867c8:\n  do {\n    iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n  } while (iVar3 != -1);\nLAB_002867e4:\n  uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n  (**(code **)(puVar31 + 0x1756a8))(uVar15);\n  (**(code **)(puVar31 + 0x175634))(ifile);\nLAB_00286b84:\n  uVar15 = (**(code **)(puVar31 + 0x1754cc))(ofile);\n  (**(code **)(puVar31 + 0x175ba0))(ofile);\n  iVar3 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_02);\n  if (iVar3 == 0) {\n    uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n    (**(code **)(puVar31 + 0x1756a8))(uVar15);\n    (**(code **)(puVar31 + 0x175634))(ofile);\n    (**(code **)(puVar31 + 0x175608))\n              (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x535,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78\n               ,iVar20 + 0x2210);\n    if (pIStack_10fc != (Image *)0x0) {\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      pIStack_10fc = (Image *)0x0;\n      goto LAB_00287858;\n    }\n  }\n  else {\n    iVar19 = (**(code **)(puVar31 + 0x175d80))(pIStack_10fc,auStack_1084,iVar3,in_a1);\n    (**(code **)(puVar31 + 0x1754e4))(iVar3);\n    uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n    (**(code **)(puVar31 + 0x1756a8))(uVar15);\n    (**(code **)(puVar31 + 0x175634))(ofile);\n    iVar3 = *(int *)(puVar31 + 0x174fb0);\n    if (iVar19 != 0) {\nLAB_00284aa4:\n      iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar3 + 0x78dc);\n      if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3);\n        (**(code **)(puVar31 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + -0x286c,iVar19,in_a1);\n        (**(code **)(puVar31 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar31 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar31 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }\n      iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar19 + 0x78e0);\n      if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3);\n        (**(code **)(puVar31 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + 0x17f0,iVar19,in_a1);\n        (**(code **)(puVar31 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar31 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar31 + 0x174fb0);\n      }\n      iVar2 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar3 + 0x78d4);\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n        if (iVar2 == 0) {\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar31 + 0x175634))(iVar2);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar31 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar31 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar2);\n        (**(code **)(puVar31 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar2);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb8) + 0x76a8,iVar3,in_a1);\n        (**(code **)(puVar31 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar2);\n      }\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      pIStack_10fc = (Image *)(**(code **)(puVar31 + 0x175b34))(pIStack_10fc);\n      goto LAB_00287858;\n    }\n    (**(code **)(puVar31 + 0x175608))\n              (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x53d,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78\n               ,iVar20 + 0x2210);\n    if (pIStack_10fc != (Image *)0x0) {\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      pIStack_10fc = (Image *)0x0;\n      goto LAB_00287858;\n    }\n  }\nLAB_00286534:\n  pIStack_10fc = (Image *)0x0;\nLAB_00287858:\n  if (iStack_84 != **(int **)(puVar31 + 0x175918)) {\n    pcVar32 = *(code **)(puVar31 + 0x17574c);\n    (*pcVar32)();\n    iVar19 = *(int *)(pcVar32 + 0x171abc);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x483c);\n    iVar3 = *(int *)(pcVar32 + 0x171dbc) + 0x4930;\n    *(int *)(iVar20 + 0x18) = iVar3;\n    iVar2 = *(int *)(pcVar32 + 0x171dbc) + 0x3578;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4820);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4800);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x47dc);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x47c0);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x47a8);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4788);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar32 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78d8,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78dc,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4760);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar32 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78e8,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78f4,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    return 0x810;\n  }\n  return (size_t)pIStack_10fc;\n}" { (declaration "undefined1 uVar16;" type_identifier identifier ;) (declaration "char *pcVar1;" primitive_type (pointer_declarator "*pcVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "size_t sVar4;" primitive_type identifier ;) (declaration "undefined1 *puVar5;" type_identifier (pointer_declarator "*puVar5" * identifier) ;) (declaration "char cVar17;" primitive_type identifier ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "int iVar7;" primitive_type identifier ;) (declaration "byte bVar18;" type_identifier identifier ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "int iVar9;" primitive_type identifier ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "Image *ofile;" type_identifier (pointer_declarator "*ofile" * identifier) ;) (declaration "Image *ifile;" type_identifier (pointer_declarator "*ifile" * identifier) ;) (declaration "undefined4 uVar11;" type_identifier identifier ;) (declaration "uint uVar12;" type_identifier identifier ;) (declaration "int iVar13;" primitive_type identifier ;) (declaration "int iVar14;" primitive_type identifier ;) (declaration "undefined4 uVar15;" type_identifier identifier ;) (declaration "undefined4 extraout_v1;" type_identifier identifier ;) (declaration "uint extraout_v1_00;" type_identifier identifier ;) (declaration "uint extraout_v1_01;" type_identifier identifier ;) (declaration "undefined4 extraout_v1_02;" type_identifier identifier ;) (declaration "undefined4 extraout_v1_03;" type_identifier identifier ;) (declaration "undefined4 extraout_v1_04;" type_identifier identifier ;) (declaration "undefined4 extraout_v1_05;" type_identifier identifier ;) (declaration "char *in_a1;" primitive_type (pointer_declarator "*in_a1" * identifier) ;) (declaration "int iVar19;" primitive_type identifier ;) (declaration "int iVar20;" primitive_type identifier ;) (declaration "undefined1 *puVar21;" type_identifier (pointer_declarator "*puVar21" * identifier) ;) (declaration "int iVar22;" primitive_type identifier ;) (declaration "char *unaff_s1;" primitive_type (pointer_declarator "*unaff_s1" * identifier) ;) (declaration "char *pcVar23;" primitive_type (pointer_declarator "*pcVar23" * identifier) ;) (declaration "char *unaff_s2;" primitive_type (pointer_declarator "*unaff_s2" * identifier) ;) (declaration "int iVar24;" primitive_type identifier ;) (declaration "int unaff_s3;" primitive_type identifier ;) (declaration "undefined4 *puVar25;" type_identifier (pointer_declarator "*puVar25" * identifier) ;) (declaration "char *unaff_s4;" primitive_type (pointer_declarator "*unaff_s4" * identifier) ;) (declaration "int iVar26;" primitive_type identifier ;) (declaration "BlobInfo *pBVar27;" type_identifier (pointer_declarator "*pBVar27" * identifier) ;) (declaration "char *unaff_s5;" primitive_type (pointer_declarator "*unaff_s5" * identifier) ;) (declaration "char *pcVar28;" primitive_type (pointer_declarator "*pcVar28" * identifier) ;) (declaration "int unaff_s6;" primitive_type identifier ;) (declaration "int iVar29;" primitive_type identifier ;) (declaration "uint uVar30;" type_identifier identifier ;) (declaration "int unaff_s7;" primitive_type identifier ;) (declaration "undefined *puVar31;" type_identifier (pointer_declarator "*puVar31" * identifier) ;) (declaration "int *unaff_s8;" primitive_type (pointer_declarator "*unaff_s8" * identifier) ;) (declaration "code *pcVar32;" type_identifier (pointer_declarator "*pcVar32" * identifier) ;) (declaration "Image *pIStack_10fc;" type_identifier (pointer_declarator "*pIStack_10fc" * identifier) ;) (declaration "undefined1 *puStack_10ec;" type_identifier (pointer_declarator "*puStack_10ec" * identifier) ;) (declaration "uint uStack_10e4;" type_identifier identifier ;) (declaration "undefined1 *puStack_10dc;" type_identifier (pointer_declarator "*puStack_10dc" * identifier) ;) (declaration "uint uStack_10d4;" type_identifier identifier ;) (declaration "int iStack_10cc;" primitive_type identifier ;) (declaration "uint uStack_10c8;" type_identifier identifier ;) (declaration "undefined1 uStack_10b0;" type_identifier identifier ;) (declaration "undefined1 uStack_10af;" type_identifier identifier ;) (declaration "char cStack_10ae;" primitive_type identifier ;) (declaration "undefined1 uStack_10ad;" type_identifier identifier ;) (declaration "undefined4 uStack_10ac;" type_identifier identifier ;) (declaration "int iStack_10a8;" primitive_type identifier ;) (declaration "undefined4 uStack_10a4;" type_identifier identifier ;) (declaration "undefined4 uStack_10a0;" type_identifier identifier ;) (declaration "undefined4 uStack_109c;" type_identifier identifier ;) (declaration "undefined4 uStack_1098;" type_identifier identifier ;) (declaration "undefined1 auStack_1094 [4];" type_identifier (array_declarator "auStack_1094 [4]" identifier [ number_literal ]) ;) (declaration "undefined4 uStack_1090;" type_identifier identifier ;) (declaration "undefined4 uStack_108c;" type_identifier identifier ;) (declaration "undefined1 uStack_1088;" type_identifier identifier ;) (declaration "undefined1 auStack_1084 [4096];" type_identifier (array_declarator "auStack_1084 [4096]" identifier [ number_literal ]) ;) (declaration "int iStack_84;" primitive_type identifier ;) (declaration "char *pcStack_80;" primitive_type (pointer_declarator "*pcStack_80" * identifier) ;) (declaration "char *pcStack_7c;" primitive_type (pointer_declarator "*pcStack_7c" * identifier) ;) (declaration "char *pcStack_78;" primitive_type (pointer_declarator "*pcStack_78" * identifier) ;) (declaration "int iStack_74;" primitive_type identifier ;) (declaration "char *pcStack_70;" primitive_type (pointer_declarator "*pcStack_70" * identifier) ;) (declaration "char *pcStack_6c;" primitive_type (pointer_declarator "*pcStack_6c" * identifier) ;) (declaration "int iStack_68;" primitive_type identifier ;) (declaration "int iStack_64;" primitive_type identifier ;) (declaration "int *piStack_60;" primitive_type (pointer_declarator "*piStack_60" * identifier) ;) (declaration "code *pcStack_5c;" type_identifier (pointer_declarator "*pcStack_5c" * identifier) ;) (declaration "int value;" primitive_type identifier ;) (declaration "int local_2c;" primitive_type identifier ;) (expression_statement "puVar31 = PTR_s__003f9950;" (assignment_expression "puVar31 = PTR_s__003f9950" identifier = identifier) ;) (expression_statement "local_2c = *(int *)PTR___stack_chk_guard_003fa248;" (assignment_expression "local_2c = *(int *)PTR___stack_chk_guard_003fa248" identifier = (pointer_expression "*(int *)PTR___stack_chk_guard_003fa248" * (cast_expression "(int *)PTR___stack_chk_guard_003fa248" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (if_statement "if (*s == '\0') {\n    pcVar1 = (char *)0x0;\n  }\n  else {\n    unaff_s2 = s;\n    if (*s == ';') {\n      pcVar1 = (char *)0x1;\nLAB_0028466c:\n      if (s == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (s[1] == '#')) {\n          in_a1 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(s,in_a1,&value);\n          unaff_s4 = puVar31 + -0x46bf;\n          if (iVar20 == 1) {\n            if (s[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = s + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              in_a1 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(s + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (s[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (s[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *s = (char)value;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar31 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar28 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar28;\n          if ((int)pcVar28 <= (int)pcVar1) {\n            if (s != unaff_s4) {\n              iVar20 = (int)*s;\n              unaff_s5 = s;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar28 + -1),\n                     unaff_s4 + (int)(pcVar28 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            in_a1 = s + (int)pcVar28;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(in_a1);\n            (*(code *)PTR_memmove_003f9f68)(s + 1,in_a1,iVar20 + 1);\n            *s = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar28 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar1 = s + 1;\n      iVar20 = 1;\n      in_a1 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }\n  }" if (parenthesized_expression "(*s == '\0')" ( (binary_expression "*s == '\0'" (pointer_expression "*s" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    pcVar1 = (char *)0x0;\n  }" { (expression_statement "pcVar1 = (char *)0x0;" (assignment_expression "pcVar1 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else {\n    unaff_s2 = s;\n    if (*s == ';') {\n      pcVar1 = (char *)0x1;\nLAB_0028466c:\n      if (s == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (s[1] == '#')) {\n          in_a1 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(s,in_a1,&value);\n          unaff_s4 = puVar31 + -0x46bf;\n          if (iVar20 == 1) {\n            if (s[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = s + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              in_a1 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(s + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (s[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (s[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *s = (char)value;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar31 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar28 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar28;\n          if ((int)pcVar28 <= (int)pcVar1) {\n            if (s != unaff_s4) {\n              iVar20 = (int)*s;\n              unaff_s5 = s;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar28 + -1),\n                     unaff_s4 + (int)(pcVar28 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            in_a1 = s + (int)pcVar28;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(in_a1);\n            (*(code *)PTR_memmove_003f9f68)(s + 1,in_a1,iVar20 + 1);\n            *s = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar28 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar1 = s + 1;\n      iVar20 = 1;\n      in_a1 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }\n  }" else (compound_statement "{\n    unaff_s2 = s;\n    if (*s == ';') {\n      pcVar1 = (char *)0x1;\nLAB_0028466c:\n      if (s == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (s[1] == '#')) {\n          in_a1 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(s,in_a1,&value);\n          unaff_s4 = puVar31 + -0x46bf;\n          if (iVar20 == 1) {\n            if (s[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = s + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              in_a1 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(s + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (s[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (s[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *s = (char)value;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar31 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar28 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar28;\n          if ((int)pcVar28 <= (int)pcVar1) {\n            if (s != unaff_s4) {\n              iVar20 = (int)*s;\n              unaff_s5 = s;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar28 + -1),\n                     unaff_s4 + (int)(pcVar28 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            in_a1 = s + (int)pcVar28;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(in_a1);\n            (*(code *)PTR_memmove_003f9f68)(s + 1,in_a1,iVar20 + 1);\n            *s = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar28 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar1 = s + 1;\n      iVar20 = 1;\n      in_a1 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }\n  }" { (expression_statement "unaff_s2 = s;" (assignment_expression "unaff_s2 = s" identifier = identifier) ;) (if_statement "if (*s == ';') {\n      pcVar1 = (char *)0x1;\nLAB_0028466c:\n      if (s == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (s[1] == '#')) {\n          in_a1 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(s,in_a1,&value);\n          unaff_s4 = puVar31 + -0x46bf;\n          if (iVar20 == 1) {\n            if (s[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = s + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              in_a1 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(s + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (s[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (s[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *s = (char)value;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar31 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar28 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar28;\n          if ((int)pcVar28 <= (int)pcVar1) {\n            if (s != unaff_s4) {\n              iVar20 = (int)*s;\n              unaff_s5 = s;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar28 + -1),\n                     unaff_s4 + (int)(pcVar28 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            in_a1 = s + (int)pcVar28;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(in_a1);\n            (*(code *)PTR_memmove_003f9f68)(s + 1,in_a1,iVar20 + 1);\n            *s = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar28 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar1 = s + 1;\n      iVar20 = 1;\n      in_a1 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }" if (parenthesized_expression "(*s == ';')" ( (binary_expression "*s == ';'" (pointer_expression "*s" * identifier) == (char_literal "';'" ' character ')) )) (compound_statement "{\n      pcVar1 = (char *)0x1;\nLAB_0028466c:\n      if (s == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (s[1] == '#')) {\n          in_a1 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(s,in_a1,&value);\n          unaff_s4 = puVar31 + -0x46bf;\n          if (iVar20 == 1) {\n            if (s[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = s + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              in_a1 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(s + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (s[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (s[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *s = (char)value;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar31 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar28 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar28;\n          if ((int)pcVar28 <= (int)pcVar1) {\n            if (s != unaff_s4) {\n              iVar20 = (int)*s;\n              unaff_s5 = s;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar28 + -1),\n                     unaff_s4 + (int)(pcVar28 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            in_a1 = s + (int)pcVar28;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(in_a1);\n            (*(code *)PTR_memmove_003f9f68)(s + 1,in_a1,iVar20 + 1);\n            *s = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar28 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }\n    }" { (expression_statement "pcVar1 = (char *)0x1;" (assignment_expression "pcVar1 = (char *)0x1" identifier = (cast_expression "(char *)0x1" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_0028466c:\n      if (s == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (s[1] == '#')) {\n          in_a1 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(s,in_a1,&value);\n          unaff_s4 = puVar31 + -0x46bf;\n          if (iVar20 == 1) {\n            if (s[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = s + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              in_a1 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(s + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (s[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (s[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *s = (char)value;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar31 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar28 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar28;\n          if ((int)pcVar28 <= (int)pcVar1) {\n            if (s != unaff_s4) {\n              iVar20 = (int)*s;\n              unaff_s5 = s;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar28 + -1),\n                     unaff_s4 + (int)(pcVar28 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            in_a1 = s + (int)pcVar28;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(in_a1);\n            (*(code *)PTR_memmove_003f9f68)(s + 1,in_a1,iVar20 + 1);\n            *s = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar28 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }" statement_identifier : (if_statement "if (s == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (s[1] == '#')) {\n          in_a1 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(s,in_a1,&value);\n          unaff_s4 = puVar31 + -0x46bf;\n          if (iVar20 == 1) {\n            if (s[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = s + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              in_a1 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(s + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (s[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (s[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *s = (char)value;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar31 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar28 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar28;\n          if ((int)pcVar28 <= (int)pcVar1) {\n            if (s != unaff_s4) {\n              iVar20 = (int)*s;\n              unaff_s5 = s;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar28 + -1),\n                     unaff_s4 + (int)(pcVar28 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            in_a1 = s + (int)pcVar28;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(in_a1);\n            (*(code *)PTR_memmove_003f9f68)(s + 1,in_a1,iVar20 + 1);\n            *s = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar28 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }" if (parenthesized_expression "(s == (char *)0x0)" ( (binary_expression "s == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        pcVar1 = (char *)0x0;\n      }" { (expression_statement "pcVar1 = (char *)0x0;" (assignment_expression "pcVar1 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else {\n        if (((char *)0x3 < pcVar1) && (s[1] == '#')) {\n          in_a1 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(s,in_a1,&value);\n          unaff_s4 = puVar31 + -0x46bf;\n          if (iVar20 == 1) {\n            if (s[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = s + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              in_a1 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(s + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (s[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (s[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *s = (char)value;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar31 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar28 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar28;\n          if ((int)pcVar28 <= (int)pcVar1) {\n            if (s != unaff_s4) {\n              iVar20 = (int)*s;\n              unaff_s5 = s;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar28 + -1),\n                     unaff_s4 + (int)(pcVar28 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            in_a1 = s + (int)pcVar28;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(in_a1);\n            (*(code *)PTR_memmove_003f9f68)(s + 1,in_a1,iVar20 + 1);\n            *s = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar28 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }" else (compound_statement "{\n        if (((char *)0x3 < pcVar1) && (s[1] == '#')) {\n          in_a1 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(s,in_a1,&value);\n          unaff_s4 = puVar31 + -0x46bf;\n          if (iVar20 == 1) {\n            if (s[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = s + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              in_a1 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(s + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (s[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (s[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *s = (char)value;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar31 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar28 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar28;\n          if ((int)pcVar28 <= (int)pcVar1) {\n            if (s != unaff_s4) {\n              iVar20 = (int)*s;\n              unaff_s5 = s;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar28 + -1),\n                     unaff_s4 + (int)(pcVar28 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            in_a1 = s + (int)pcVar28;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(in_a1);\n            (*(code *)PTR_memmove_003f9f68)(s + 1,in_a1,iVar20 + 1);\n            *s = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar28 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }" { (if_statement "if (((char *)0x3 < pcVar1) && (s[1] == '#')) {\n          in_a1 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(s,in_a1,&value);\n          unaff_s4 = puVar31 + -0x46bf;\n          if (iVar20 == 1) {\n            if (s[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = s + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              in_a1 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(s + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (s[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (s[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *s = (char)value;\n            goto LAB_00284620;\n          }\n        }" if (parenthesized_expression "(((char *)0x3 < pcVar1) && (s[1] == '#'))" ( (binary_expression "((char *)0x3 < pcVar1) && (s[1] == '#')" (parenthesized_expression "((char *)0x3 < pcVar1)" ( (binary_expression "(char *)0x3 < pcVar1" (cast_expression "(char *)0x3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) < identifier) )) && (parenthesized_expression "(s[1] == '#')" ( (binary_expression "s[1] == '#'" (subscript_expression "s[1]" identifier [ number_literal ]) == (char_literal "'#'" ' character ')) ))) )) (compound_statement "{\n          in_a1 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(s,in_a1,&value);\n          unaff_s4 = puVar31 + -0x46bf;\n          if (iVar20 == 1) {\n            if (s[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = s + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              in_a1 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(s + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (s[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (s[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *s = (char)value;\n            goto LAB_00284620;\n          }\n        }" { (expression_statement "in_a1 = PTR_s__003f9950 + -0x4900;" (assignment_expression "in_a1 = PTR_s__003f9950 + -0x4900" identifier = (binary_expression "PTR_s__003f9950 + -0x4900" identifier + number_literal)) ;) (expression_statement "iVar20 = (*(code *)PTR_sscanf_003f9e4c)(s,in_a1,&value);" (assignment_expression "iVar20 = (*(code *)PTR_sscanf_003f9e4c)(s,in_a1,&value)" identifier = (call_expression "(*(code *)PTR_sscanf_003f9e4c)(s,in_a1,&value)" (parenthesized_expression "(*(code *)PTR_sscanf_003f9e4c)" ( (pointer_expression "*(code *)PTR_sscanf_003f9e4c" * (cast_expression "(code *)PTR_sscanf_003f9e4c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(s,in_a1,&value)" ( identifier , identifier , (pointer_expression "&value" & identifier) )))) ;) (expression_statement "unaff_s4 = puVar31 + -0x46bf;" (assignment_expression "unaff_s4 = puVar31 + -0x46bf" identifier = (binary_expression "puVar31 + -0x46bf" identifier + number_literal)) ;) (if_statement "if (iVar20 == 1) {\n            if (s[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = s + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              in_a1 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(s + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (s[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (s[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *s = (char)value;\n            goto LAB_00284620;\n          }" if (parenthesized_expression "(iVar20 == 1)" ( (binary_expression "iVar20 == 1" identifier == number_literal) )) (compound_statement "{\n            if (s[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = s + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              in_a1 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(s + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (s[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (s[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *s = (char)value;\n            goto LAB_00284620;\n          }" { (if_statement "if (s[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = s + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              in_a1 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(s + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (s[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (s[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }" if (parenthesized_expression "(s[3] == ';')" ( (binary_expression "s[3] == ';'" (subscript_expression "s[3]" identifier [ number_literal ]) == (char_literal "';'" ' character ')) )) (compound_statement "{\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = s + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              in_a1 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(s + 1,unaff_s1,iVar20 + 1);\n            }" { (expression_statement "pcVar1 = (char *)0x3;" (assignment_expression "pcVar1 = (char *)0x3" identifier = (cast_expression "(char *)0x3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_002848d4:\n              unaff_s1 = s + (int)(pcVar1 + 1);" statement_identifier : (expression_statement "unaff_s1 = s + (int)(pcVar1 + 1);" (assignment_expression "unaff_s1 = s + (int)(pcVar1 + 1)" identifier = (binary_expression "s + (int)(pcVar1 + 1)" identifier + (cast_expression "(int)(pcVar1 + 1)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(pcVar1 + 1)" ( (binary_expression "pcVar1 + 1" identifier + number_literal) ))))) ;)) (expression_statement "iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);" (assignment_expression "iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1)" identifier = (call_expression "(*(code *)PTR_strlen_003fa350)(unaff_s1)" (parenthesized_expression "(*(code *)PTR_strlen_003fa350)" ( (pointer_expression "*(code *)PTR_strlen_003fa350" * (cast_expression "(code *)PTR_strlen_003fa350" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s1)" ( identifier )))) ;) (expression_statement "in_a1 = unaff_s1;" (assignment_expression "in_a1 = unaff_s1" identifier = identifier) ;) (expression_statement "(*(code *)PTR_memmove_003f9f68)(s + 1,unaff_s1,iVar20 + 1);" (call_expression "(*(code *)PTR_memmove_003f9f68)(s + 1,unaff_s1,iVar20 + 1)" (parenthesized_expression "(*(code *)PTR_memmove_003f9f68)" ( (pointer_expression "*(code *)PTR_memmove_003f9f68" * (cast_expression "(code *)PTR_memmove_003f9f68" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(s + 1,unaff_s1,iVar20 + 1)" ( (binary_expression "s + 1" identifier + number_literal) , identifier , (binary_expression "iVar20 + 1" identifier + number_literal) ))) ;) }) (else_clause "else {\n              if (s[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (s[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }" else (compound_statement "{\n              if (s[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (s[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }" { (if_statement "if (s[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }" if (parenthesized_expression "(s[4] == ';')" ( (binary_expression "s[4] == ';'" (subscript_expression "s[4]" identifier [ number_literal ]) == (char_literal "';'" ' character ')) )) (compound_statement "{\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }" { (expression_statement "pcVar1 = &DAT_00000004;" (assignment_expression "pcVar1 = &DAT_00000004" identifier = (pointer_expression "&DAT_00000004" & identifier)) ;) (goto_statement "goto LAB_002848d4;" goto statement_identifier ;) })) (if_statement "if (s[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }" if (parenthesized_expression "(s[5] == ';')" ( (binary_expression "s[5] == ';'" (subscript_expression "s[5]" identifier [ number_literal ]) == (char_literal "';'" ' character ')) )) (compound_statement "{\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }" { (expression_statement "pcVar1 = &DAT_00000005;" (assignment_expression "pcVar1 = &DAT_00000005" identifier = (pointer_expression "&DAT_00000005" & identifier)) ;) (goto_statement "goto LAB_002848d4;" goto statement_identifier ;) })) (expression_statement "pcVar1 = &DAT_00000006;" (assignment_expression "pcVar1 = &DAT_00000006" identifier = (pointer_expression "&DAT_00000006" & identifier)) ;) }))) (expression_statement "*s = (char)value;" (assignment_expression "*s = (char)value" (pointer_expression "*s" * identifier) = (cast_expression "(char)value" ( (type_descriptor "char" primitive_type) ) identifier)) ;) (goto_statement "goto LAB_00284620;" goto statement_identifier ;) })) })) (expression_statement "unaff_s4 = puVar31 + -0x46bf;" (assignment_expression "unaff_s4 = puVar31 + -0x46bf" identifier = (binary_expression "puVar31 + -0x46bf" identifier + number_literal)) ;) (expression_statement "unaff_s6 = 0;" (assignment_expression "unaff_s6 = 0" identifier = number_literal) ;) (do_statement "do {\n          pcVar28 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar28;\n          if ((int)pcVar28 <= (int)pcVar1) {\n            if (s != unaff_s4) {\n              iVar20 = (int)*s;\n              unaff_s5 = s;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar28 + -1),\n                     unaff_s4 + (int)(pcVar28 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            in_a1 = s + (int)pcVar28;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(in_a1);\n            (*(code *)PTR_memmove_003f9f68)(s + 1,in_a1,iVar20 + 1);\n            *s = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar28 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);" do (compound_statement "{\n          pcVar28 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar28;\n          if ((int)pcVar28 <= (int)pcVar1) {\n            if (s != unaff_s4) {\n              iVar20 = (int)*s;\n              unaff_s5 = s;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar28 + -1),\n                     unaff_s4 + (int)(pcVar28 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            in_a1 = s + (int)pcVar28;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(in_a1);\n            (*(code *)PTR_memmove_003f9f68)(s + 1,in_a1,iVar20 + 1);\n            *s = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar28 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        }" { (expression_statement "pcVar28 = (char *)(uint)(byte)unaff_s4[-1];" (assignment_expression "pcVar28 = (char *)(uint)(byte)unaff_s4[-1]" identifier = (cast_expression "(char *)(uint)(byte)unaff_s4[-1]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (cast_expression "(uint)(byte)unaff_s4[-1]" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(byte)unaff_s4[-1]" ( (type_descriptor "byte" type_identifier) ) (subscript_expression "unaff_s4[-1]" identifier [ number_literal ]))))) ;) (expression_statement "unaff_s1 = unaff_s4;" (assignment_expression "unaff_s1 = unaff_s4" identifier = identifier) ;) (expression_statement "unaff_s5 = pcVar28;" (assignment_expression "unaff_s5 = pcVar28" identifier = identifier) ;) (if_statement "if ((int)pcVar28 <= (int)pcVar1) {\n            if (s != unaff_s4) {\n              iVar20 = (int)*s;\n              unaff_s5 = s;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar28 + -1),\n                     unaff_s4 + (int)(pcVar28 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            in_a1 = s + (int)pcVar28;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(in_a1);\n            (*(code *)PTR_memmove_003f9f68)(s + 1,in_a1,iVar20 + 1);\n            *s = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar28 + -1;\n            goto LAB_00284620;\n          }" if (parenthesized_expression "((int)pcVar28 <= (int)pcVar1)" ( (binary_expression "(int)pcVar28 <= (int)pcVar1" (cast_expression "(int)pcVar28" ( (type_descriptor "int" primitive_type) ) identifier) <= (cast_expression "(int)pcVar1" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n            if (s != unaff_s4) {\n              iVar20 = (int)*s;\n              unaff_s5 = s;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar28 + -1),\n                     unaff_s4 + (int)(pcVar28 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            in_a1 = s + (int)pcVar28;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(in_a1);\n            (*(code *)PTR_memmove_003f9f68)(s + 1,in_a1,iVar20 + 1);\n            *s = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar28 + -1;\n            goto LAB_00284620;\n          }" { (if_statement "if (s != unaff_s4) {\n              iVar20 = (int)*s;\n              unaff_s5 = s;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar28 + -1),\n                     unaff_s4 + (int)(pcVar28 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }" if (parenthesized_expression "(s != unaff_s4)" ( (binary_expression "s != unaff_s4" identifier != identifier) )) (compound_statement "{\n              iVar20 = (int)*s;\n              unaff_s5 = s;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar28 + -1),\n                     unaff_s4 + (int)(pcVar28 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }" { (expression_statement "iVar20 = (int)*s;" (assignment_expression "iVar20 = (int)*s" identifier = (cast_expression "(int)*s" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*s" * identifier))) ;) (expression_statement "unaff_s5 = s;" (assignment_expression "unaff_s5 = s" identifier = identifier) ;) (if_statement "if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar28 + -1),\n                     unaff_s4 + (int)(pcVar28 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }" if (parenthesized_expression "((iVar20 != 0) && (*unaff_s4 != '\0'))" ( (binary_expression "(iVar20 != 0) && (*unaff_s4 != '\0')" (parenthesized_expression "(iVar20 != 0)" ( (binary_expression "iVar20 != 0" identifier != number_literal) )) && (parenthesized_expression "(*unaff_s4 != '\0')" ( (binary_expression "*unaff_s4 != '\0'" (pointer_expression "*unaff_s4" * identifier) != (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar28 + -1),\n                     unaff_s4 + (int)(pcVar28 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }" { (expression_statement "unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();" (assignment_expression "unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)()" identifier = (cast_expression "(int *)(*(code *)PTR___ctype_b_loc_003fa44c)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___ctype_b_loc_003fa44c)()" (parenthesized_expression "(*(code *)PTR___ctype_b_loc_003fa44c)" ( (pointer_expression "*(code *)PTR___ctype_b_loc_003fa44c" * (cast_expression "(code *)PTR___ctype_b_loc_003fa44c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "pcVar23 = unaff_s4;" (assignment_expression "pcVar23 = unaff_s4" identifier = identifier) ;) (while_statement "while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar28 + -1),\n                     unaff_s4 + (int)(pcVar28 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar28 + -1),\n                     unaff_s4 + (int)(pcVar28 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }" { (expression_statement "unaff_s7 = iVar20;" (assignment_expression "unaff_s7 = iVar20" identifier = identifier) ;) (if_statement "if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }" if (parenthesized_expression "((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0)" ( (binary_expression "(*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0" (parenthesized_expression "(*(ushort *)(*unaff_s8 + iVar20 * 2) & 2)" ( (binary_expression "*(ushort *)(*unaff_s8 + iVar20 * 2) & 2" (pointer_expression "*(ushort *)(*unaff_s8 + iVar20 * 2)" * (cast_expression "(ushort *)(*unaff_s8 + iVar20 * 2)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*unaff_s8 + iVar20 * 2)" ( (binary_expression "*unaff_s8 + iVar20 * 2" (pointer_expression "*unaff_s8" * identifier) + (binary_expression "iVar20 * 2" identifier * number_literal)) )))) & number_literal) )) != number_literal) )) (compound_statement "{\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }" { (expression_statement "unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);" (assignment_expression "unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20)" identifier = (call_expression "(*(code *)PTR_LocaleUppercase_003fa768)(iVar20)" (parenthesized_expression "(*(code *)PTR_LocaleUppercase_003fa768)" ( (pointer_expression "*(code *)PTR_LocaleUppercase_003fa768" * (cast_expression "(code *)PTR_LocaleUppercase_003fa768" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar20)" ( identifier )))) ;) })) (expression_statement "iVar20 = (int)*pcVar23;" (assignment_expression "iVar20 = (int)*pcVar23" identifier = (cast_expression "(int)*pcVar23" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*pcVar23" * identifier))) ;) (if_statement "if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }" if (parenthesized_expression "((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0)" ( (binary_expression "(*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0" (parenthesized_expression "(*(ushort *)(*unaff_s8 + iVar20 * 2) & 2)" ( (binary_expression "*(ushort *)(*unaff_s8 + iVar20 * 2) & 2" (pointer_expression "*(ushort *)(*unaff_s8 + iVar20 * 2)" * (cast_expression "(ushort *)(*unaff_s8 + iVar20 * 2)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*unaff_s8 + iVar20 * 2)" ( (binary_expression "*unaff_s8 + iVar20 * 2" (pointer_expression "*unaff_s8" * identifier) + (binary_expression "iVar20 * 2" identifier * number_literal)) )))) & number_literal) )) != number_literal) )) (compound_statement "{\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }" { (expression_statement "iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);" (assignment_expression "iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20)" identifier = (call_expression "(*(code *)PTR_LocaleUppercase_003fa768)(iVar20)" (parenthesized_expression "(*(code *)PTR_LocaleUppercase_003fa768)" ( (pointer_expression "*(code *)PTR_LocaleUppercase_003fa768" * (cast_expression "(code *)PTR_LocaleUppercase_003fa768" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar20)" ( identifier )))) ;) })) (expression_statement "unaff_s1 = pcVar23;" (assignment_expression "unaff_s1 = pcVar23" identifier = identifier) ;) (if_statement "if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar28 + -1),\n                     unaff_s4 + (int)(pcVar28 + -1) == pcVar23)) break;" if (parenthesized_expression "((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar28 + -1),\n                     unaff_s4 + (int)(pcVar28 + -1) == pcVar23))" ( (binary_expression "(unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar28 + -1),\n                     unaff_s4 + (int)(pcVar28 + -1) == pcVar23)" (parenthesized_expression "(unaff_s7 != iVar20)" ( (binary_expression "unaff_s7 != iVar20" identifier != identifier) )) || (parenthesized_expression "(unaff_s1 = unaff_s4 + (int)(pcVar28 + -1),\n                     unaff_s4 + (int)(pcVar28 + -1) == pcVar23)" ( (comma_expression "unaff_s1 = unaff_s4 + (int)(pcVar28 + -1),\n                     unaff_s4 + (int)(pcVar28 + -1) == pcVar23" (assignment_expression "unaff_s1 = unaff_s4 + (int)(pcVar28 + -1)" identifier = (binary_expression "unaff_s4 + (int)(pcVar28 + -1)" identifier + (cast_expression "(int)(pcVar28 + -1)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(pcVar28 + -1)" ( (binary_expression "pcVar28 + -1" identifier + number_literal) ))))) , (binary_expression "unaff_s4 + (int)(pcVar28 + -1) == pcVar23" (binary_expression "unaff_s4 + (int)(pcVar28 + -1)" identifier + (cast_expression "(int)(pcVar28 + -1)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(pcVar28 + -1)" ( (binary_expression "pcVar28 + -1" identifier + number_literal) )))) == identifier)) ))) )) (break_statement "break;" break ;)) (expression_statement "unaff_s5 = unaff_s5 + 1;" (assignment_expression "unaff_s5 = unaff_s5 + 1" identifier = (binary_expression "unaff_s5 + 1" identifier + number_literal)) ;) (expression_statement "iVar20 = (int)*unaff_s5;" (assignment_expression "iVar20 = (int)*unaff_s5" identifier = (cast_expression "(int)*unaff_s5" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*unaff_s5" * identifier))) ;) (expression_statement "pcVar23 = pcVar23 + 1;" (assignment_expression "pcVar23 = pcVar23 + 1" identifier = (binary_expression "pcVar23 + 1" identifier + number_literal)) ;) (expression_statement "unaff_s1 = pcVar23;" (assignment_expression "unaff_s1 = pcVar23" identifier = identifier) ;) (if_statement "if ((iVar20 == 0) || (*pcVar23 == '\0')) break;" if (parenthesized_expression "((iVar20 == 0) || (*pcVar23 == '\0'))" ( (binary_expression "(iVar20 == 0) || (*pcVar23 == '\0')" (parenthesized_expression "(iVar20 == 0)" ( (binary_expression "iVar20 == 0" identifier == number_literal) )) || (parenthesized_expression "(*pcVar23 == '\0')" ( (binary_expression "*pcVar23 == '\0'" (pointer_expression "*pcVar23" * identifier) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (break_statement "break;" break ;)) })) })) (expression_statement "unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);" (assignment_expression "unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5)" identifier = (call_expression "(*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5)" (parenthesized_expression "(*(code *)PTR_LocaleUppercase_003fa768)" ( (pointer_expression "*(code *)PTR_LocaleUppercase_003fa768" * (cast_expression "(code *)PTR_LocaleUppercase_003fa768" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "((int)*unaff_s5)" ( (cast_expression "(int)*unaff_s5" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*unaff_s5" * identifier)) )))) ;) (expression_statement "iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);" (assignment_expression "iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1)" identifier = (call_expression "(*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1)" (parenthesized_expression "(*(code *)PTR_LocaleUppercase_003fa768)" ( (pointer_expression "*(code *)PTR_LocaleUppercase_003fa768" * (cast_expression "(code *)PTR_LocaleUppercase_003fa768" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "((int)*unaff_s1)" ( (cast_expression "(int)*unaff_s1" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*unaff_s1" * identifier)) )))) ;) (if_statement "if (unaff_s3 != iVar20) goto LAB_002847f0;" if (parenthesized_expression "(unaff_s3 != iVar20)" ( (binary_expression "unaff_s3 != iVar20" identifier != identifier) )) (goto_statement "goto LAB_002847f0;" goto statement_identifier ;)) })) (expression_statement "in_a1 = s + (int)pcVar28;" (assignment_expression "in_a1 = s + (int)pcVar28" identifier = (binary_expression "s + (int)pcVar28" identifier + (cast_expression "(int)pcVar28" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "iVar20 = (*(code *)PTR_strlen_003fa350)(in_a1);" (assignment_expression "iVar20 = (*(code *)PTR_strlen_003fa350)(in_a1)" identifier = (call_expression "(*(code *)PTR_strlen_003fa350)(in_a1)" (parenthesized_expression "(*(code *)PTR_strlen_003fa350)" ( (pointer_expression "*(code *)PTR_strlen_003fa350" * (cast_expression "(code *)PTR_strlen_003fa350" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(in_a1)" ( identifier )))) ;) (expression_statement "(*(code *)PTR_memmove_003f9f68)(s + 1,in_a1,iVar20 + 1);" (call_expression "(*(code *)PTR_memmove_003f9f68)(s + 1,in_a1,iVar20 + 1)" (parenthesized_expression "(*(code *)PTR_memmove_003f9f68)" ( (pointer_expression "*(code *)PTR_memmove_003f9f68" * (cast_expression "(code *)PTR_memmove_003f9f68" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(s + 1,in_a1,iVar20 + 1)" ( (binary_expression "s + 1" identifier + number_literal) , identifier , (binary_expression "iVar20 + 1" identifier + number_literal) ))) ;) (expression_statement "*s = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];" (assignment_expression "*s = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8]" (pointer_expression "*s" * identifier) = (subscript_expression "PTR_s__003f9950[unaff_s6 * 9 + -0x46b8]" identifier [ (binary_expression "unaff_s6 * 9 + -0x46b8" (binary_expression "unaff_s6 * 9" identifier * number_literal) + number_literal) ])) ;) (expression_statement "pcVar1 = pcVar28 + -1;" (assignment_expression "pcVar1 = pcVar28 + -1" identifier = (binary_expression "pcVar28 + -1" identifier + number_literal)) ;) (goto_statement "goto LAB_00284620;" goto statement_identifier ;) })) (labeled_statement "LAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;" statement_identifier : (expression_statement "unaff_s6 = unaff_s6 + 1;" (assignment_expression "unaff_s6 = unaff_s6 + 1" identifier = (binary_expression "unaff_s6 + 1" identifier + number_literal)) ;)) (expression_statement "unaff_s4 = unaff_s4 + 9;" (assignment_expression "unaff_s4 = unaff_s4 + 9" identifier = (binary_expression "unaff_s4 + 9" identifier + number_literal)) ;) }) while (parenthesized_expression "(unaff_s6 != 3)" ( (binary_expression "unaff_s6 != 3" identifier != number_literal) )) ;) (expression_statement "pcVar1 = (char *)0x0;" (assignment_expression "pcVar1 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })))) }) (else_clause "else {\n      pcVar1 = s + 1;\n      iVar20 = 1;\n      in_a1 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }" else (compound_statement "{\n      pcVar1 = s + 1;\n      iVar20 = 1;\n      in_a1 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }" { (expression_statement "pcVar1 = s + 1;" (assignment_expression "pcVar1 = s + 1" identifier = (binary_expression "s + 1" identifier + number_literal)) ;) (expression_statement "iVar20 = 1;" (assignment_expression "iVar20 = 1" identifier = number_literal) ;) (expression_statement "in_a1 = &DAT_00000007;" (assignment_expression "in_a1 = &DAT_00000007" identifier = (pointer_expression "&DAT_00000007" & identifier)) ;) (do_statement "do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);" do (compound_statement "{\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      }" { (if_statement "if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }" if (parenthesized_expression "(*pcVar1 == '\0')" ( (binary_expression "*pcVar1 == '\0'" (pointer_expression "*pcVar1" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }" { (expression_statement "pcVar1 = (char *)0x0;" (assignment_expression "pcVar1 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_00284620;" goto statement_identifier ;) })) (if_statement "if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }" if (parenthesized_expression "(*pcVar1 == ';')" ( (binary_expression "*pcVar1 == ';'" (pointer_expression "*pcVar1" * identifier) == (char_literal "';'" ' character ')) )) (compound_statement "{\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }" { (expression_statement "pcVar1 = (char *)(iVar20 + 1);" (assignment_expression "pcVar1 = (char *)(iVar20 + 1)" identifier = (cast_expression "(char *)(iVar20 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 1)" ( (binary_expression "iVar20 + 1" identifier + number_literal) )))) ;) (if_statement "if (pcVar1 == (char *)0x0) goto LAB_00284620;" if (parenthesized_expression "(pcVar1 == (char *)0x0)" ( (binary_expression "pcVar1 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00284620;" goto statement_identifier ;)) (goto_statement "goto LAB_0028466c;" goto statement_identifier ;) })) (expression_statement "iVar20 = iVar20 + 1;" (assignment_expression "iVar20 = iVar20 + 1" identifier = (binary_expression "iVar20 + 1" identifier + number_literal)) ;) (expression_statement "pcVar1 = pcVar1 + 1;" (assignment_expression "pcVar1 = pcVar1 + 1" identifier = (binary_expression "pcVar1 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar20 != 7)" ( (binary_expression "iVar20 != 7" identifier != number_literal) )) ;) (expression_statement "pcVar1 = (char *)0x0;" (assignment_expression "pcVar1 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }))) }))) (labeled_statement "LAB_00284620:\n  if (local_2c == *(int *)PTR___stack_chk_guard_003fa248) {\n    return (size_t)pcVar1;\n  }" statement_identifier : (if_statement "if (local_2c == *(int *)PTR___stack_chk_guard_003fa248) {\n    return (size_t)pcVar1;\n  }" if (parenthesized_expression "(local_2c == *(int *)PTR___stack_chk_guard_003fa248)" ( (binary_expression "local_2c == *(int *)PTR___stack_chk_guard_003fa248" identifier == (pointer_expression "*(int *)PTR___stack_chk_guard_003fa248" * (cast_expression "(int *)PTR___stack_chk_guard_003fa248" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) )) (compound_statement "{\n    return (size_t)pcVar1;\n  }" { (return_statement "return (size_t)pcVar1;" return (cast_expression "(size_t)pcVar1" ( (type_descriptor "size_t" primitive_type) ) identifier) ;) }))) (expression_statement "pcVar32 = ReadMETAImage;" (assignment_expression "pcVar32 = ReadMETAImage" identifier = identifier) ;) (expression_statement "iVar20 = local_2c;" (assignment_expression "iVar20 = local_2c" identifier = identifier) ;) (expression_statement "puVar31 = PTR___stack_chk_fail_003fa07c;" (assignment_expression "puVar31 = PTR___stack_chk_fail_003fa07c" identifier = identifier) ;) (expression_statement "(*(code *)PTR___stack_chk_fail_003fa07c)();" (call_expression "(*(code *)PTR___stack_chk_fail_003fa07c)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_003fa07c)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_003fa07c" * (cast_expression "(code *)PTR___stack_chk_fail_003fa07c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "iStack_84 = **(int **)(puVar31 + 0x175918);" (assignment_expression "iStack_84 = **(int **)(puVar31 + 0x175918)" identifier = (pointer_expression "**(int **)(puVar31 + 0x175918)" * (pointer_expression "*(int **)(puVar31 + 0x175918)" * (cast_expression "(int **)(puVar31 + 0x175918)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175918)" ( (binary_expression "puVar31 + 0x175918" identifier + number_literal) )))))) ;) (expression_statement "pcStack_80 = pcVar1;" (assignment_expression "pcStack_80 = pcVar1" identifier = identifier) ;) (expression_statement "pcStack_7c = unaff_s1;" (assignment_expression "pcStack_7c = unaff_s1" identifier = identifier) ;) (expression_statement "pcStack_78 = unaff_s2;" (assignment_expression "pcStack_78 = unaff_s2" identifier = identifier) ;) (expression_statement "iStack_74 = unaff_s3;" (assignment_expression "iStack_74 = unaff_s3" identifier = identifier) ;) (expression_statement "pcStack_70 = unaff_s4;" (assignment_expression "pcStack_70 = unaff_s4" identifier = identifier) ;) (expression_statement "pcStack_6c = unaff_s5;" (assignment_expression "pcStack_6c = unaff_s5" identifier = identifier) ;) (expression_statement "iStack_68 = unaff_s6;" (assignment_expression "iStack_68 = unaff_s6" identifier = identifier) ;) (expression_statement "iStack_64 = unaff_s7;" (assignment_expression "iStack_64 = unaff_s7" identifier = identifier) ;) (expression_statement "piStack_60 = unaff_s8;" (assignment_expression "piStack_60 = unaff_s8" identifier = identifier) ;) (expression_statement "pcStack_5c = pcVar32;" (assignment_expression "pcStack_5c = pcVar32" identifier = identifier) ;) (if_statement "if (iVar20 == 0) {\n    sVar4 = (**(code **)(puVar31 + 0x175cf0))\n                      (*(int *)(puVar31 + 0x174fb0) + 0x3d48,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4a5,*(int *)(puVar31 + 0x175020) + -0x46f0);\n    return sVar4;\n  }" if (parenthesized_expression "(iVar20 == 0)" ( (binary_expression "iVar20 == 0" identifier == number_literal) )) (compound_statement "{\n    sVar4 = (**(code **)(puVar31 + 0x175cf0))\n                      (*(int *)(puVar31 + 0x174fb0) + 0x3d48,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4a5,*(int *)(puVar31 + 0x175020) + -0x46f0);\n    return sVar4;\n  }" { (expression_statement "sVar4 = (**(code **)(puVar31 + 0x175cf0))\n                      (*(int *)(puVar31 + 0x174fb0) + 0x3d48,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4a5,*(int *)(puVar31 + 0x175020) + -0x46f0);" (assignment_expression "sVar4 = (**(code **)(puVar31 + 0x175cf0))\n                      (*(int *)(puVar31 + 0x174fb0) + 0x3d48,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4a5,*(int *)(puVar31 + 0x175020) + -0x46f0)" identifier = (call_expression "(**(code **)(puVar31 + 0x175cf0))\n                      (*(int *)(puVar31 + 0x174fb0) + 0x3d48,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4a5,*(int *)(puVar31 + 0x175020) + -0x46f0)" (parenthesized_expression "(**(code **)(puVar31 + 0x175cf0))" ( (pointer_expression "**(code **)(puVar31 + 0x175cf0)" * (pointer_expression "*(code **)(puVar31 + 0x175cf0)" * (cast_expression "(code **)(puVar31 + 0x175cf0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175cf0)" ( (binary_expression "puVar31 + 0x175cf0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar31 + 0x174fb0) + 0x3d48,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4a5,*(int *)(puVar31 + 0x175020) + -0x46f0)" ( (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x3d48" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x46f0" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) )))) ;) (return_statement "return sVar4;" return identifier ;) })) (if_statement "if (*(int *)(iVar20 + 0x3214) != -0x54535255) {\n    sVar4 = (**(code **)(puVar31 + 0x175cf0))\n                      (*(int *)(puVar31 + 0x174fb0) + 0x3d70,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4a6,*(int *)(puVar31 + 0x175020) + -0x46f0);\n    return sVar4;\n  }" if (parenthesized_expression "(*(int *)(iVar20 + 0x3214) != -0x54535255)" ( (binary_expression "*(int *)(iVar20 + 0x3214) != -0x54535255" (pointer_expression "*(int *)(iVar20 + 0x3214)" * (cast_expression "(int *)(iVar20 + 0x3214)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x3214)" ( (binary_expression "iVar20 + 0x3214" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    sVar4 = (**(code **)(puVar31 + 0x175cf0))\n                      (*(int *)(puVar31 + 0x174fb0) + 0x3d70,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4a6,*(int *)(puVar31 + 0x175020) + -0x46f0);\n    return sVar4;\n  }" { (expression_statement "sVar4 = (**(code **)(puVar31 + 0x175cf0))\n                      (*(int *)(puVar31 + 0x174fb0) + 0x3d70,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4a6,*(int *)(puVar31 + 0x175020) + -0x46f0);" (assignment_expression "sVar4 = (**(code **)(puVar31 + 0x175cf0))\n                      (*(int *)(puVar31 + 0x174fb0) + 0x3d70,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4a6,*(int *)(puVar31 + 0x175020) + -0x46f0)" identifier = (call_expression "(**(code **)(puVar31 + 0x175cf0))\n                      (*(int *)(puVar31 + 0x174fb0) + 0x3d70,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4a6,*(int *)(puVar31 + 0x175020) + -0x46f0)" (parenthesized_expression "(**(code **)(puVar31 + 0x175cf0))" ( (pointer_expression "**(code **)(puVar31 + 0x175cf0)" * (pointer_expression "*(code **)(puVar31 + 0x175cf0)" * (cast_expression "(code **)(puVar31 + 0x175cf0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175cf0)" ( (binary_expression "puVar31 + 0x175cf0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar31 + 0x174fb0) + 0x3d70,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4a6,*(int *)(puVar31 + 0x175020) + -0x46f0)" ( (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x3d70" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x46f0" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) )))) ;) (return_statement "return sVar4;" return identifier ;) })) (if_statement "if (*(int *)(iVar20 + 0x3210) != 0) {\n    (**(code **)(puVar31 + 0x1758c8))\n              (0x8000,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x4a8,*(int *)(puVar31 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210);\n  }" if (parenthesized_expression "(*(int *)(iVar20 + 0x3210) != 0)" ( (binary_expression "*(int *)(iVar20 + 0x3210) != 0" (pointer_expression "*(int *)(iVar20 + 0x3210)" * (cast_expression "(int *)(iVar20 + 0x3210)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x3210)" ( (binary_expression "iVar20 + 0x3210" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    (**(code **)(puVar31 + 0x1758c8))\n              (0x8000,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x4a8,*(int *)(puVar31 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210);\n  }" { (expression_statement "(**(code **)(puVar31 + 0x1758c8))\n              (0x8000,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x4a8,*(int *)(puVar31 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210);" (call_expression "(**(code **)(puVar31 + 0x1758c8))\n              (0x8000,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x4a8,*(int *)(puVar31 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar31 + 0x1758c8))" ( (pointer_expression "**(code **)(puVar31 + 0x1758c8)" * (pointer_expression "*(code **)(puVar31 + 0x1758c8)" * (cast_expression "(code **)(puVar31 + 0x1758c8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1758c8)" ( (binary_expression "puVar31 + 0x1758c8" identifier + number_literal) ))))) )) (argument_list "(0x8000,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x4a8,*(int *)(puVar31 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210)" ( number_literal , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(puVar31 + 0x174fb8) + -0x2f6c" (pointer_expression "*(int *)(puVar31 + 0x174fb8)" * (cast_expression "(int *)(puVar31 + 0x174fb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb8)" ( (binary_expression "puVar31 + 0x174fb8" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) })) (if_statement "if (in_a1 == (char *)0x0) {\n    sVar4 = (**(code **)(puVar31 + 0x175cf0))\n                      (*(int *)(puVar31 + 0x174fb0) + 0x4c80,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4aa,*(int *)(puVar31 + 0x175020) + -0x46f0);\n    return sVar4;\n  }" if (parenthesized_expression "(in_a1 == (char *)0x0)" ( (binary_expression "in_a1 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    sVar4 = (**(code **)(puVar31 + 0x175cf0))\n                      (*(int *)(puVar31 + 0x174fb0) + 0x4c80,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4aa,*(int *)(puVar31 + 0x175020) + -0x46f0);\n    return sVar4;\n  }" { (expression_statement "sVar4 = (**(code **)(puVar31 + 0x175cf0))\n                      (*(int *)(puVar31 + 0x174fb0) + 0x4c80,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4aa,*(int *)(puVar31 + 0x175020) + -0x46f0);" (assignment_expression "sVar4 = (**(code **)(puVar31 + 0x175cf0))\n                      (*(int *)(puVar31 + 0x174fb0) + 0x4c80,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4aa,*(int *)(puVar31 + 0x175020) + -0x46f0)" identifier = (call_expression "(**(code **)(puVar31 + 0x175cf0))\n                      (*(int *)(puVar31 + 0x174fb0) + 0x4c80,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4aa,*(int *)(puVar31 + 0x175020) + -0x46f0)" (parenthesized_expression "(**(code **)(puVar31 + 0x175cf0))" ( (pointer_expression "**(code **)(puVar31 + 0x175cf0)" * (pointer_expression "*(code **)(puVar31 + 0x175cf0)" * (cast_expression "(code **)(puVar31 + 0x175cf0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175cf0)" ( (binary_expression "puVar31 + 0x175cf0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar31 + 0x174fb0) + 0x4c80,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4aa,*(int *)(puVar31 + 0x175020) + -0x46f0)" ( (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x4c80" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x46f0" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) )))) ;) (return_statement "return sVar4;" return identifier ;) })) (if_statement "if (*(int *)(in_a1 + 0x1c) != -0x54535255) {\n    sVar4 = (**(code **)(puVar31 + 0x175cf0))\n                      (*(int *)(puVar31 + 0x174fb0) + 0x595c,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4ab,*(int *)(puVar31 + 0x175020) + -0x46f0);\n    return sVar4;\n  }" if (parenthesized_expression "(*(int *)(in_a1 + 0x1c) != -0x54535255)" ( (binary_expression "*(int *)(in_a1 + 0x1c) != -0x54535255" (pointer_expression "*(int *)(in_a1 + 0x1c)" * (cast_expression "(int *)(in_a1 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_a1 + 0x1c)" ( (binary_expression "in_a1 + 0x1c" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    sVar4 = (**(code **)(puVar31 + 0x175cf0))\n                      (*(int *)(puVar31 + 0x174fb0) + 0x595c,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4ab,*(int *)(puVar31 + 0x175020) + -0x46f0);\n    return sVar4;\n  }" { (expression_statement "sVar4 = (**(code **)(puVar31 + 0x175cf0))\n                      (*(int *)(puVar31 + 0x174fb0) + 0x595c,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4ab,*(int *)(puVar31 + 0x175020) + -0x46f0);" (assignment_expression "sVar4 = (**(code **)(puVar31 + 0x175cf0))\n                      (*(int *)(puVar31 + 0x174fb0) + 0x595c,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4ab,*(int *)(puVar31 + 0x175020) + -0x46f0)" identifier = (call_expression "(**(code **)(puVar31 + 0x175cf0))\n                      (*(int *)(puVar31 + 0x174fb0) + 0x595c,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4ab,*(int *)(puVar31 + 0x175020) + -0x46f0)" (parenthesized_expression "(**(code **)(puVar31 + 0x175cf0))" ( (pointer_expression "**(code **)(puVar31 + 0x175cf0)" * (pointer_expression "*(code **)(puVar31 + 0x175cf0)" * (cast_expression "(code **)(puVar31 + 0x175cf0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175cf0)" ( (binary_expression "puVar31 + 0x175cf0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar31 + 0x174fb0) + 0x595c,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       0x4ab,*(int *)(puVar31 + 0x175020) + -0x46f0)" ( (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x595c" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x46f0" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) )))) ;) (return_statement "return sVar4;" return identifier ;) })) (expression_statement "pIStack_10fc = (Image *)(**(code **)(puVar31 + 0x175cf4))(iVar20,in_a1);" (assignment_expression "pIStack_10fc = (Image *)(**(code **)(puVar31 + 0x175cf4))(iVar20,in_a1)" identifier = (cast_expression "(Image *)(**(code **)(puVar31 + 0x175cf4))(iVar20,in_a1)" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar31 + 0x175cf4))(iVar20,in_a1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175cf4))" ( (pointer_expression "**(code **)(puVar31 + 0x175cf4)" * (pointer_expression "*(code **)(puVar31 + 0x175cf4)" * (cast_expression "(code **)(puVar31 + 0x175cf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175cf4)" ( (binary_expression "puVar31 + 0x175cf4" identifier + number_literal) ))))) )) (argument_list "(iVar20,in_a1)" ( identifier , identifier ))))) ;) (expression_statement "iVar2 = (**(code **)(puVar31 + 0x175934))(iVar20,pIStack_10fc,2,in_a1);" (assignment_expression "iVar2 = (**(code **)(puVar31 + 0x175934))(iVar20,pIStack_10fc,2,in_a1)" identifier = (call_expression "(**(code **)(puVar31 + 0x175934))(iVar20,pIStack_10fc,2,in_a1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175934))" ( (pointer_expression "**(code **)(puVar31 + 0x175934)" * (pointer_expression "*(code **)(puVar31 + 0x175934)" * (cast_expression "(code **)(puVar31 + 0x175934)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175934)" ( (binary_expression "puVar31 + 0x175934" identifier + number_literal) ))))) )) (argument_list "(iVar20,pIStack_10fc,2,in_a1)" ( identifier , identifier , number_literal , identifier )))) ;) (if_statement "if (iVar2 == 0) {\n    (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n    pIStack_10fc = (Image *)0x0;\n    goto LAB_00287858;\n  }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n    (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n    pIStack_10fc = (Image *)0x0;\n    goto LAB_00287858;\n  }" { (expression_statement "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf8)" * (pointer_expression "*(code **)(puVar31 + 0x175bf8)" * (cast_expression "(code **)(puVar31 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf8)" ( (binary_expression "puVar31 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "pIStack_10fc = (Image *)0x0;" (assignment_expression "pIStack_10fc = (Image *)0x0" identifier = (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "pIStack_10fc->columns = 1;" (assignment_expression "pIStack_10fc->columns = 1" (field_expression "pIStack_10fc->columns" identifier -> field_identifier) = number_literal) ;) (expression_statement "pIStack_10fc->rows = 1;" (assignment_expression "pIStack_10fc->rows = 1" (field_expression "pIStack_10fc->rows" identifier -> field_identifier) = number_literal) ;) (expression_statement "iVar2 = (**(code **)(puVar31 + 0x175578))(pIStack_10fc,in_a1);" (assignment_expression "iVar2 = (**(code **)(puVar31 + 0x175578))(pIStack_10fc,in_a1)" identifier = (call_expression "(**(code **)(puVar31 + 0x175578))(pIStack_10fc,in_a1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175578))" ( (pointer_expression "**(code **)(puVar31 + 0x175578)" * (pointer_expression "*(code **)(puVar31 + 0x175578)" * (cast_expression "(code **)(puVar31 + 0x175578)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175578)" ( (binary_expression "puVar31 + 0x175578" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc,in_a1)" ( identifier , identifier )))) ;) (if_statement "if (iVar2 == 0) {\n    (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n    pIStack_10fc = (Image *)0x0;\n    goto LAB_00287858;\n  }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n    (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n    pIStack_10fc = (Image *)0x0;\n    goto LAB_00287858;\n  }" { (expression_statement "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf8)" * (pointer_expression "*(code **)(puVar31 + 0x175bf8)" * (cast_expression "(code **)(puVar31 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf8)" ( (binary_expression "puVar31 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "pIStack_10fc = (Image *)0x0;" (assignment_expression "pIStack_10fc = (Image *)0x0" identifier = (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "iVar2 = iVar20 + 0x210;" (assignment_expression "iVar2 = iVar20 + 0x210" identifier = (binary_expression "iVar20 + 0x210" identifier + number_literal)) ;) (expression_statement "iVar3 = (**(code **)(puVar31 + 0x175d04))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x7890,4);" (assignment_expression "iVar3 = (**(code **)(puVar31 + 0x175d04))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x7890,4)" identifier = (call_expression "(**(code **)(puVar31 + 0x175d04))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x7890,4)" (parenthesized_expression "(**(code **)(puVar31 + 0x175d04))" ( (pointer_expression "**(code **)(puVar31 + 0x175d04)" * (pointer_expression "*(code **)(puVar31 + 0x175d04)" * (cast_expression "(code **)(puVar31 + 0x175d04)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175d04)" ( (binary_expression "puVar31 + 0x175d04" identifier + number_literal) ))))) )) (argument_list "(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x7890,4)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x7890" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , number_literal )))) ;) (if_statement "if (iVar3 == 0) {\n    iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n    if (iVar3 == 0) {\n      (**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x4c2,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n      if (pIStack_10fc != (Image *)0x0) {\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n        pIStack_10fc = (Image *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(1,1);\n    if (puVar5 == (undefined1 *)0x0) {\n      (**(code **)(puVar31 + 0x175634))(iVar3);\n      (**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x4c7,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n      if (pIStack_10fc != (Image *)0x0) {\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n        pIStack_10fc = (Image *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    *puVar5 = 0;\n    (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),puVar5);\n    iVar19 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78a0);\n    if (iVar19 != 0) {\n      iVar19 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78ac);\n      if (iVar19 == 0) {\n        puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(0x1000,1);\n        if (puVar5 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar31 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar26 = 0;\n          iVar13 = *(int *)(puVar31 + 0x175020);\n          iVar22 = *(int *)(puVar31 + 0x1752b0);\n          iVar14 = *(int *)(puVar31 + 0x174fb8);\n          puVar21 = puVar5;\nLAB_00285dec:\n          do {\n            iVar9 = (**(code **)(puVar31 + 0x175a78))(pIStack_10fc);\n            if ((iVar9 != -1) && (iVar9 != 10)) {\n              iVar10 = (**(code **)(puVar31 + 0x175e30))(pIStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar5;\n              if (iVar10 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1)\n                  ;\n                  if (puVar5 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar5 + iVar24;\n                }\n                *puVar21 = (char)iVar9;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar5 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar26 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n            if (iVar26 == 0) {\n              (**(code **)(puVar31 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar31 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar10 = *(int *)(puVar31 + 0x174fc8);\n            iVar24 = *(int *)(puVar31 + 0x174fb8) + -0x2d8;\n            iVar9 = 0;\n            while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                     (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar7 == 0) {\n              if (iVar9 == 0) {\n                iStack_10a8 = 0;\n                iVar8 = *(int *)(puVar31 + 0x174fc8);\n                iVar29 = *(int *)(puVar31 + 0x174fb0);\n                iVar7 = 0;\nLAB_002857fc:\n                do {\n                  iVar6 = (**(code **)(puVar31 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar6 != 0) goto LAB_00285914;\n                  if (iVar7 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar7 == 2) {\n                    iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar7 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                      (**(code **)(puVar31 + 0x175f24))(puStack_10ec,iVar19,iVar7 + 0x1000);\n                      iVar7 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar7 == 0) {\n                    iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                    if (iVar6 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar7 = iVar7 + 1;\n                } while( true );\n              }\n              if (iVar9 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar31 + 0x175a20))();\n              while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar7) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar7;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if ((iVar7 < 0) || (iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3), iVar7 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar31 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = iVar7 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n                  uVar30 = (uint)bVar18;\n                  if (uVar30 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar30);\n                  }\n                  iVar7 = uStack_10d4 + 7 + uVar30;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if (iVar8 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar7 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar7 + 4;\n                  iVar7 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      iVar7 = iVar7 + -1;\n                    } while (iVar7 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar9 = iVar9 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar7 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n                iVar9 = 2;\n              }\n            }\n            iVar26 = (**(code **)(puVar31 + 0x17575c))(iVar26);\n            iVar19 = (**(code **)(puVar31 + 0x17575c))(iVar19);\n            puVar21 = puVar5;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }\n      iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n      if (iVar19 != 0) {\n        (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }\n      uStack_10d4 = 1;\n      goto LAB_00286050;\n    }\n    puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(0x1000,1);\n    if (puVar5 == (undefined1 *)0x0) {\nLAB_0028544c:\n      uStack_10d4 = 0xffffffff;\n    }\n    else {\n      uVar15 = (**(code **)(puVar31 + 0x175bdc))();\n      iStack_10cc = 0x1000;\n      uStack_10d4 = 0;\n      uStack_10c8 = 0;\n      uStack_10e4 = 0;\n      cVar17 = '\0';\n      puStack_10dc = (undefined1 *)0x0;\n      iVar19 = 0;\n      iVar26 = 0;\n      iVar13 = *(int *)(puVar31 + 0x175020);\n      iVar22 = *(int *)(puVar31 + 0x1752b0);\n      iVar14 = *(int *)(puVar31 + 0x174fb8);\n      puVar21 = puVar5;\n      while( true ) {\n        while ((iVar9 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar9 != -1 &&\n               (iVar10 = (int)puVar21 - (int)puVar5, iVar9 != 10))) {\n          if (iStack_10cc <= iVar10 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1);\n            if (puVar5 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar5 + iVar10;\n          }\n          *puVar21 = (char)iVar9;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar5 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar26 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n        if (iVar26 == 0) {\n          (**(code **)(puVar31 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar31 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar10 = *(int *)(puVar31 + 0x174fc8);\n        iVar24 = *(int *)(puVar31 + 0x174fb8) + -0x2d8;\n        iVar9 = 0;\n        while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                 (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar7 == 0) {\n          if (iVar9 == 0) {\n            iStack_10a8 = 0;\n            iVar8 = *(int *)(puVar31 + 0x174fc8);\n            iVar29 = *(int *)(puVar31 + 0x174fb0);\n            iVar7 = 0;\nLAB_00284ff4:\n            do {\n              iVar6 = (**(code **)(puVar31 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar6 != 0) goto LAB_002850f4;\n              if (iVar7 == 1) {\n                uStack_10e4 = (**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar7 == 2) {\n                iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar7 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar7 == 0) {\n                iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                if (iVar6 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar7 = iVar7 + 1;\n            } while( true );\n          }\n          if (iVar9 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar31 + 0x175a20))();\n          while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar7) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar7;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }\n              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar31 + 0x1759bc))(iVar3);\n              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar31 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              iVar7 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              iVar7 = iVar7 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n              uVar30 = (uint)bVar18;\n              if (uVar30 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar30);\n              }\n              iVar7 = uStack_10d4 + 7 + uVar30;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n              if (iVar8 < 0) goto LAB_0028544c;\n              (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar7 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar7 + 4;\n              iVar7 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar9 = iVar9 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar7 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n              iVar7 = iVar7 + -1;\n            } while (iVar7 != -1);\n            iVar9 = 2;\n          }\n        }\n        iVar26 = (**(code **)(puVar31 + 0x17575c))(iVar26);\n        iVar19 = (**(code **)(puVar31 + 0x17575c))(iVar19);\n        puVar21 = puVar5;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10dc);\n        }\n      }\nLAB_0028573c:\n      (**(code **)(puVar31 + 0x175450))(uVar15);\n      if (iVar26 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar31 + 0x17575c))(iVar26);\n      }\nLAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar31 + 0x17575c))(iVar19);\n      }\n      if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar31 + 0x17575c))(puStack_10dc);\n      }\n      (**(code **)(puVar31 + 0x17575c))(puVar5);\n      if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }\nLAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar3);\n        (**(code **)(puVar31 + 0x175608))\n                  (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                   *(int *)(puVar31 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar31 + 0x174fb4) + 0x1854,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pIStack_10fc != (Image *)0x0) {\n          (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n          (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n          pIStack_10fc = (Image *)0x0;\n        }\n        goto LAB_00287858;\n      }\n      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n    }\n    (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n    goto LAB_00286050;\n  }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n    iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n    if (iVar3 == 0) {\n      (**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x4c2,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n      if (pIStack_10fc != (Image *)0x0) {\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n        pIStack_10fc = (Image *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(1,1);\n    if (puVar5 == (undefined1 *)0x0) {\n      (**(code **)(puVar31 + 0x175634))(iVar3);\n      (**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x4c7,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n      if (pIStack_10fc != (Image *)0x0) {\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n        pIStack_10fc = (Image *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    *puVar5 = 0;\n    (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),puVar5);\n    iVar19 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78a0);\n    if (iVar19 != 0) {\n      iVar19 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78ac);\n      if (iVar19 == 0) {\n        puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(0x1000,1);\n        if (puVar5 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar31 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar26 = 0;\n          iVar13 = *(int *)(puVar31 + 0x175020);\n          iVar22 = *(int *)(puVar31 + 0x1752b0);\n          iVar14 = *(int *)(puVar31 + 0x174fb8);\n          puVar21 = puVar5;\nLAB_00285dec:\n          do {\n            iVar9 = (**(code **)(puVar31 + 0x175a78))(pIStack_10fc);\n            if ((iVar9 != -1) && (iVar9 != 10)) {\n              iVar10 = (**(code **)(puVar31 + 0x175e30))(pIStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar5;\n              if (iVar10 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1)\n                  ;\n                  if (puVar5 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar5 + iVar24;\n                }\n                *puVar21 = (char)iVar9;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar5 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar26 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n            if (iVar26 == 0) {\n              (**(code **)(puVar31 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar31 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar10 = *(int *)(puVar31 + 0x174fc8);\n            iVar24 = *(int *)(puVar31 + 0x174fb8) + -0x2d8;\n            iVar9 = 0;\n            while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                     (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar7 == 0) {\n              if (iVar9 == 0) {\n                iStack_10a8 = 0;\n                iVar8 = *(int *)(puVar31 + 0x174fc8);\n                iVar29 = *(int *)(puVar31 + 0x174fb0);\n                iVar7 = 0;\nLAB_002857fc:\n                do {\n                  iVar6 = (**(code **)(puVar31 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar6 != 0) goto LAB_00285914;\n                  if (iVar7 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar7 == 2) {\n                    iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar7 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                      (**(code **)(puVar31 + 0x175f24))(puStack_10ec,iVar19,iVar7 + 0x1000);\n                      iVar7 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar7 == 0) {\n                    iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                    if (iVar6 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar7 = iVar7 + 1;\n                } while( true );\n              }\n              if (iVar9 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar31 + 0x175a20))();\n              while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar7) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar7;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if ((iVar7 < 0) || (iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3), iVar7 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar31 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = iVar7 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n                  uVar30 = (uint)bVar18;\n                  if (uVar30 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar30);\n                  }\n                  iVar7 = uStack_10d4 + 7 + uVar30;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if (iVar8 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar7 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar7 + 4;\n                  iVar7 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      iVar7 = iVar7 + -1;\n                    } while (iVar7 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar9 = iVar9 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar7 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n                iVar9 = 2;\n              }\n            }\n            iVar26 = (**(code **)(puVar31 + 0x17575c))(iVar26);\n            iVar19 = (**(code **)(puVar31 + 0x17575c))(iVar19);\n            puVar21 = puVar5;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }\n      iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n      if (iVar19 != 0) {\n        (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }\n      uStack_10d4 = 1;\n      goto LAB_00286050;\n    }\n    puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(0x1000,1);\n    if (puVar5 == (undefined1 *)0x0) {\nLAB_0028544c:\n      uStack_10d4 = 0xffffffff;\n    }\n    else {\n      uVar15 = (**(code **)(puVar31 + 0x175bdc))();\n      iStack_10cc = 0x1000;\n      uStack_10d4 = 0;\n      uStack_10c8 = 0;\n      uStack_10e4 = 0;\n      cVar17 = '\0';\n      puStack_10dc = (undefined1 *)0x0;\n      iVar19 = 0;\n      iVar26 = 0;\n      iVar13 = *(int *)(puVar31 + 0x175020);\n      iVar22 = *(int *)(puVar31 + 0x1752b0);\n      iVar14 = *(int *)(puVar31 + 0x174fb8);\n      puVar21 = puVar5;\n      while( true ) {\n        while ((iVar9 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar9 != -1 &&\n               (iVar10 = (int)puVar21 - (int)puVar5, iVar9 != 10))) {\n          if (iStack_10cc <= iVar10 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1);\n            if (puVar5 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar5 + iVar10;\n          }\n          *puVar21 = (char)iVar9;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar5 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar26 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n        if (iVar26 == 0) {\n          (**(code **)(puVar31 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar31 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar10 = *(int *)(puVar31 + 0x174fc8);\n        iVar24 = *(int *)(puVar31 + 0x174fb8) + -0x2d8;\n        iVar9 = 0;\n        while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                 (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar7 == 0) {\n          if (iVar9 == 0) {\n            iStack_10a8 = 0;\n            iVar8 = *(int *)(puVar31 + 0x174fc8);\n            iVar29 = *(int *)(puVar31 + 0x174fb0);\n            iVar7 = 0;\nLAB_00284ff4:\n            do {\n              iVar6 = (**(code **)(puVar31 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar6 != 0) goto LAB_002850f4;\n              if (iVar7 == 1) {\n                uStack_10e4 = (**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar7 == 2) {\n                iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar7 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar7 == 0) {\n                iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                if (iVar6 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar7 = iVar7 + 1;\n            } while( true );\n          }\n          if (iVar9 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar31 + 0x175a20))();\n          while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar7) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar7;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }\n              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar31 + 0x1759bc))(iVar3);\n              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar31 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              iVar7 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              iVar7 = iVar7 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n              uVar30 = (uint)bVar18;\n              if (uVar30 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar30);\n              }\n              iVar7 = uStack_10d4 + 7 + uVar30;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n              if (iVar8 < 0) goto LAB_0028544c;\n              (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar7 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar7 + 4;\n              iVar7 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar9 = iVar9 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar7 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n              iVar7 = iVar7 + -1;\n            } while (iVar7 != -1);\n            iVar9 = 2;\n          }\n        }\n        iVar26 = (**(code **)(puVar31 + 0x17575c))(iVar26);\n        iVar19 = (**(code **)(puVar31 + 0x17575c))(iVar19);\n        puVar21 = puVar5;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10dc);\n        }\n      }\nLAB_0028573c:\n      (**(code **)(puVar31 + 0x175450))(uVar15);\n      if (iVar26 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar31 + 0x17575c))(iVar26);\n      }\nLAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar31 + 0x17575c))(iVar19);\n      }\n      if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar31 + 0x17575c))(puStack_10dc);\n      }\n      (**(code **)(puVar31 + 0x17575c))(puVar5);\n      if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }\nLAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar3);\n        (**(code **)(puVar31 + 0x175608))\n                  (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                   *(int *)(puVar31 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar31 + 0x174fb4) + 0x1854,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pIStack_10fc != (Image *)0x0) {\n          (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n          (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n          pIStack_10fc = (Image *)0x0;\n        }\n        goto LAB_00287858;\n      }\n      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n    }\n    (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n    goto LAB_00286050;\n  }" { (expression_statement "iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);" (assignment_expression "iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1)" identifier = (call_expression "(**(code **)(puVar31 + 0x175cf4))(0,in_a1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175cf4))" ( (pointer_expression "**(code **)(puVar31 + 0x175cf4)" * (pointer_expression "*(code **)(puVar31 + 0x175cf4)" * (cast_expression "(code **)(puVar31 + 0x175cf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175cf4)" ( (binary_expression "puVar31 + 0x175cf4" identifier + number_literal) ))))) )) (argument_list "(0,in_a1)" ( number_literal , identifier )))) ;) (if_statement "if (iVar3 == 0) {\n      (**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x4c2,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n      if (pIStack_10fc != (Image *)0x0) {\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n        pIStack_10fc = (Image *)0x0;\n      }\n      goto LAB_00287858;\n    }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n      (**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x4c2,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n      if (pIStack_10fc != (Image *)0x0) {\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n        pIStack_10fc = (Image *)0x0;\n      }\n      goto LAB_00287858;\n    }" { (expression_statement "(**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x4c2,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);" (call_expression "(**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x4c2,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar31 + 0x175608))" ( (pointer_expression "**(code **)(puVar31 + 0x175608)" * (pointer_expression "*(code **)(puVar31 + 0x175608)" * (cast_expression "(code **)(puVar31 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175608)" ( (binary_expression "puVar31 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x4c2,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pIStack_10fc != (Image *)0x0) {\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n        pIStack_10fc = (Image *)0x0;\n      }" if (parenthesized_expression "(pIStack_10fc != (Image *)0x0)" ( (binary_expression "pIStack_10fc != (Image *)0x0" identifier != (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n        pIStack_10fc = (Image *)0x0;\n      }" { (expression_statement "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175d70))" ( (pointer_expression "**(code **)(puVar31 + 0x175d70)" * (pointer_expression "*(code **)(puVar31 + 0x175d70)" * (cast_expression "(code **)(puVar31 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175d70)" ( (binary_expression "puVar31 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf8)" * (pointer_expression "*(code **)(puVar31 + 0x175bf8)" * (cast_expression "(code **)(puVar31 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf8)" ( (binary_expression "puVar31 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "pIStack_10fc = (Image *)0x0;" (assignment_expression "pIStack_10fc = (Image *)0x0" identifier = (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(1,1);" (assignment_expression "puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(1,1)" identifier = (cast_expression "(undefined1 *)(**(code **)(puVar31 + 0x175bf4))(1,1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar31 + 0x175bf4))(1,1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf4)" * (pointer_expression "*(code **)(puVar31 + 0x175bf4)" * (cast_expression "(code **)(puVar31 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf4)" ( (binary_expression "puVar31 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(1,1)" ( number_literal , number_literal ))))) ;) (if_statement "if (puVar5 == (undefined1 *)0x0) {\n      (**(code **)(puVar31 + 0x175634))(iVar3);\n      (**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x4c7,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n      if (pIStack_10fc != (Image *)0x0) {\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n        pIStack_10fc = (Image *)0x0;\n      }\n      goto LAB_00287858;\n    }" if (parenthesized_expression "(puVar5 == (undefined1 *)0x0)" ( (binary_expression "puVar5 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      (**(code **)(puVar31 + 0x175634))(iVar3);\n      (**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x4c7,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n      if (pIStack_10fc != (Image *)0x0) {\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n        pIStack_10fc = (Image *)0x0;\n      }\n      goto LAB_00287858;\n    }" { (expression_statement "(**(code **)(puVar31 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar31 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x175634))" ( (pointer_expression "**(code **)(puVar31 + 0x175634)" * (pointer_expression "*(code **)(puVar31 + 0x175634)" * (cast_expression "(code **)(puVar31 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175634)" ( (binary_expression "puVar31 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x4c7,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);" (call_expression "(**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x4c7,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar31 + 0x175608))" ( (pointer_expression "**(code **)(puVar31 + 0x175608)" * (pointer_expression "*(code **)(puVar31 + 0x175608)" * (cast_expression "(code **)(puVar31 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175608)" ( (binary_expression "puVar31 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x4c7,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pIStack_10fc != (Image *)0x0) {\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n        pIStack_10fc = (Image *)0x0;\n      }" if (parenthesized_expression "(pIStack_10fc != (Image *)0x0)" ( (binary_expression "pIStack_10fc != (Image *)0x0" identifier != (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n        pIStack_10fc = (Image *)0x0;\n      }" { (expression_statement "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175d70))" ( (pointer_expression "**(code **)(puVar31 + 0x175d70)" * (pointer_expression "*(code **)(puVar31 + 0x175d70)" * (cast_expression "(code **)(puVar31 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175d70)" ( (binary_expression "puVar31 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf8)" * (pointer_expression "*(code **)(puVar31 + 0x175bf8)" * (cast_expression "(code **)(puVar31 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf8)" ( (binary_expression "puVar31 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "pIStack_10fc = (Image *)0x0;" (assignment_expression "pIStack_10fc = (Image *)0x0" identifier = (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "*puVar5 = 0;" (assignment_expression "*puVar5 = 0" (pointer_expression "*puVar5" * identifier) = number_literal) ;) (expression_statement "(**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),puVar5);" (call_expression "(**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),puVar5)" (parenthesized_expression "(**(code **)(puVar31 + 0x1759b0))" ( (pointer_expression "**(code **)(puVar31 + 0x1759b0)" * (pointer_expression "*(code **)(puVar31 + 0x1759b0)" * (cast_expression "(code **)(puVar31 + 0x1759b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1759b0)" ( (binary_expression "puVar31 + 0x1759b0" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348),puVar5)" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) , identifier ))) ;) (expression_statement "iVar19 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78a0);" (assignment_expression "iVar19 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78a0)" identifier = (call_expression "(**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78a0)" (parenthesized_expression "(**(code **)(puVar31 + 0x1757f8))" ( (pointer_expression "**(code **)(puVar31 + 0x1757f8)" * (pointer_expression "*(code **)(puVar31 + 0x1757f8)" * (cast_expression "(code **)(puVar31 + 0x1757f8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1757f8)" ( (binary_expression "puVar31 + 0x1757f8" identifier + number_literal) ))))) )) (argument_list "(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78a0)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x78a0" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) )))) ;) (if_statement "if (iVar19 != 0) {\n      iVar19 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78ac);\n      if (iVar19 == 0) {\n        puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(0x1000,1);\n        if (puVar5 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar31 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar26 = 0;\n          iVar13 = *(int *)(puVar31 + 0x175020);\n          iVar22 = *(int *)(puVar31 + 0x1752b0);\n          iVar14 = *(int *)(puVar31 + 0x174fb8);\n          puVar21 = puVar5;\nLAB_00285dec:\n          do {\n            iVar9 = (**(code **)(puVar31 + 0x175a78))(pIStack_10fc);\n            if ((iVar9 != -1) && (iVar9 != 10)) {\n              iVar10 = (**(code **)(puVar31 + 0x175e30))(pIStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar5;\n              if (iVar10 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1)\n                  ;\n                  if (puVar5 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar5 + iVar24;\n                }\n                *puVar21 = (char)iVar9;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar5 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar26 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n            if (iVar26 == 0) {\n              (**(code **)(puVar31 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar31 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar10 = *(int *)(puVar31 + 0x174fc8);\n            iVar24 = *(int *)(puVar31 + 0x174fb8) + -0x2d8;\n            iVar9 = 0;\n            while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                     (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar7 == 0) {\n              if (iVar9 == 0) {\n                iStack_10a8 = 0;\n                iVar8 = *(int *)(puVar31 + 0x174fc8);\n                iVar29 = *(int *)(puVar31 + 0x174fb0);\n                iVar7 = 0;\nLAB_002857fc:\n                do {\n                  iVar6 = (**(code **)(puVar31 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar6 != 0) goto LAB_00285914;\n                  if (iVar7 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar7 == 2) {\n                    iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar7 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                      (**(code **)(puVar31 + 0x175f24))(puStack_10ec,iVar19,iVar7 + 0x1000);\n                      iVar7 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar7 == 0) {\n                    iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                    if (iVar6 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar7 = iVar7 + 1;\n                } while( true );\n              }\n              if (iVar9 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar31 + 0x175a20))();\n              while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar7) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar7;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if ((iVar7 < 0) || (iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3), iVar7 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar31 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = iVar7 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n                  uVar30 = (uint)bVar18;\n                  if (uVar30 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar30);\n                  }\n                  iVar7 = uStack_10d4 + 7 + uVar30;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if (iVar8 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar7 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar7 + 4;\n                  iVar7 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      iVar7 = iVar7 + -1;\n                    } while (iVar7 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar9 = iVar9 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar7 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n                iVar9 = 2;\n              }\n            }\n            iVar26 = (**(code **)(puVar31 + 0x17575c))(iVar26);\n            iVar19 = (**(code **)(puVar31 + 0x17575c))(iVar19);\n            puVar21 = puVar5;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }\n      iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n      if (iVar19 != 0) {\n        (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }\n      uStack_10d4 = 1;\n      goto LAB_00286050;\n    }" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (compound_statement "{\n      iVar19 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78ac);\n      if (iVar19 == 0) {\n        puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(0x1000,1);\n        if (puVar5 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar31 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar26 = 0;\n          iVar13 = *(int *)(puVar31 + 0x175020);\n          iVar22 = *(int *)(puVar31 + 0x1752b0);\n          iVar14 = *(int *)(puVar31 + 0x174fb8);\n          puVar21 = puVar5;\nLAB_00285dec:\n          do {\n            iVar9 = (**(code **)(puVar31 + 0x175a78))(pIStack_10fc);\n            if ((iVar9 != -1) && (iVar9 != 10)) {\n              iVar10 = (**(code **)(puVar31 + 0x175e30))(pIStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar5;\n              if (iVar10 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1)\n                  ;\n                  if (puVar5 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar5 + iVar24;\n                }\n                *puVar21 = (char)iVar9;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar5 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar26 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n            if (iVar26 == 0) {\n              (**(code **)(puVar31 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar31 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar10 = *(int *)(puVar31 + 0x174fc8);\n            iVar24 = *(int *)(puVar31 + 0x174fb8) + -0x2d8;\n            iVar9 = 0;\n            while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                     (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar7 == 0) {\n              if (iVar9 == 0) {\n                iStack_10a8 = 0;\n                iVar8 = *(int *)(puVar31 + 0x174fc8);\n                iVar29 = *(int *)(puVar31 + 0x174fb0);\n                iVar7 = 0;\nLAB_002857fc:\n                do {\n                  iVar6 = (**(code **)(puVar31 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar6 != 0) goto LAB_00285914;\n                  if (iVar7 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar7 == 2) {\n                    iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar7 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                      (**(code **)(puVar31 + 0x175f24))(puStack_10ec,iVar19,iVar7 + 0x1000);\n                      iVar7 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar7 == 0) {\n                    iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                    if (iVar6 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar7 = iVar7 + 1;\n                } while( true );\n              }\n              if (iVar9 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar31 + 0x175a20))();\n              while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar7) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar7;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if ((iVar7 < 0) || (iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3), iVar7 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar31 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = iVar7 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n                  uVar30 = (uint)bVar18;\n                  if (uVar30 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar30);\n                  }\n                  iVar7 = uStack_10d4 + 7 + uVar30;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if (iVar8 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar7 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar7 + 4;\n                  iVar7 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      iVar7 = iVar7 + -1;\n                    } while (iVar7 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar9 = iVar9 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar7 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n                iVar9 = 2;\n              }\n            }\n            iVar26 = (**(code **)(puVar31 + 0x17575c))(iVar26);\n            iVar19 = (**(code **)(puVar31 + 0x17575c))(iVar19);\n            puVar21 = puVar5;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }\n      iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n      if (iVar19 != 0) {\n        (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }\n      uStack_10d4 = 1;\n      goto LAB_00286050;\n    }" { (expression_statement "iVar19 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78ac);" (assignment_expression "iVar19 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78ac)" identifier = (call_expression "(**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78ac)" (parenthesized_expression "(**(code **)(puVar31 + 0x1757f8))" ( (pointer_expression "**(code **)(puVar31 + 0x1757f8)" * (pointer_expression "*(code **)(puVar31 + 0x1757f8)" * (cast_expression "(code **)(puVar31 + 0x1757f8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1757f8)" ( (binary_expression "puVar31 + 0x1757f8" identifier + number_literal) ))))) )) (argument_list "(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78ac)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x78ac" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) )))) ;) (if_statement "if (iVar19 == 0) {\n        puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(0x1000,1);\n        if (puVar5 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar31 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar26 = 0;\n          iVar13 = *(int *)(puVar31 + 0x175020);\n          iVar22 = *(int *)(puVar31 + 0x1752b0);\n          iVar14 = *(int *)(puVar31 + 0x174fb8);\n          puVar21 = puVar5;\nLAB_00285dec:\n          do {\n            iVar9 = (**(code **)(puVar31 + 0x175a78))(pIStack_10fc);\n            if ((iVar9 != -1) && (iVar9 != 10)) {\n              iVar10 = (**(code **)(puVar31 + 0x175e30))(pIStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar5;\n              if (iVar10 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1)\n                  ;\n                  if (puVar5 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar5 + iVar24;\n                }\n                *puVar21 = (char)iVar9;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar5 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar26 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n            if (iVar26 == 0) {\n              (**(code **)(puVar31 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar31 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar10 = *(int *)(puVar31 + 0x174fc8);\n            iVar24 = *(int *)(puVar31 + 0x174fb8) + -0x2d8;\n            iVar9 = 0;\n            while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                     (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar7 == 0) {\n              if (iVar9 == 0) {\n                iStack_10a8 = 0;\n                iVar8 = *(int *)(puVar31 + 0x174fc8);\n                iVar29 = *(int *)(puVar31 + 0x174fb0);\n                iVar7 = 0;\nLAB_002857fc:\n                do {\n                  iVar6 = (**(code **)(puVar31 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar6 != 0) goto LAB_00285914;\n                  if (iVar7 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar7 == 2) {\n                    iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar7 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                      (**(code **)(puVar31 + 0x175f24))(puStack_10ec,iVar19,iVar7 + 0x1000);\n                      iVar7 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar7 == 0) {\n                    iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                    if (iVar6 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar7 = iVar7 + 1;\n                } while( true );\n              }\n              if (iVar9 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar31 + 0x175a20))();\n              while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar7) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar7;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if ((iVar7 < 0) || (iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3), iVar7 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar31 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = iVar7 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n                  uVar30 = (uint)bVar18;\n                  if (uVar30 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar30);\n                  }\n                  iVar7 = uStack_10d4 + 7 + uVar30;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if (iVar8 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar7 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar7 + 4;\n                  iVar7 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      iVar7 = iVar7 + -1;\n                    } while (iVar7 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar9 = iVar9 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar7 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n                iVar9 = 2;\n              }\n            }\n            iVar26 = (**(code **)(puVar31 + 0x17575c))(iVar26);\n            iVar19 = (**(code **)(puVar31 + 0x17575c))(iVar19);\n            puVar21 = puVar5;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n        puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(0x1000,1);\n        if (puVar5 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar31 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar26 = 0;\n          iVar13 = *(int *)(puVar31 + 0x175020);\n          iVar22 = *(int *)(puVar31 + 0x1752b0);\n          iVar14 = *(int *)(puVar31 + 0x174fb8);\n          puVar21 = puVar5;\nLAB_00285dec:\n          do {\n            iVar9 = (**(code **)(puVar31 + 0x175a78))(pIStack_10fc);\n            if ((iVar9 != -1) && (iVar9 != 10)) {\n              iVar10 = (**(code **)(puVar31 + 0x175e30))(pIStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar5;\n              if (iVar10 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1)\n                  ;\n                  if (puVar5 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar5 + iVar24;\n                }\n                *puVar21 = (char)iVar9;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar5 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar26 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n            if (iVar26 == 0) {\n              (**(code **)(puVar31 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar31 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar10 = *(int *)(puVar31 + 0x174fc8);\n            iVar24 = *(int *)(puVar31 + 0x174fb8) + -0x2d8;\n            iVar9 = 0;\n            while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                     (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar7 == 0) {\n              if (iVar9 == 0) {\n                iStack_10a8 = 0;\n                iVar8 = *(int *)(puVar31 + 0x174fc8);\n                iVar29 = *(int *)(puVar31 + 0x174fb0);\n                iVar7 = 0;\nLAB_002857fc:\n                do {\n                  iVar6 = (**(code **)(puVar31 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar6 != 0) goto LAB_00285914;\n                  if (iVar7 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar7 == 2) {\n                    iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar7 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                      (**(code **)(puVar31 + 0x175f24))(puStack_10ec,iVar19,iVar7 + 0x1000);\n                      iVar7 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar7 == 0) {\n                    iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                    if (iVar6 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar7 = iVar7 + 1;\n                } while( true );\n              }\n              if (iVar9 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar31 + 0x175a20))();\n              while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar7) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar7;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if ((iVar7 < 0) || (iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3), iVar7 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar31 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = iVar7 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n                  uVar30 = (uint)bVar18;\n                  if (uVar30 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar30);\n                  }\n                  iVar7 = uStack_10d4 + 7 + uVar30;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if (iVar8 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar7 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar7 + 4;\n                  iVar7 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      iVar7 = iVar7 + -1;\n                    } while (iVar7 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar9 = iVar9 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar7 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n                iVar9 = 2;\n              }\n            }\n            iVar26 = (**(code **)(puVar31 + 0x17575c))(iVar26);\n            iVar19 = (**(code **)(puVar31 + 0x17575c))(iVar19);\n            puVar21 = puVar5;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }" { (expression_statement "puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(0x1000,1);" (assignment_expression "puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(0x1000,1)" identifier = (cast_expression "(undefined1 *)(**(code **)(puVar31 + 0x175bf4))(0x1000,1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar31 + 0x175bf4))(0x1000,1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf4)" * (pointer_expression "*(code **)(puVar31 + 0x175bf4)" * (cast_expression "(code **)(puVar31 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf4)" ( (binary_expression "puVar31 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(0x1000,1)" ( number_literal , number_literal ))))) ;) (if_statement "if (puVar5 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar31 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar26 = 0;\n          iVar13 = *(int *)(puVar31 + 0x175020);\n          iVar22 = *(int *)(puVar31 + 0x1752b0);\n          iVar14 = *(int *)(puVar31 + 0x174fb8);\n          puVar21 = puVar5;\nLAB_00285dec:\n          do {\n            iVar9 = (**(code **)(puVar31 + 0x175a78))(pIStack_10fc);\n            if ((iVar9 != -1) && (iVar9 != 10)) {\n              iVar10 = (**(code **)(puVar31 + 0x175e30))(pIStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar5;\n              if (iVar10 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1)\n                  ;\n                  if (puVar5 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar5 + iVar24;\n                }\n                *puVar21 = (char)iVar9;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar5 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar26 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n            if (iVar26 == 0) {\n              (**(code **)(puVar31 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar31 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar10 = *(int *)(puVar31 + 0x174fc8);\n            iVar24 = *(int *)(puVar31 + 0x174fb8) + -0x2d8;\n            iVar9 = 0;\n            while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                     (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar7 == 0) {\n              if (iVar9 == 0) {\n                iStack_10a8 = 0;\n                iVar8 = *(int *)(puVar31 + 0x174fc8);\n                iVar29 = *(int *)(puVar31 + 0x174fb0);\n                iVar7 = 0;\nLAB_002857fc:\n                do {\n                  iVar6 = (**(code **)(puVar31 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar6 != 0) goto LAB_00285914;\n                  if (iVar7 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar7 == 2) {\n                    iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar7 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                      (**(code **)(puVar31 + 0x175f24))(puStack_10ec,iVar19,iVar7 + 0x1000);\n                      iVar7 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar7 == 0) {\n                    iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                    if (iVar6 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar7 = iVar7 + 1;\n                } while( true );\n              }\n              if (iVar9 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar31 + 0x175a20))();\n              while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar7) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar7;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if ((iVar7 < 0) || (iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3), iVar7 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar31 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = iVar7 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n                  uVar30 = (uint)bVar18;\n                  if (uVar30 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar30);\n                  }\n                  iVar7 = uStack_10d4 + 7 + uVar30;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if (iVar8 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar7 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar7 + 4;\n                  iVar7 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      iVar7 = iVar7 + -1;\n                    } while (iVar7 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar9 = iVar9 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar7 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n                iVar9 = 2;\n              }\n            }\n            iVar26 = (**(code **)(puVar31 + 0x17575c))(iVar26);\n            iVar19 = (**(code **)(puVar31 + 0x17575c))(iVar19);\n            puVar21 = puVar5;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }" if (parenthesized_expression "(puVar5 != (undefined1 *)0x0)" ( (binary_expression "puVar5 != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          uVar15 = (**(code **)(puVar31 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar26 = 0;\n          iVar13 = *(int *)(puVar31 + 0x175020);\n          iVar22 = *(int *)(puVar31 + 0x1752b0);\n          iVar14 = *(int *)(puVar31 + 0x174fb8);\n          puVar21 = puVar5;\nLAB_00285dec:\n          do {\n            iVar9 = (**(code **)(puVar31 + 0x175a78))(pIStack_10fc);\n            if ((iVar9 != -1) && (iVar9 != 10)) {\n              iVar10 = (**(code **)(puVar31 + 0x175e30))(pIStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar5;\n              if (iVar10 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1)\n                  ;\n                  if (puVar5 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar5 + iVar24;\n                }\n                *puVar21 = (char)iVar9;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar5 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar26 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n            if (iVar26 == 0) {\n              (**(code **)(puVar31 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar31 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar10 = *(int *)(puVar31 + 0x174fc8);\n            iVar24 = *(int *)(puVar31 + 0x174fb8) + -0x2d8;\n            iVar9 = 0;\n            while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                     (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar7 == 0) {\n              if (iVar9 == 0) {\n                iStack_10a8 = 0;\n                iVar8 = *(int *)(puVar31 + 0x174fc8);\n                iVar29 = *(int *)(puVar31 + 0x174fb0);\n                iVar7 = 0;\nLAB_002857fc:\n                do {\n                  iVar6 = (**(code **)(puVar31 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar6 != 0) goto LAB_00285914;\n                  if (iVar7 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar7 == 2) {\n                    iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar7 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                      (**(code **)(puVar31 + 0x175f24))(puStack_10ec,iVar19,iVar7 + 0x1000);\n                      iVar7 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar7 == 0) {\n                    iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                    if (iVar6 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar7 = iVar7 + 1;\n                } while( true );\n              }\n              if (iVar9 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar31 + 0x175a20))();\n              while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar7) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar7;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if ((iVar7 < 0) || (iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3), iVar7 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar31 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = iVar7 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n                  uVar30 = (uint)bVar18;\n                  if (uVar30 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar30);\n                  }\n                  iVar7 = uStack_10d4 + 7 + uVar30;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if (iVar8 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar7 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar7 + 4;\n                  iVar7 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      iVar7 = iVar7 + -1;\n                    } while (iVar7 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar9 = iVar9 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar7 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n                iVar9 = 2;\n              }\n            }\n            iVar26 = (**(code **)(puVar31 + 0x17575c))(iVar26);\n            iVar19 = (**(code **)(puVar31 + 0x17575c))(iVar19);\n            puVar21 = puVar5;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }" { (expression_statement "uVar15 = (**(code **)(puVar31 + 0x175bdc))();" (assignment_expression "uVar15 = (**(code **)(puVar31 + 0x175bdc))()" identifier = (call_expression "(**(code **)(puVar31 + 0x175bdc))()" (parenthesized_expression "(**(code **)(puVar31 + 0x175bdc))" ( (pointer_expression "**(code **)(puVar31 + 0x175bdc)" * (pointer_expression "*(code **)(puVar31 + 0x175bdc)" * (cast_expression "(code **)(puVar31 + 0x175bdc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bdc)" ( (binary_expression "puVar31 + 0x175bdc" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (expression_statement "iStack_10cc = 0x1000;" (assignment_expression "iStack_10cc = 0x1000" identifier = number_literal) ;) (expression_statement "uStack_10d4 = 0;" (assignment_expression "uStack_10d4 = 0" identifier = number_literal) ;) (expression_statement "uStack_10c8 = 0;" (assignment_expression "uStack_10c8 = 0" identifier = number_literal) ;) (expression_statement "puStack_10dc = (undefined1 *)0x0;" (assignment_expression "puStack_10dc = (undefined1 *)0x0" identifier = (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "cVar17 = '\0';" (assignment_expression "cVar17 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "puStack_10ec = (undefined1 *)0x0;" (assignment_expression "puStack_10ec = (undefined1 *)0x0" identifier = (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iVar19 = 0;" (assignment_expression "iVar19 = 0" identifier = number_literal) ;) (expression_statement "iVar26 = 0;" (assignment_expression "iVar26 = 0" identifier = number_literal) ;) (expression_statement "iVar13 = *(int *)(puVar31 + 0x175020);" (assignment_expression "iVar13 = *(int *)(puVar31 + 0x175020)" identifier = (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) ))))) ;) (expression_statement "iVar22 = *(int *)(puVar31 + 0x1752b0);" (assignment_expression "iVar22 = *(int *)(puVar31 + 0x1752b0)" identifier = (pointer_expression "*(int *)(puVar31 + 0x1752b0)" * (cast_expression "(int *)(puVar31 + 0x1752b0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x1752b0)" ( (binary_expression "puVar31 + 0x1752b0" identifier + number_literal) ))))) ;) (expression_statement "iVar14 = *(int *)(puVar31 + 0x174fb8);" (assignment_expression "iVar14 = *(int *)(puVar31 + 0x174fb8)" identifier = (pointer_expression "*(int *)(puVar31 + 0x174fb8)" * (cast_expression "(int *)(puVar31 + 0x174fb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb8)" ( (binary_expression "puVar31 + 0x174fb8" identifier + number_literal) ))))) ;) (expression_statement "puVar21 = puVar5;" (assignment_expression "puVar21 = puVar5" identifier = identifier) ;) (labeled_statement "LAB_00285dec:\n          do {\n            iVar9 = (**(code **)(puVar31 + 0x175a78))(pIStack_10fc);\n            if ((iVar9 != -1) && (iVar9 != 10)) {\n              iVar10 = (**(code **)(puVar31 + 0x175e30))(pIStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar5;\n              if (iVar10 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1)\n                  ;\n                  if (puVar5 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar5 + iVar24;\n                }\n                *puVar21 = (char)iVar9;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar5 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar26 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n            if (iVar26 == 0) {\n              (**(code **)(puVar31 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar31 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar10 = *(int *)(puVar31 + 0x174fc8);\n            iVar24 = *(int *)(puVar31 + 0x174fb8) + -0x2d8;\n            iVar9 = 0;\n            while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                     (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar7 == 0) {\n              if (iVar9 == 0) {\n                iStack_10a8 = 0;\n                iVar8 = *(int *)(puVar31 + 0x174fc8);\n                iVar29 = *(int *)(puVar31 + 0x174fb0);\n                iVar7 = 0;\nLAB_002857fc:\n                do {\n                  iVar6 = (**(code **)(puVar31 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar6 != 0) goto LAB_00285914;\n                  if (iVar7 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar7 == 2) {\n                    iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar7 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                      (**(code **)(puVar31 + 0x175f24))(puStack_10ec,iVar19,iVar7 + 0x1000);\n                      iVar7 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar7 == 0) {\n                    iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                    if (iVar6 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar7 = iVar7 + 1;\n                } while( true );\n              }\n              if (iVar9 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar31 + 0x175a20))();\n              while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar7) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar7;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if ((iVar7 < 0) || (iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3), iVar7 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar31 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = iVar7 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n                  uVar30 = (uint)bVar18;\n                  if (uVar30 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar30);\n                  }\n                  iVar7 = uStack_10d4 + 7 + uVar30;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if (iVar8 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar7 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar7 + 4;\n                  iVar7 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      iVar7 = iVar7 + -1;\n                    } while (iVar7 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar9 = iVar9 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar7 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n                iVar9 = 2;\n              }\n            }\n            iVar26 = (**(code **)(puVar31 + 0x17575c))(iVar26);\n            iVar19 = (**(code **)(puVar31 + 0x17575c))(iVar19);\n            puVar21 = puVar5;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );" statement_identifier : (do_statement "do {\n            iVar9 = (**(code **)(puVar31 + 0x175a78))(pIStack_10fc);\n            if ((iVar9 != -1) && (iVar9 != 10)) {\n              iVar10 = (**(code **)(puVar31 + 0x175e30))(pIStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar5;\n              if (iVar10 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1)\n                  ;\n                  if (puVar5 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar5 + iVar24;\n                }\n                *puVar21 = (char)iVar9;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar5 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar26 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n            if (iVar26 == 0) {\n              (**(code **)(puVar31 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar31 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar10 = *(int *)(puVar31 + 0x174fc8);\n            iVar24 = *(int *)(puVar31 + 0x174fb8) + -0x2d8;\n            iVar9 = 0;\n            while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                     (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar7 == 0) {\n              if (iVar9 == 0) {\n                iStack_10a8 = 0;\n                iVar8 = *(int *)(puVar31 + 0x174fc8);\n                iVar29 = *(int *)(puVar31 + 0x174fb0);\n                iVar7 = 0;\nLAB_002857fc:\n                do {\n                  iVar6 = (**(code **)(puVar31 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar6 != 0) goto LAB_00285914;\n                  if (iVar7 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar7 == 2) {\n                    iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar7 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                      (**(code **)(puVar31 + 0x175f24))(puStack_10ec,iVar19,iVar7 + 0x1000);\n                      iVar7 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar7 == 0) {\n                    iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                    if (iVar6 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar7 = iVar7 + 1;\n                } while( true );\n              }\n              if (iVar9 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar31 + 0x175a20))();\n              while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar7) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar7;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if ((iVar7 < 0) || (iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3), iVar7 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar31 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = iVar7 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n                  uVar30 = (uint)bVar18;\n                  if (uVar30 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar30);\n                  }\n                  iVar7 = uStack_10d4 + 7 + uVar30;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if (iVar8 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar7 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar7 + 4;\n                  iVar7 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      iVar7 = iVar7 + -1;\n                    } while (iVar7 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar9 = iVar9 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar7 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n                iVar9 = 2;\n              }\n            }\n            iVar26 = (**(code **)(puVar31 + 0x17575c))(iVar26);\n            iVar19 = (**(code **)(puVar31 + 0x17575c))(iVar19);\n            puVar21 = puVar5;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );" do (compound_statement "{\n            iVar9 = (**(code **)(puVar31 + 0x175a78))(pIStack_10fc);\n            if ((iVar9 != -1) && (iVar9 != 10)) {\n              iVar10 = (**(code **)(puVar31 + 0x175e30))(pIStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar5;\n              if (iVar10 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1)\n                  ;\n                  if (puVar5 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar5 + iVar24;\n                }\n                *puVar21 = (char)iVar9;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar5 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar26 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n            if (iVar26 == 0) {\n              (**(code **)(puVar31 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar31 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar10 = *(int *)(puVar31 + 0x174fc8);\n            iVar24 = *(int *)(puVar31 + 0x174fb8) + -0x2d8;\n            iVar9 = 0;\n            while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                     (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar7 == 0) {\n              if (iVar9 == 0) {\n                iStack_10a8 = 0;\n                iVar8 = *(int *)(puVar31 + 0x174fc8);\n                iVar29 = *(int *)(puVar31 + 0x174fb0);\n                iVar7 = 0;\nLAB_002857fc:\n                do {\n                  iVar6 = (**(code **)(puVar31 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar6 != 0) goto LAB_00285914;\n                  if (iVar7 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar7 == 2) {\n                    iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar7 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                      (**(code **)(puVar31 + 0x175f24))(puStack_10ec,iVar19,iVar7 + 0x1000);\n                      iVar7 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar7 == 0) {\n                    iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                    if (iVar6 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar7 = iVar7 + 1;\n                } while( true );\n              }\n              if (iVar9 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar31 + 0x175a20))();\n              while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar7) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar7;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if ((iVar7 < 0) || (iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3), iVar7 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar31 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = iVar7 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n                  uVar30 = (uint)bVar18;\n                  if (uVar30 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar30);\n                  }\n                  iVar7 = uStack_10d4 + 7 + uVar30;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if (iVar8 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar7 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar7 + 4;\n                  iVar7 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      iVar7 = iVar7 + -1;\n                    } while (iVar7 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar9 = iVar9 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar7 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n                iVar9 = 2;\n              }\n            }\n            iVar26 = (**(code **)(puVar31 + 0x17575c))(iVar26);\n            iVar19 = (**(code **)(puVar31 + 0x17575c))(iVar19);\n            puVar21 = puVar5;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10ec);\n            }\n          }" { (expression_statement "iVar9 = (**(code **)(puVar31 + 0x175a78))(pIStack_10fc);" (assignment_expression "iVar9 = (**(code **)(puVar31 + 0x175a78))(pIStack_10fc)" identifier = (call_expression "(**(code **)(puVar31 + 0x175a78))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175a78))" ( (pointer_expression "**(code **)(puVar31 + 0x175a78)" * (pointer_expression "*(code **)(puVar31 + 0x175a78)" * (cast_expression "(code **)(puVar31 + 0x175a78)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175a78)" ( (binary_expression "puVar31 + 0x175a78" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier )))) ;) (if_statement "if ((iVar9 != -1) && (iVar9 != 10)) {\n              iVar10 = (**(code **)(puVar31 + 0x175e30))(pIStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar5;\n              if (iVar10 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1)\n                  ;\n                  if (puVar5 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar5 + iVar24;\n                }\n                *puVar21 = (char)iVar9;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }" if (parenthesized_expression "((iVar9 != -1) && (iVar9 != 10))" ( (binary_expression "(iVar9 != -1) && (iVar9 != 10)" (parenthesized_expression "(iVar9 != -1)" ( (binary_expression "iVar9 != -1" identifier != number_literal) )) && (parenthesized_expression "(iVar9 != 10)" ( (binary_expression "iVar9 != 10" identifier != number_literal) ))) )) (compound_statement "{\n              iVar10 = (**(code **)(puVar31 + 0x175e30))(pIStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar5;\n              if (iVar10 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1)\n                  ;\n                  if (puVar5 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar5 + iVar24;\n                }\n                *puVar21 = (char)iVar9;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }" { (expression_statement "iVar10 = (**(code **)(puVar31 + 0x175e30))(pIStack_10fc);" (assignment_expression "iVar10 = (**(code **)(puVar31 + 0x175e30))(pIStack_10fc)" identifier = (call_expression "(**(code **)(puVar31 + 0x175e30))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175e30))" ( (pointer_expression "**(code **)(puVar31 + 0x175e30)" * (pointer_expression "*(code **)(puVar31 + 0x175e30)" * (cast_expression "(code **)(puVar31 + 0x175e30)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175e30)" ( (binary_expression "puVar31 + 0x175e30" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier )))) ;) (expression_statement "iVar24 = (int)puVar21 - (int)puVar5;" (assignment_expression "iVar24 = (int)puVar21 - (int)puVar5" identifier = (binary_expression "(int)puVar21 - (int)puVar5" (cast_expression "(int)puVar21" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)puVar5" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if (iVar10 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1)\n                  ;\n                  if (puVar5 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar5 + iVar24;\n                }\n                *puVar21 = (char)iVar9;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1)\n                  ;\n                  if (puVar5 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar5 + iVar24;\n                }\n                *puVar21 = (char)iVar9;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }" { (if_statement "if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1)\n                  ;\n                  if (puVar5 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar5 + iVar24;\n                }" if (parenthesized_expression "(iStack_10cc <= iVar24 + 1)" ( (binary_expression "iStack_10cc <= iVar24 + 1" identifier <= (binary_expression "iVar24 + 1" identifier + number_literal)) )) (compound_statement "{\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1)\n                  ;\n                  if (puVar5 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar5 + iVar24;\n                }" { (expression_statement "iStack_10cc = iStack_10cc * 2;" (assignment_expression "iStack_10cc = iStack_10cc * 2" identifier = (binary_expression "iStack_10cc * 2" identifier * number_literal)) ;) (expression_statement "puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1)\n                  ;" (assignment_expression "puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1)" identifier = (cast_expression "(undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175b08))" ( (pointer_expression "**(code **)(puVar31 + 0x175b08)" * (pointer_expression "*(code **)(puVar31 + 0x175b08)" * (cast_expression "(code **)(puVar31 + 0x175b08)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175b08)" ( (binary_expression "puVar31 + 0x175b08" identifier + number_literal) ))))) )) (argument_list "(puVar5,iStack_10cc + 2,1)" ( identifier , (binary_expression "iStack_10cc + 2" identifier + number_literal) , number_literal ))))) ;) (if_statement "if (puVar5 == (undefined1 *)0x0) goto LAB_00285f24;" if (parenthesized_expression "(puVar5 == (undefined1 *)0x0)" ( (binary_expression "puVar5 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00285f24;" goto statement_identifier ;)) (expression_statement "puVar21 = puVar5 + iVar24;" (assignment_expression "puVar21 = puVar5 + iVar24" identifier = (binary_expression "puVar5 + iVar24" identifier + identifier)) ;) })) (expression_statement "*puVar21 = (char)iVar9;" (assignment_expression "*puVar21 = (char)iVar9" (pointer_expression "*puVar21" * identifier) = (cast_expression "(char)iVar9" ( (type_descriptor "char" primitive_type) ) identifier)) ;) (expression_statement "puVar21 = puVar21 + 1;" (assignment_expression "puVar21 = puVar21 + 1" identifier = (binary_expression "puVar21 + 1" identifier + number_literal)) ;) (goto_statement "goto LAB_00285dec;" goto statement_identifier ;) })) })) (if_statement "if ((puVar5 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0))\n            goto LAB_00285f24;" if (parenthesized_expression "((puVar5 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0))" ( (binary_expression "(puVar5 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0)" (parenthesized_expression "(puVar5 == (undefined1 *)0x0)" ( (binary_expression "puVar5 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0)" ( (comma_expression "iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0" (assignment_expression "iStack_10cc = ((int)puVar21 - (int)puVar5) + 1" identifier = (binary_expression "((int)puVar21 - (int)puVar5) + 1" (parenthesized_expression "((int)puVar21 - (int)puVar5)" ( (binary_expression "(int)puVar21 - (int)puVar5" (cast_expression "(int)puVar21" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)puVar5" ( (type_descriptor "int" primitive_type) ) identifier)) )) + number_literal)) , (binary_expression "(int)puVar21 - (int)puVar5 == 0" (binary_expression "(int)puVar21 - (int)puVar5" (cast_expression "(int)puVar21" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)puVar5" ( (type_descriptor "int" primitive_type) ) identifier)) == number_literal)) ))) )) (goto_statement "goto LAB_00285f24;" goto statement_identifier ;)) (expression_statement "*puVar21 = 0;" (assignment_expression "*puVar21 = 0" (pointer_expression "*puVar21" * identifier) = number_literal) ;) (expression_statement "uStack_10ac = 0;" (assignment_expression "uStack_10ac = 0" identifier = number_literal) ;) (expression_statement "iVar26 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);" (assignment_expression "iVar26 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1)" identifier = (call_expression "(**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf4)" * (pointer_expression "*(code **)(puVar31 + 0x175bf4)" * (cast_expression "(code **)(puVar31 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf4)" ( (binary_expression "puVar31 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(iStack_10cc,1)" ( identifier , number_literal )))) ;) (if_statement "if (iVar26 == 0) {\n              (**(code **)(puVar31 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }" if (parenthesized_expression "(iVar26 == 0)" ( (binary_expression "iVar26 == 0" identifier == number_literal) )) (compound_statement "{\n              (**(code **)(puVar31 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }" { (expression_statement "(**(code **)(puVar31 + 0x175450))(uVar15);" (call_expression "(**(code **)(puVar31 + 0x175450))(uVar15)" (parenthesized_expression "(**(code **)(puVar31 + 0x175450))" ( (pointer_expression "**(code **)(puVar31 + 0x175450)" * (pointer_expression "*(code **)(puVar31 + 0x175450)" * (cast_expression "(code **)(puVar31 + 0x175450)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175450)" ( (binary_expression "puVar31 + 0x175450" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (goto_statement "goto LAB_00287bf8;" goto statement_identifier ;) })) (expression_statement "iVar19 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);" (assignment_expression "iVar19 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1)" identifier = (call_expression "(**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf4)" * (pointer_expression "*(code **)(puVar31 + 0x175bf4)" * (cast_expression "(code **)(puVar31 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf4)" ( (binary_expression "puVar31 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(iStack_10cc,1)" ( identifier , number_literal )))) ;) (if_statement "if (iVar19 == 0) {\n              (**(code **)(puVar31 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n              (**(code **)(puVar31 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }" { (expression_statement "(**(code **)(puVar31 + 0x175450))(uVar15);" (call_expression "(**(code **)(puVar31 + 0x175450))(uVar15)" (parenthesized_expression "(**(code **)(puVar31 + 0x175450))" ( (pointer_expression "**(code **)(puVar31 + 0x175450)" * (pointer_expression "*(code **)(puVar31 + 0x175450)" * (cast_expression "(code **)(puVar31 + 0x175450)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175450)" ( (binary_expression "puVar31 + 0x175450" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "iVar19 = 0;" (assignment_expression "iVar19 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_00287be8;" goto statement_identifier ;) })) (expression_statement "iVar10 = *(int *)(puVar31 + 0x174fc8);" (assignment_expression "iVar10 = *(int *)(puVar31 + 0x174fc8)" identifier = (pointer_expression "*(int *)(puVar31 + 0x174fc8)" * (cast_expression "(int *)(puVar31 + 0x174fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fc8)" ( (binary_expression "puVar31 + 0x174fc8" identifier + number_literal) ))))) ;) (expression_statement "iVar24 = *(int *)(puVar31 + 0x174fb8) + -0x2d8;" (assignment_expression "iVar24 = *(int *)(puVar31 + 0x174fb8) + -0x2d8" identifier = (binary_expression "*(int *)(puVar31 + 0x174fb8) + -0x2d8" (pointer_expression "*(int *)(puVar31 + 0x174fb8)" * (cast_expression "(int *)(puVar31 + 0x174fb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb8)" ( (binary_expression "puVar31 + 0x174fb8" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "iVar9 = 0;" (assignment_expression "iVar9 = 0" identifier = number_literal) ;) (while_statement "while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                     (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar7 == 0) {\n              if (iVar9 == 0) {\n                iStack_10a8 = 0;\n                iVar8 = *(int *)(puVar31 + 0x174fc8);\n                iVar29 = *(int *)(puVar31 + 0x174fb0);\n                iVar7 = 0;\nLAB_002857fc:\n                do {\n                  iVar6 = (**(code **)(puVar31 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar6 != 0) goto LAB_00285914;\n                  if (iVar7 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar7 == 2) {\n                    iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar7 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                      (**(code **)(puVar31 + 0x175f24))(puStack_10ec,iVar19,iVar7 + 0x1000);\n                      iVar7 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar7 == 0) {\n                    iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                    if (iVar6 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar7 = iVar7 + 1;\n                } while( true );\n              }\n              if (iVar9 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar31 + 0x175a20))();\n              while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar7) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar7;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if ((iVar7 < 0) || (iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3), iVar7 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar31 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = iVar7 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n                  uVar30 = (uint)bVar18;\n                  if (uVar30 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar30);\n                  }\n                  iVar7 = uStack_10d4 + 7 + uVar30;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if (iVar8 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar7 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar7 + 4;\n                  iVar7 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      iVar7 = iVar7 + -1;\n                    } while (iVar7 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar9 = iVar9 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar7 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n                iVar9 = 2;\n              }\n            }" while (parenthesized_expression "(iVar7 = (**(code **)(puVar31 + 0x175720))\n                                     (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar7 == 0)" ( (comma_expression "iVar7 = (**(code **)(puVar31 + 0x175720))\n                                     (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar7 == 0" (assignment_expression "iVar7 = (**(code **)(puVar31 + 0x175720))\n                                     (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af)" identifier = (call_expression "(**(code **)(puVar31 + 0x175720))\n                                     (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af)" (parenthesized_expression "(**(code **)(puVar31 + 0x175720))" ( (pointer_expression "**(code **)(puVar31 + 0x175720)" * (pointer_expression "*(code **)(puVar31 + 0x175720)" * (cast_expression "(code **)(puVar31 + 0x175720)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175720)" ( (binary_expression "puVar31 + 0x175720" identifier + number_literal) ))))) )) (argument_list "(uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af)" ( identifier , number_literal , identifier , identifier , identifier , identifier , (binary_expression "iVar10 + 0x2c44" identifier + number_literal) , (binary_expression "iVar13 + 0x7178" identifier + number_literal) , number_literal , (pointer_expression "&uStack_10b0" & identifier) , (pointer_expression "&uStack_10ac" & identifier) , (pointer_expression "&uStack_10af" & identifier) )))) , (binary_expression "iVar7 == 0" identifier == number_literal)) )) (compound_statement "{\n              if (iVar9 == 0) {\n                iStack_10a8 = 0;\n                iVar8 = *(int *)(puVar31 + 0x174fc8);\n                iVar29 = *(int *)(puVar31 + 0x174fb0);\n                iVar7 = 0;\nLAB_002857fc:\n                do {\n                  iVar6 = (**(code **)(puVar31 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar6 != 0) goto LAB_00285914;\n                  if (iVar7 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar7 == 2) {\n                    iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar7 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                      (**(code **)(puVar31 + 0x175f24))(puStack_10ec,iVar19,iVar7 + 0x1000);\n                      iVar7 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar7 == 0) {\n                    iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                    if (iVar6 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar7 = iVar7 + 1;\n                } while( true );\n              }\n              if (iVar9 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar31 + 0x175a20))();\n              while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar7) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar7;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if ((iVar7 < 0) || (iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3), iVar7 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar31 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = iVar7 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n                  uVar30 = (uint)bVar18;\n                  if (uVar30 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar30);\n                  }\n                  iVar7 = uStack_10d4 + 7 + uVar30;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if (iVar8 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar7 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar7 + 4;\n                  iVar7 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      iVar7 = iVar7 + -1;\n                    } while (iVar7 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar9 = iVar9 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar7 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n                iVar9 = 2;\n              }\n            }" { (if_statement "if (iVar9 == 0) {\n                iStack_10a8 = 0;\n                iVar8 = *(int *)(puVar31 + 0x174fc8);\n                iVar29 = *(int *)(puVar31 + 0x174fb0);\n                iVar7 = 0;\nLAB_002857fc:\n                do {\n                  iVar6 = (**(code **)(puVar31 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar6 != 0) goto LAB_00285914;\n                  if (iVar7 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar7 == 2) {\n                    iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar7 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                      (**(code **)(puVar31 + 0x175f24))(puStack_10ec,iVar19,iVar7 + 0x1000);\n                      iVar7 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar7 == 0) {\n                    iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                    if (iVar6 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar7 = iVar7 + 1;\n                } while( true );\n              }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n                iStack_10a8 = 0;\n                iVar8 = *(int *)(puVar31 + 0x174fc8);\n                iVar29 = *(int *)(puVar31 + 0x174fb0);\n                iVar7 = 0;\nLAB_002857fc:\n                do {\n                  iVar6 = (**(code **)(puVar31 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar6 != 0) goto LAB_00285914;\n                  if (iVar7 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar7 == 2) {\n                    iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar7 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                      (**(code **)(puVar31 + 0x175f24))(puStack_10ec,iVar19,iVar7 + 0x1000);\n                      iVar7 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar7 == 0) {\n                    iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                    if (iVar6 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar7 = iVar7 + 1;\n                } while( true );\n              }" { (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (expression_statement "iVar8 = *(int *)(puVar31 + 0x174fc8);" (assignment_expression "iVar8 = *(int *)(puVar31 + 0x174fc8)" identifier = (pointer_expression "*(int *)(puVar31 + 0x174fc8)" * (cast_expression "(int *)(puVar31 + 0x174fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fc8)" ( (binary_expression "puVar31 + 0x174fc8" identifier + number_literal) ))))) ;) (expression_statement "iVar29 = *(int *)(puVar31 + 0x174fb0);" (assignment_expression "iVar29 = *(int *)(puVar31 + 0x174fb0)" identifier = (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) ))))) ;) (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" identifier = number_literal) ;) (labeled_statement "LAB_002857fc:\n                do {\n                  iVar6 = (**(code **)(puVar31 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar6 != 0) goto LAB_00285914;\n                  if (iVar7 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar7 == 2) {\n                    iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar7 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                      (**(code **)(puVar31 + 0x175f24))(puStack_10ec,iVar19,iVar7 + 0x1000);\n                      iVar7 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar7 == 0) {\n                    iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                    if (iVar6 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar7 = iVar7 + 1;\n                } while( true );" statement_identifier : (do_statement "do {\n                  iVar6 = (**(code **)(puVar31 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar6 != 0) goto LAB_00285914;\n                  if (iVar7 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar7 == 2) {\n                    iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar7 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                      (**(code **)(puVar31 + 0x175f24))(puStack_10ec,iVar19,iVar7 + 0x1000);\n                      iVar7 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar7 == 0) {\n                    iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                    if (iVar6 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar7 = iVar7 + 1;\n                } while( true );" do (compound_statement "{\n                  iVar6 = (**(code **)(puVar31 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar6 != 0) goto LAB_00285914;\n                  if (iVar7 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar7 == 2) {\n                    iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar7 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                      (**(code **)(puVar31 + 0x175f24))(puStack_10ec,iVar19,iVar7 + 0x1000);\n                      iVar7 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar7 == 0) {\n                    iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                    if (iVar6 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar7 = iVar7 + 1;\n                }" { (expression_statement "iVar6 = (**(code **)(puVar31 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);" (assignment_expression "iVar6 = (**(code **)(puVar31 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" identifier = (call_expression "(**(code **)(puVar31 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" (parenthesized_expression "(**(code **)(puVar31 + 0x175720))" ( (pointer_expression "**(code **)(puVar31 + 0x175720)" * (pointer_expression "*(code **)(puVar31 + 0x175720)" * (cast_expression "(code **)(puVar31 + 0x175720)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175720)" ( (binary_expression "puVar31 + 0x175720" identifier + number_literal) ))))) )) (argument_list "(uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" ( identifier , number_literal , identifier , identifier , identifier , identifier , (binary_expression "iVar8 + 0xabc" identifier + number_literal) , identifier , number_literal , (pointer_expression "&cStack_10ae" & identifier) , (pointer_expression "&iStack_10a8" & identifier) , (pointer_expression "&uStack_10ad" & identifier) )))) ;) (if_statement "if (iVar6 != 0) goto LAB_00285914;" if (parenthesized_expression "(iVar6 != 0)" ( (binary_expression "iVar6 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00285914;" goto statement_identifier ;)) (if_statement "if (iVar7 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar7 == 2) {\n                    iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar7 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                      (**(code **)(puVar31 + 0x175f24))(puStack_10ec,iVar19,iVar7 + 0x1000);\n                      iVar7 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar7 == 0) {\n                    iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                    if (iVar6 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                    }\n                  }" if (parenthesized_expression "(iVar7 == 1)" ( (binary_expression "iVar7 == 1" identifier == number_literal) )) (compound_statement "{\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n                  }" { (expression_statement "puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175a28))(iVar19,0,10);" (assignment_expression "puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175a28))(iVar19,0,10)" identifier = (cast_expression "(undefined1 *)(**(code **)(puVar31 + 0x175a28))(iVar19,0,10)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar31 + 0x175a28))(iVar19,0,10)" (parenthesized_expression "(**(code **)(puVar31 + 0x175a28))" ( (pointer_expression "**(code **)(puVar31 + 0x175a28)" * (pointer_expression "*(code **)(puVar31 + 0x175a28)" * (cast_expression "(code **)(puVar31 + 0x175a28)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175a28)" ( (binary_expression "puVar31 + 0x175a28" identifier + number_literal) ))))) )) (argument_list "(iVar19,0,10)" ( identifier , number_literal , number_literal ))))) ;) }) (else_clause "else if (iVar7 == 2) {\n                    iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar7 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                      (**(code **)(puVar31 + 0x175f24))(puStack_10ec,iVar19,iVar7 + 0x1000);\n                      iVar7 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar7 == 0) {\n                    iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                    if (iVar6 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                    }\n                  }" else (if_statement "if (iVar7 == 2) {\n                    iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar7 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                      (**(code **)(puVar31 + 0x175f24))(puStack_10ec,iVar19,iVar7 + 0x1000);\n                      iVar7 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar7 == 0) {\n                    iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                    if (iVar6 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                    }\n                  }" if (parenthesized_expression "(iVar7 == 2)" ( (binary_expression "iVar7 == 2" identifier == number_literal) )) (compound_statement "{\n                    iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar7 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                      (**(code **)(puVar31 + 0x175f24))(puStack_10ec,iVar19,iVar7 + 0x1000);\n                      iVar7 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }" { (expression_statement "iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);" (assignment_expression "iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19)" identifier = (call_expression "(**(code **)(puVar31 + 0x175a20))(iVar19)" (parenthesized_expression "(**(code **)(puVar31 + 0x175a20))" ( (pointer_expression "**(code **)(puVar31 + 0x175a20)" * (pointer_expression "*(code **)(puVar31 + 0x175a20)" * (cast_expression "(code **)(puVar31 + 0x175a20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175a20)" ( (binary_expression "puVar31 + 0x175a20" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier )))) ;) (expression_statement "puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1)\n                    ;" (assignment_expression "puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1)" identifier = (cast_expression "(undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf4)" * (pointer_expression "*(code **)(puVar31 + 0x175bf4)" * (cast_expression "(code **)(puVar31 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf4)" ( (binary_expression "puVar31 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(iVar6 + 0x1000,1)" ( (binary_expression "iVar6 + 0x1000" identifier + number_literal) , number_literal ))))) ;) (if_statement "if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar7 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                      (**(code **)(puVar31 + 0x175f24))(puStack_10ec,iVar19,iVar7 + 0x1000);\n                      iVar7 = 3;\n                      goto LAB_002857fc;\n                    }" if (parenthesized_expression "(puStack_10ec != (undefined1 *)0x0)" ( (binary_expression "puStack_10ec != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                      iVar7 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                      (**(code **)(puVar31 + 0x175f24))(puStack_10ec,iVar19,iVar7 + 0x1000);\n                      iVar7 = 3;\n                      goto LAB_002857fc;\n                    }" { (expression_statement "iVar7 = (**(code **)(puVar31 + 0x175a20))(iVar19);" (assignment_expression "iVar7 = (**(code **)(puVar31 + 0x175a20))(iVar19)" identifier = (call_expression "(**(code **)(puVar31 + 0x175a20))(iVar19)" (parenthesized_expression "(**(code **)(puVar31 + 0x175a20))" ( (pointer_expression "**(code **)(puVar31 + 0x175a20)" * (pointer_expression "*(code **)(puVar31 + 0x175a20)" * (cast_expression "(code **)(puVar31 + 0x175a20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175a20)" ( (binary_expression "puVar31 + 0x175a20" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier )))) ;) (expression_statement "(**(code **)(puVar31 + 0x175f24))(puStack_10ec,iVar19,iVar7 + 0x1000);" (call_expression "(**(code **)(puVar31 + 0x175f24))(puStack_10ec,iVar19,iVar7 + 0x1000)" (parenthesized_expression "(**(code **)(puVar31 + 0x175f24))" ( (pointer_expression "**(code **)(puVar31 + 0x175f24)" * (pointer_expression "*(code **)(puVar31 + 0x175f24)" * (cast_expression "(code **)(puVar31 + 0x175f24)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175f24)" ( (binary_expression "puVar31 + 0x175f24" identifier + number_literal) ))))) )) (argument_list "(puStack_10ec,iVar19,iVar7 + 0x1000)" ( identifier , identifier , (binary_expression "iVar7 + 0x1000" identifier + number_literal) ))) ;) (expression_statement "iVar7 = 3;" (assignment_expression "iVar7 = 3" identifier = number_literal) ;) (goto_statement "goto LAB_002857fc;" goto statement_identifier ;) })) }) (else_clause "else if (iVar7 == 0) {\n                    iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                    if (iVar6 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                    }\n                  }" else (if_statement "if (iVar7 == 0) {\n                    iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                    if (iVar6 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                    }\n                  }" if (parenthesized_expression "(iVar7 == 0)" ( (binary_expression "iVar7 == 0" identifier == number_literal) )) (compound_statement "{\n                    iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                    if (iVar6 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                    }\n                  }" { (expression_statement "iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);" (assignment_expression "iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890)" identifier = (call_expression "(**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890)" (parenthesized_expression "(**(code **)(puVar31 + 0x1753e4))" ( (pointer_expression "**(code **)(puVar31 + 0x1753e4)" * (pointer_expression "*(code **)(puVar31 + 0x1753e4)" * (cast_expression "(code **)(puVar31 + 0x1753e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1753e4)" ( (binary_expression "puVar31 + 0x1753e4" identifier + number_literal) ))))) )) (argument_list "(iVar19,iVar29 + 0x7890)" ( identifier , (binary_expression "iVar29 + 0x7890" identifier + number_literal) )))) ;) (if_statement "if (iVar6 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                    }" if (parenthesized_expression "(iVar6 == 0)" ( (binary_expression "iVar6 == 0" identifier == number_literal) )) (compound_statement "{\n                      cVar17 = -1;\n                    }" { (expression_statement "cVar17 = -1;" (assignment_expression "cVar17 = -1" identifier = number_literal) ;) }) (else_clause "else {\n                      cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                    }" else (compound_statement "{\n                      cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                    }" { (expression_statement "cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);" (assignment_expression "cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10)" identifier = (call_expression "(**(code **)(puVar31 + 0x175c34))(iVar19,0,10)" (parenthesized_expression "(**(code **)(puVar31 + 0x175c34))" ( (pointer_expression "**(code **)(puVar31 + 0x175c34)" * (pointer_expression "*(code **)(puVar31 + 0x175c34)" * (cast_expression "(code **)(puVar31 + 0x175c34)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175c34)" ( (binary_expression "puVar31 + 0x175c34" identifier + number_literal) ))))) )) (argument_list "(iVar19,0,10)" ( identifier , number_literal , number_literal )))) ;) }))) })))))) (expression_statement "iVar7 = iVar7 + 1;" (assignment_expression "iVar7 = iVar7 + 1" identifier = (binary_expression "iVar7 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "( true )" ( true )) ;)) })) (if_statement "if (iVar9 != 1) goto LAB_00285914;" if (parenthesized_expression "(iVar9 != 1)" ( (binary_expression "iVar9 != 1" identifier != number_literal) )) (goto_statement "goto LAB_00285914;" goto statement_identifier ;)) (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (expression_statement "uVar12 = (**(code **)(puVar31 + 0x175a20))();" (assignment_expression "uVar12 = (**(code **)(puVar31 + 0x175a20))()" identifier = (call_expression "(**(code **)(puVar31 + 0x175a20))()" (parenthesized_expression "(**(code **)(puVar31 + 0x175a20))" ( (pointer_expression "**(code **)(puVar31 + 0x175a20)" * (pointer_expression "*(code **)(puVar31 + 0x175a20)" * (cast_expression "(code **)(puVar31 + 0x175a20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175a20)" ( (binary_expression "puVar31 + 0x175a20" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (while_statement "while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar7) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar7;\n                  }\n                }\n              }" while (parenthesized_expression "(iVar7 = (**(code **)(puVar31 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0\n                    )" ( (comma_expression "iVar7 = (**(code **)(puVar31 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0" (assignment_expression "iVar7 = (**(code **)(puVar31 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" identifier = (call_expression "(**(code **)(puVar31 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" (parenthesized_expression "(**(code **)(puVar31 + 0x175720))" ( (pointer_expression "**(code **)(puVar31 + 0x175720)" * (pointer_expression "*(code **)(puVar31 + 0x175720)" * (cast_expression "(code **)(puVar31 + 0x175720)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175720)" ( (binary_expression "puVar31 + 0x175720" identifier + number_literal) ))))) )) (argument_list "(uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" ( identifier , number_literal , identifier , identifier , identifier , identifier , (binary_expression "iVar14 + -0x3bc" identifier + number_literal) , identifier , number_literal , (pointer_expression "&cStack_10ae" & identifier) , (pointer_expression "&iStack_10a8" & identifier) , (pointer_expression "&uStack_10ad" & identifier) )))) , (binary_expression "iVar7 == 0" identifier == number_literal)) )) (compound_statement "{\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar7) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar7;\n                  }\n                }\n              }" { (if_statement "if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar7) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar7;\n                  }\n                }" if (parenthesized_expression "((cStack_10ae != '\0') && (0 < iStack_10a8))" ( (binary_expression "(cStack_10ae != '\0') && (0 < iStack_10a8)" (parenthesized_expression "(cStack_10ae != '\0')" ( (binary_expression "cStack_10ae != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(0 < iStack_10a8)" ( (binary_expression "0 < iStack_10a8" number_literal < identifier) ))) )) (compound_statement "{\n                  iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar7) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar7;\n                  }\n                }" { (expression_statement "iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);" (assignment_expression "iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1)" identifier = (call_expression "(*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1)" (parenthesized_expression "(*(code *)(iVar22 + 0x458c))" ( (pointer_expression "*(code *)(iVar22 + 0x458c)" * (cast_expression "(code *)(iVar22 + 0x458c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar22 + 0x458c)" ( (binary_expression "iVar22 + 0x458c" identifier + number_literal) )))) )) (argument_list "(iVar26 + iStack_10a8 + -1)" ( (binary_expression "iVar26 + iStack_10a8 + -1" (binary_expression "iVar26 + iStack_10a8" identifier + identifier) + number_literal) )))) ;) (if_statement "if ((int)uVar12 < iVar7) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar7;\n                  }" if (parenthesized_expression "((int)uVar12 < iVar7)" ( (binary_expression "(int)uVar12 < iVar7" (cast_expression "(int)uVar12" ( (type_descriptor "int" primitive_type) ) identifier) < identifier) )) (compound_statement "{\n                    uVar12 = 0;\n                  }" { (expression_statement "uVar12 = 0;" (assignment_expression "uVar12 = 0" identifier = number_literal) ;) }) (else_clause "else {\n                    uVar12 = uVar12 - iVar7;\n                  }" else (compound_statement "{\n                    uVar12 = uVar12 - iVar7;\n                  }" { (expression_statement "uVar12 = uVar12 - iVar7;" (assignment_expression "uVar12 = uVar12 - iVar7" identifier = (binary_expression "uVar12 - iVar7" identifier - identifier)) ;) }))) })) })) (if_statement "if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if ((iVar7 < 0) || (iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3), iVar7 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar31 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = iVar7 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n                  uVar30 = (uint)bVar18;\n                  if (uVar30 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar30);\n                  }\n                  iVar7 = uStack_10d4 + 7 + uVar30;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if (iVar8 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar7 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar7 + 4;\n                  iVar7 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      iVar7 = iVar7 + -1;\n                    } while (iVar7 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar9 = iVar9 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar7 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n                iVar9 = 2;\n              }" if (parenthesized_expression "(cVar17 == -1)" ( (binary_expression "cVar17 == -1" identifier == number_literal) )) (compound_statement "{\n                if (0 < (int)uStack_10c8) {\n                  iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if ((iVar7 < 0) || (iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3), iVar7 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar31 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = iVar7 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n                  uVar30 = (uint)bVar18;\n                  if (uVar30 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar30);\n                  }\n                  iVar7 = uStack_10d4 + 7 + uVar30;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if (iVar8 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar7 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar7 + 4;\n                  iVar7 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      iVar7 = iVar7 + -1;\n                    } while (iVar7 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar9 = iVar9 + 1;\n              }" { (if_statement "if (0 < (int)uStack_10c8) {\n                  iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if ((iVar7 < 0) || (iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3), iVar7 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }" if (parenthesized_expression "(0 < (int)uStack_10c8)" ( (binary_expression "0 < (int)uStack_10c8" number_literal < (cast_expression "(int)uStack_10c8" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n                  iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if ((iVar7 < 0) || (iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3), iVar7 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }" { (expression_statement "iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);" (assignment_expression "iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3)" identifier = (call_expression "(**(code **)(puVar31 + 0x175a04))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x175a04))" ( (pointer_expression "**(code **)(puVar31 + 0x175a04)" * (pointer_expression "*(code **)(puVar31 + 0x175a04)" * (cast_expression "(code **)(puVar31 + 0x175a04)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175a04)" ( (binary_expression "puVar31 + 0x175a04" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if ((iVar7 < 0) || (iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3), iVar7 < 0))\n                  goto LAB_00287db0;" if (parenthesized_expression "((iVar7 < 0) || (iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3), iVar7 < 0))" ( (binary_expression "(iVar7 < 0) || (iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3), iVar7 < 0)" (parenthesized_expression "(iVar7 < 0)" ( (binary_expression "iVar7 < 0" identifier < number_literal) )) || (parenthesized_expression "(iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3), iVar7 < 0)" ( (comma_expression "iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3), iVar7 < 0" (assignment_expression "iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3)" identifier = (call_expression "(**(code **)(puVar31 + 0x175a10))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x175a10))" ( (pointer_expression "**(code **)(puVar31 + 0x175a10)" * (pointer_expression "*(code **)(puVar31 + 0x175a10)" * (cast_expression "(code **)(puVar31 + 0x175a10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175a10)" ( (binary_expression "puVar31 + 0x175a10" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) , (binary_expression "iVar7 < 0" identifier < number_literal)) ))) )) (goto_statement "goto LAB_00287db0;" goto statement_identifier ;)) (expression_statement "(**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);" (call_expression "(**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8)" (parenthesized_expression "(**(code **)(puVar31 + 0x1759bc))" ( (pointer_expression "**(code **)(puVar31 + 0x1759bc)" * (pointer_expression "*(code **)(puVar31 + 0x1759bc)" * (cast_expression "(code **)(puVar31 + 0x1759bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1759bc)" ( (binary_expression "puVar31 + 0x1759bc" identifier + number_literal) ))))) )) (argument_list "(iVar3,uStack_10d4 - uStack_10c8)" ( identifier , (binary_expression "uStack_10d4 - uStack_10c8" identifier - identifier) ))) ;) (expression_statement "iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);" (assignment_expression "iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3)" identifier = (call_expression "(**(code **)(puVar31 + 0x175a10))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x175a10))" ( (pointer_expression "**(code **)(puVar31 + 0x175a10)" * (pointer_expression "*(code **)(puVar31 + 0x175a10)" * (cast_expression "(code **)(puVar31 + 0x175a10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175a10)" ( (binary_expression "puVar31 + 0x175a10" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if (iVar7 < 0) goto LAB_00287db0;" if (parenthesized_expression "(iVar7 < 0)" ( (binary_expression "iVar7 < 0" identifier < number_literal) )) (goto_statement "goto LAB_00287db0;" goto statement_identifier ;)) (expression_statement "uStack_10c8 = 0;" (assignment_expression "uStack_10c8 = 0" identifier = number_literal) ;) })) (if_statement "if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }" if (parenthesized_expression "((uStack_10d4 & 1) != 0)" ( (binary_expression "(uStack_10d4 & 1) != 0" (parenthesized_expression "(uStack_10d4 & 1)" ( (binary_expression "uStack_10d4 & 1" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }" { (expression_statement "(**(code **)(puVar31 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar31 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar31 + 0x1756c4)" * (pointer_expression "*(code **)(puVar31 + 0x1756c4)" * (cast_expression "(code **)(puVar31 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756c4)" ( (binary_expression "puVar31 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0)" ( identifier , number_literal ))) ;) (expression_statement "uStack_10d4 = uStack_10d4 + 1;" (assignment_expression "uStack_10d4 = uStack_10d4 + 1" identifier = (binary_expression "uStack_10d4 + 1" identifier + number_literal)) ;) })) (expression_statement "(**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);" (call_expression "(**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890)" (parenthesized_expression "(**(code **)(puVar31 + 0x175c90))" ( (pointer_expression "**(code **)(puVar31 + 0x175c90)" * (pointer_expression "*(code **)(puVar31 + 0x175c90)" * (cast_expression "(code **)(puVar31 + 0x175c90)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175c90)" ( (binary_expression "puVar31 + 0x175c90" identifier + number_literal) ))))) )) (argument_list "(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x7890" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);" (call_expression "(**(code **)(puVar31 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff)" (parenthesized_expression "(**(code **)(puVar31 + 0x175970))" ( (pointer_expression "**(code **)(puVar31 + 0x175970)" * (pointer_expression "*(code **)(puVar31 + 0x175970)" * (cast_expression "(code **)(puVar31 + 0x175970)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175970)" ( (binary_expression "puVar31 + 0x175970" identifier + number_literal) ))))) )) (argument_list "(iVar3,(uint)puStack_10dc & 0xffff)" ( identifier , (binary_expression "(uint)puStack_10dc & 0xffff" (cast_expression "(uint)puStack_10dc" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) ))) ;) (if_statement "if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = iVar7 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n                  uVar30 = (uint)bVar18;\n                  if (uVar30 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar30);\n                  }\n                  iVar7 = uStack_10d4 + 7 + uVar30;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }" if (parenthesized_expression "(puStack_10ec == (undefined1 *)0x0)" ( (binary_expression "puStack_10ec == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                  iVar7 = iVar7 + 1;\n                }" { (expression_statement "(**(code **)(puVar31 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar31 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar31 + 0x1756c4)" * (pointer_expression "*(code **)(puVar31 + 0x1756c4)" * (cast_expression "(code **)(puVar31 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756c4)" ( (binary_expression "puVar31 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0)" ( identifier , number_literal ))) ;) (expression_statement "iVar7 = uStack_10d4 + 7;" (assignment_expression "iVar7 = uStack_10d4 + 7" identifier = (binary_expression "uStack_10d4 + 7" identifier + number_literal)) ;) (labeled_statement "LAB_00287bac:\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,0);" statement_identifier : (expression_statement "(**(code **)(puVar31 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar31 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar31 + 0x1756c4)" * (pointer_expression "*(code **)(puVar31 + 0x1756c4)" * (cast_expression "(code **)(puVar31 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756c4)" ( (binary_expression "puVar31 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0)" ( identifier , number_literal ))) ;)) (expression_statement "iVar7 = iVar7 + 1;" (assignment_expression "iVar7 = iVar7 + 1" identifier = (binary_expression "iVar7 + 1" identifier + number_literal)) ;) }) (else_clause "else {\n                  bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n                  uVar30 = (uint)bVar18;\n                  if (uVar30 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar30);\n                  }\n                  iVar7 = uStack_10d4 + 7 + uVar30;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }" else (compound_statement "{\n                  bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n                  uVar30 = (uint)bVar18;\n                  if (uVar30 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar30);\n                  }\n                  iVar7 = uStack_10d4 + 7 + uVar30;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }" { (expression_statement "bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10ec);" (assignment_expression "bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10ec)" identifier = (call_expression "(**(code **)(puVar31 + 0x175a20))(puStack_10ec)" (parenthesized_expression "(**(code **)(puVar31 + 0x175a20))" ( (pointer_expression "**(code **)(puVar31 + 0x175a20)" * (pointer_expression "*(code **)(puVar31 + 0x175a20)" * (cast_expression "(code **)(puVar31 + 0x175a20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175a20)" ( (binary_expression "puVar31 + 0x175a20" identifier + number_literal) ))))) )) (argument_list "(puStack_10ec)" ( identifier )))) ;) (expression_statement "(**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);" (call_expression "(**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar31 + 0x1756c4)" * (pointer_expression "*(code **)(puVar31 + 0x1756c4)" * (cast_expression "(code **)(puVar31 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756c4)" ( (binary_expression "puVar31 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,bVar18)" ( identifier , identifier ))) ;) (expression_statement "uVar30 = (uint)bVar18;" (assignment_expression "uVar30 = (uint)bVar18" identifier = (cast_expression "(uint)bVar18" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (uVar30 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar30);\n                  }" if (parenthesized_expression "(uVar30 != 0)" ( (binary_expression "uVar30 != 0" identifier != number_literal) )) (compound_statement "{\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar30);\n                  }" { (expression_statement "puVar21 = puStack_10ec;" (assignment_expression "puVar21 = puStack_10ec" identifier = identifier) ;) (do_statement "do {\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar30);" do (compound_statement "{\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    }" { (expression_statement "(**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);" (call_expression "(**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar31 + 0x1756c4)" * (pointer_expression "*(code **)(puVar31 + 0x1756c4)" * (cast_expression "(code **)(puVar31 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756c4)" ( (binary_expression "puVar31 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,*puVar21)" ( identifier , (pointer_expression "*puVar21" * identifier) ))) ;) (expression_statement "puVar21 = puVar21 + 1;" (assignment_expression "puVar21 = puVar21 + 1" identifier = (binary_expression "puVar21 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(puVar21 != puStack_10ec + uVar30)" ( (binary_expression "puVar21 != puStack_10ec + uVar30" identifier != (binary_expression "puStack_10ec + uVar30" identifier + identifier)) )) ;) })) (expression_statement "iVar7 = uStack_10d4 + 7 + uVar30;" (assignment_expression "iVar7 = uStack_10d4 + 7 + uVar30" identifier = (binary_expression "uStack_10d4 + 7 + uVar30" (binary_expression "uStack_10d4 + 7" identifier + number_literal) + identifier)) ;) (if_statement "if ((bVar18 & 1) == 0) goto LAB_00287bac;" if (parenthesized_expression "((bVar18 & 1) == 0)" ( (binary_expression "(bVar18 & 1) == 0" (parenthesized_expression "(bVar18 & 1)" ( (binary_expression "bVar18 & 1" identifier & number_literal) )) == number_literal) )) (goto_statement "goto LAB_00287bac;" goto statement_identifier ;)) }))) (if_statement "if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if (iVar8 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar7 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar7 + 4;\n                  iVar7 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      iVar7 = iVar7 + -1;\n                    } while (iVar7 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }" if (parenthesized_expression "(puStack_10dc == (undefined1 *)0x404)" ( (binary_expression "puStack_10dc == (undefined1 *)0x404" identifier == (cast_expression "(undefined1 *)0x404" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n                  if (iVar8 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar7 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }" { (expression_statement "iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);" (assignment_expression "iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3)" identifier = (call_expression "(**(code **)(puVar31 + 0x175a04))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x175a04))" ( (pointer_expression "**(code **)(puVar31 + 0x175a04)" * (pointer_expression "*(code **)(puVar31 + 0x175a04)" * (cast_expression "(code **)(puVar31 + 0x175a04)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175a04)" ( (binary_expression "puVar31 + 0x175a04" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if (iVar8 < 0) goto LAB_00287db0;" if (parenthesized_expression "(iVar8 < 0)" ( (binary_expression "iVar8 < 0" identifier < number_literal) )) (goto_statement "goto LAB_00287db0;" goto statement_identifier ;)) (expression_statement "(**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);" (call_expression "(**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff)" (parenthesized_expression "(**(code **)(puVar31 + 0x1759bc))" ( (pointer_expression "**(code **)(puVar31 + 0x1759bc)" * (pointer_expression "*(code **)(puVar31 + 0x1759bc)" * (cast_expression "(code **)(puVar31 + 0x1759bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1759bc)" ( (binary_expression "puVar31 + 0x1759bc" identifier + number_literal) ))))) )) (argument_list "(iVar3,0xffffffff)" ( identifier , number_literal ))) ;) (expression_statement "uStack_10d4 = iVar7 + 4;" (assignment_expression "uStack_10d4 = iVar7 + 4" identifier = (binary_expression "iVar7 + 4" identifier + number_literal)) ;) (expression_statement "uStack_10c8 = uStack_10d4;" (assignment_expression "uStack_10c8 = uStack_10d4" identifier = identifier) ;) }) (else_clause "else {\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar7 + 4;\n                  iVar7 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      iVar7 = iVar7 + -1;\n                    } while (iVar7 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }" else (compound_statement "{\n                  (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar7 + 4;\n                  iVar7 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      iVar7 = iVar7 + -1;\n                    } while (iVar7 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }" { (expression_statement "(**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);" (call_expression "(**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12)" (parenthesized_expression "(**(code **)(puVar31 + 0x1759bc))" ( (pointer_expression "**(code **)(puVar31 + 0x1759bc)" * (pointer_expression "*(code **)(puVar31 + 0x1759bc)" * (cast_expression "(code **)(puVar31 + 0x1759bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1759bc)" ( (binary_expression "puVar31 + 0x1759bc" identifier + number_literal) ))))) )) (argument_list "(iVar3,uVar12)" ( identifier , identifier ))) ;) (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (expression_statement "uStack_10d4 = uVar12 + iVar7 + 4;" (assignment_expression "uStack_10d4 = uVar12 + iVar7 + 4" identifier = (binary_expression "uVar12 + iVar7 + 4" (binary_expression "uVar12 + iVar7" identifier + identifier) + number_literal)) ;) (expression_statement "iVar7 = uVar12 - 1;" (assignment_expression "iVar7 = uVar12 - 1" identifier = (binary_expression "uVar12 - 1" identifier - number_literal)) ;) (if_statement "if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      iVar7 = iVar7 + -1;\n                    } while (iVar7 != -1);\n                  }" if (parenthesized_expression "(uVar12 != 0)" ( (binary_expression "uVar12 != 0" identifier != number_literal) )) (compound_statement "{\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      iVar7 = iVar7 + -1;\n                    } while (iVar7 != -1);\n                  }" { (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (do_statement "do {\n                      puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      iVar7 = iVar7 + -1;\n                    } while (iVar7 != -1);" do (compound_statement "{\n                      puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                      iVar7 = iVar7 + -1;\n                    }" { (expression_statement "puVar21 = (undefined1 *)(iVar26 + iStack_10a8);" (assignment_expression "puVar21 = (undefined1 *)(iVar26 + iStack_10a8)" identifier = (cast_expression "(undefined1 *)(iVar26 + iStack_10a8)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar26 + iStack_10a8)" ( (binary_expression "iVar26 + iStack_10a8" identifier + identifier) )))) ;) (expression_statement "iStack_10a8 = iStack_10a8 + 1;" (assignment_expression "iStack_10a8 = iStack_10a8 + 1" identifier = (binary_expression "iStack_10a8 + 1" identifier + number_literal)) ;) (expression_statement "(**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);" (call_expression "(**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar31 + 0x1756c4)" * (pointer_expression "*(code **)(puVar31 + 0x1756c4)" * (cast_expression "(code **)(puVar31 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756c4)" ( (binary_expression "puVar31 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,*puVar21)" ( identifier , (pointer_expression "*puVar21" * identifier) ))) ;) (expression_statement "iVar7 = iVar7 + -1;" (assignment_expression "iVar7 = iVar7 + -1" identifier = (binary_expression "iVar7 + -1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar7 != -1)" ( (binary_expression "iVar7 != -1" identifier != number_literal) )) ;) })) (if_statement "if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }" if (parenthesized_expression "((uStack_10d4 & 1) != 0)" ( (binary_expression "(uStack_10d4 & 1) != 0" (parenthesized_expression "(uStack_10d4 & 1)" ( (binary_expression "uStack_10d4 & 1" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                    (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }" { (expression_statement "(**(code **)(puVar31 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar31 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar31 + 0x1756c4)" * (pointer_expression "*(code **)(puVar31 + 0x1756c4)" * (cast_expression "(code **)(puVar31 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756c4)" ( (binary_expression "puVar31 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0)" ( identifier , number_literal ))) ;) (expression_statement "uStack_10d4 = uStack_10d4 + 1;" (assignment_expression "uStack_10d4 = uStack_10d4 + 1" identifier = (binary_expression "uStack_10d4 + 1" identifier + number_literal)) ;) })) }))) (labeled_statement "LAB_00285914:\n                iVar9 = iVar9 + 1;" statement_identifier : (expression_statement "iVar9 = iVar9 + 1;" (assignment_expression "iVar9 = iVar9 + 1" identifier = (binary_expression "iVar9 + 1" identifier + number_literal)) ;)) }) (else_clause "else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar7 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n                iVar9 = 2;\n              }" else (compound_statement "{\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar7 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n                iVar9 = 2;\n              }" { (if_statement "if (0x7fff < (int)uVar12) goto LAB_00285914;" if (parenthesized_expression "(0x7fff < (int)uVar12)" ( (binary_expression "0x7fff < (int)uVar12" number_literal < (cast_expression "(int)uVar12" ( (type_descriptor "int" primitive_type) ) identifier)) )) (goto_statement "goto LAB_00285914;" goto statement_identifier ;)) (expression_statement "(**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);" (call_expression "(**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar31 + 0x1756c4)" * (pointer_expression "*(code **)(puVar31 + 0x1756c4)" * (cast_expression "(code **)(puVar31 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756c4)" ( (binary_expression "puVar31 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0x1c)" ( identifier , number_literal ))) ;) (expression_statement "(**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);" (call_expression "(**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar31 + 0x1756c4)" * (pointer_expression "*(code **)(puVar31 + 0x1756c4)" * (cast_expression "(code **)(puVar31 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756c4)" ( (binary_expression "puVar31 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,cVar17)" ( identifier , identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);" (call_expression "(**(code **)(puVar31 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar31 + 0x1756c4)" * (pointer_expression "*(code **)(puVar31 + 0x1756c4)" * (cast_expression "(code **)(puVar31 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756c4)" ( (binary_expression "puVar31 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,(uint)puStack_10dc & 0xff)" ( identifier , (binary_expression "(uint)puStack_10dc & 0xff" (cast_expression "(uint)puStack_10dc" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);" (call_expression "(**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff)" (parenthesized_expression "(**(code **)(puVar31 + 0x175970))" ( (pointer_expression "**(code **)(puVar31 + 0x175970)" * (pointer_expression "*(code **)(puVar31 + 0x175970)" * (cast_expression "(code **)(puVar31 + 0x175970)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175970)" ( (binary_expression "puVar31 + 0x175970" identifier + number_literal) ))))) )) (argument_list "(iVar3,uVar12 & 0xffff)" ( identifier , (binary_expression "uVar12 & 0xffff" identifier & number_literal) ))) ;) (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (expression_statement "uStack_10d4 = uVar12 + uStack_10d4 + 5;" (assignment_expression "uStack_10d4 = uVar12 + uStack_10d4 + 5" identifier = (binary_expression "uVar12 + uStack_10d4 + 5" (binary_expression "uVar12 + uStack_10d4" identifier + identifier) + number_literal)) ;) (expression_statement "iVar7 = uVar12 - 1;" (assignment_expression "iVar7 = uVar12 - 1" identifier = (binary_expression "uVar12 - 1" identifier - number_literal)) ;) (if_statement "if (uVar12 == 0) goto LAB_00285914;" if (parenthesized_expression "(uVar12 == 0)" ( (binary_expression "uVar12 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00285914;" goto statement_identifier ;)) (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (do_statement "do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);" do (compound_statement "{\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                }" { (expression_statement "puVar21 = (undefined1 *)(iVar26 + iStack_10a8);" (assignment_expression "puVar21 = (undefined1 *)(iVar26 + iStack_10a8)" identifier = (cast_expression "(undefined1 *)(iVar26 + iStack_10a8)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar26 + iStack_10a8)" ( (binary_expression "iVar26 + iStack_10a8" identifier + identifier) )))) ;) (expression_statement "iStack_10a8 = iStack_10a8 + 1;" (assignment_expression "iStack_10a8 = iStack_10a8 + 1" identifier = (binary_expression "iStack_10a8 + 1" identifier + number_literal)) ;) (expression_statement "(**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);" (call_expression "(**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar31 + 0x1756c4)" * (pointer_expression "*(code **)(puVar31 + 0x1756c4)" * (cast_expression "(code **)(puVar31 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756c4)" ( (binary_expression "puVar31 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,*puVar21)" ( identifier , (pointer_expression "*puVar21" * identifier) ))) ;) (expression_statement "iVar7 = iVar7 + -1;" (assignment_expression "iVar7 = iVar7 + -1" identifier = (binary_expression "iVar7 + -1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar7 != -1)" ( (binary_expression "iVar7 != -1" identifier != number_literal) )) ;) (expression_statement "iVar9 = 2;" (assignment_expression "iVar9 = 2" identifier = number_literal) ;) }))) })) (expression_statement "iVar26 = (**(code **)(puVar31 + 0x17575c))(iVar26);" (assignment_expression "iVar26 = (**(code **)(puVar31 + 0x17575c))(iVar26)" identifier = (call_expression "(**(code **)(puVar31 + 0x17575c))(iVar26)" (parenthesized_expression "(**(code **)(puVar31 + 0x17575c))" ( (pointer_expression "**(code **)(puVar31 + 0x17575c)" * (pointer_expression "*(code **)(puVar31 + 0x17575c)" * (cast_expression "(code **)(puVar31 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x17575c)" ( (binary_expression "puVar31 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(iVar26)" ( identifier )))) ;) (expression_statement "iVar19 = (**(code **)(puVar31 + 0x17575c))(iVar19);" (assignment_expression "iVar19 = (**(code **)(puVar31 + 0x17575c))(iVar19)" identifier = (call_expression "(**(code **)(puVar31 + 0x17575c))(iVar19)" (parenthesized_expression "(**(code **)(puVar31 + 0x17575c))" ( (pointer_expression "**(code **)(puVar31 + 0x17575c)" * (pointer_expression "*(code **)(puVar31 + 0x17575c)" * (cast_expression "(code **)(puVar31 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x17575c)" ( (binary_expression "puVar31 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier )))) ;) (expression_statement "puVar21 = puVar5;" (assignment_expression "puVar21 = puVar5" identifier = identifier) ;) (if_statement "if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10ec);\n            }" if (parenthesized_expression "(puStack_10ec != (undefined1 *)0x0)" ( (binary_expression "puStack_10ec != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10ec);\n            }" { (expression_statement "puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10ec);" (assignment_expression "puStack_10ec = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10ec)" identifier = (cast_expression "(undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10ec)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar31 + 0x17575c))(puStack_10ec)" (parenthesized_expression "(**(code **)(puVar31 + 0x17575c))" ( (pointer_expression "**(code **)(puVar31 + 0x17575c)" * (pointer_expression "*(code **)(puVar31 + 0x17575c)" * (cast_expression "(code **)(puVar31 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x17575c)" ( (binary_expression "puVar31 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(puStack_10ec)" ( identifier ))))) ;) })) }) while (parenthesized_expression "( true )" ( true )) ;)) })) (goto_statement "goto LAB_00287db0;" goto statement_identifier ;) })) (expression_statement "iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);" (assignment_expression "iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1)" identifier = (call_expression "(**(code **)(puVar31 + 0x175bf4))(0x14000,1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf4)" * (pointer_expression "*(code **)(puVar31 + 0x175bf4)" * (cast_expression "(code **)(puVar31 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf4)" ( (binary_expression "puVar31 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(0x14000,1)" ( number_literal , number_literal )))) ;) (if_statement "if (iVar19 != 0) {\n        (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (compound_statement "{\n        (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }" { (expression_statement "(**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);" (call_expression "(**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000)" (parenthesized_expression "(**(code **)(puVar31 + 0x175dbc))" ( (pointer_expression "**(code **)(puVar31 + 0x175dbc)" * (pointer_expression "*(code **)(puVar31 + 0x175dbc)" * (cast_expression "(code **)(puVar31 + 0x175dbc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175dbc)" ( (binary_expression "puVar31 + 0x175dbc" identifier + number_literal) ))))) )) (argument_list "(iVar19,0,0x14000)" ( identifier , number_literal , number_literal ))) ;) (do_statement "do {\n          iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );" do (compound_statement "{\n          iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        }" { (expression_statement "iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);" (assignment_expression "iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19)" identifier = (call_expression "(**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19)" (parenthesized_expression "(**(code **)(puVar31 + 0x175494))" ( (pointer_expression "**(code **)(puVar31 + 0x175494)" * (pointer_expression "*(code **)(puVar31 + 0x175494)" * (cast_expression "(code **)(puVar31 + 0x175494)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175494)" ( (binary_expression "puVar31 + 0x175494" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc,0x14000,iVar19)" ( identifier , number_literal , identifier )))) ;) (if_statement "if (iVar13 == 0) goto LAB_00286038;" if (parenthesized_expression "(iVar13 == 0)" ( (binary_expression "iVar13 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00286038;" goto statement_identifier ;)) (expression_statement "iVar22 = 0;" (assignment_expression "iVar22 = 0" identifier = number_literal) ;) (if_statement "if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }" if (parenthesized_expression "(0 < iVar13)" ( (binary_expression "0 < iVar13" number_literal < identifier) )) (compound_statement "{\n            do {\n              iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }" { (do_statement "do {\n              iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);" do (compound_statement "{\n              iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            }" { (expression_statement "iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);" (assignment_expression "iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22)" identifier = (call_expression "(**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22)" (parenthesized_expression "(**(code **)(puVar31 + 0x17607c))" ( (pointer_expression "**(code **)(puVar31 + 0x17607c)" * (pointer_expression "*(code **)(puVar31 + 0x17607c)" * (cast_expression "(code **)(puVar31 + 0x17607c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x17607c)" ( (binary_expression "puVar31 + 0x17607c" identifier + number_literal) ))))) )) (argument_list "(iVar3,iVar13 - iVar22,iVar19 + iVar22)" ( identifier , (binary_expression "iVar13 - iVar22" identifier - identifier) , (binary_expression "iVar19 + iVar22" identifier + identifier) )))) ;) (if_statement "if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }" if (parenthesized_expression "(iVar14 < 1)" ( (binary_expression "iVar14 < 1" identifier < number_literal) )) (compound_statement "{\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }" { (if_statement "if (iVar22 < iVar13) goto LAB_00286038;" if (parenthesized_expression "(iVar22 < iVar13)" ( (binary_expression "iVar22 < iVar13" identifier < identifier) )) (goto_statement "goto LAB_00286038;" goto statement_identifier ;)) (break_statement "break;" break ;) })) (expression_statement "iVar22 = iVar22 + iVar14;" (assignment_expression "iVar22 = iVar22 + iVar14" identifier = (binary_expression "iVar22 + iVar14" identifier + identifier)) ;) }) while (parenthesized_expression "(iVar22 < iVar13)" ( (binary_expression "iVar22 < iVar13" identifier < identifier) )) ;) })) }) while (parenthesized_expression "( true )" ( true )) ;) })) (expression_statement "uStack_10d4 = 1;" (assignment_expression "uStack_10d4 = 1" identifier = number_literal) ;) (goto_statement "goto LAB_00286050;" goto statement_identifier ;) })) (expression_statement "puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(0x1000,1);" (assignment_expression "puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(0x1000,1)" identifier = (cast_expression "(undefined1 *)(**(code **)(puVar31 + 0x175bf4))(0x1000,1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar31 + 0x175bf4))(0x1000,1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf4)" * (pointer_expression "*(code **)(puVar31 + 0x175bf4)" * (cast_expression "(code **)(puVar31 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf4)" ( (binary_expression "puVar31 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(0x1000,1)" ( number_literal , number_literal ))))) ;) (if_statement "if (puVar5 == (undefined1 *)0x0) {\nLAB_0028544c:\n      uStack_10d4 = 0xffffffff;\n    }\n    else {\n      uVar15 = (**(code **)(puVar31 + 0x175bdc))();\n      iStack_10cc = 0x1000;\n      uStack_10d4 = 0;\n      uStack_10c8 = 0;\n      uStack_10e4 = 0;\n      cVar17 = '\0';\n      puStack_10dc = (undefined1 *)0x0;\n      iVar19 = 0;\n      iVar26 = 0;\n      iVar13 = *(int *)(puVar31 + 0x175020);\n      iVar22 = *(int *)(puVar31 + 0x1752b0);\n      iVar14 = *(int *)(puVar31 + 0x174fb8);\n      puVar21 = puVar5;\n      while( true ) {\n        while ((iVar9 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar9 != -1 &&\n               (iVar10 = (int)puVar21 - (int)puVar5, iVar9 != 10))) {\n          if (iStack_10cc <= iVar10 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1);\n            if (puVar5 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar5 + iVar10;\n          }\n          *puVar21 = (char)iVar9;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar5 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar26 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n        if (iVar26 == 0) {\n          (**(code **)(puVar31 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar31 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar10 = *(int *)(puVar31 + 0x174fc8);\n        iVar24 = *(int *)(puVar31 + 0x174fb8) + -0x2d8;\n        iVar9 = 0;\n        while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                 (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar7 == 0) {\n          if (iVar9 == 0) {\n            iStack_10a8 = 0;\n            iVar8 = *(int *)(puVar31 + 0x174fc8);\n            iVar29 = *(int *)(puVar31 + 0x174fb0);\n            iVar7 = 0;\nLAB_00284ff4:\n            do {\n              iVar6 = (**(code **)(puVar31 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar6 != 0) goto LAB_002850f4;\n              if (iVar7 == 1) {\n                uStack_10e4 = (**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar7 == 2) {\n                iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar7 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar7 == 0) {\n                iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                if (iVar6 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar7 = iVar7 + 1;\n            } while( true );\n          }\n          if (iVar9 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar31 + 0x175a20))();\n          while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar7) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar7;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }\n              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar31 + 0x1759bc))(iVar3);\n              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar31 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              iVar7 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              iVar7 = iVar7 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n              uVar30 = (uint)bVar18;\n              if (uVar30 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar30);\n              }\n              iVar7 = uStack_10d4 + 7 + uVar30;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n              if (iVar8 < 0) goto LAB_0028544c;\n              (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar7 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar7 + 4;\n              iVar7 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar9 = iVar9 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar7 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n              iVar7 = iVar7 + -1;\n            } while (iVar7 != -1);\n            iVar9 = 2;\n          }\n        }\n        iVar26 = (**(code **)(puVar31 + 0x17575c))(iVar26);\n        iVar19 = (**(code **)(puVar31 + 0x17575c))(iVar19);\n        puVar21 = puVar5;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10dc);\n        }\n      }\nLAB_0028573c:\n      (**(code **)(puVar31 + 0x175450))(uVar15);\n      if (iVar26 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar31 + 0x17575c))(iVar26);\n      }\nLAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar31 + 0x17575c))(iVar19);\n      }\n      if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar31 + 0x17575c))(puStack_10dc);\n      }\n      (**(code **)(puVar31 + 0x17575c))(puVar5);\n      if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }\nLAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar3);\n        (**(code **)(puVar31 + 0x175608))\n                  (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                   *(int *)(puVar31 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar31 + 0x174fb4) + 0x1854,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pIStack_10fc != (Image *)0x0) {\n          (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n          (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n          pIStack_10fc = (Image *)0x0;\n        }\n        goto LAB_00287858;\n      }\n      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n    }" if (parenthesized_expression "(puVar5 == (undefined1 *)0x0)" ( (binary_expression "puVar5 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_0028544c:\n      uStack_10d4 = 0xffffffff;\n    }" { (labeled_statement "LAB_0028544c:\n      uStack_10d4 = 0xffffffff;" statement_identifier : (expression_statement "uStack_10d4 = 0xffffffff;" (assignment_expression "uStack_10d4 = 0xffffffff" identifier = number_literal) ;)) }) (else_clause "else {\n      uVar15 = (**(code **)(puVar31 + 0x175bdc))();\n      iStack_10cc = 0x1000;\n      uStack_10d4 = 0;\n      uStack_10c8 = 0;\n      uStack_10e4 = 0;\n      cVar17 = '\0';\n      puStack_10dc = (undefined1 *)0x0;\n      iVar19 = 0;\n      iVar26 = 0;\n      iVar13 = *(int *)(puVar31 + 0x175020);\n      iVar22 = *(int *)(puVar31 + 0x1752b0);\n      iVar14 = *(int *)(puVar31 + 0x174fb8);\n      puVar21 = puVar5;\n      while( true ) {\n        while ((iVar9 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar9 != -1 &&\n               (iVar10 = (int)puVar21 - (int)puVar5, iVar9 != 10))) {\n          if (iStack_10cc <= iVar10 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1);\n            if (puVar5 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar5 + iVar10;\n          }\n          *puVar21 = (char)iVar9;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar5 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar26 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n        if (iVar26 == 0) {\n          (**(code **)(puVar31 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar31 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar10 = *(int *)(puVar31 + 0x174fc8);\n        iVar24 = *(int *)(puVar31 + 0x174fb8) + -0x2d8;\n        iVar9 = 0;\n        while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                 (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar7 == 0) {\n          if (iVar9 == 0) {\n            iStack_10a8 = 0;\n            iVar8 = *(int *)(puVar31 + 0x174fc8);\n            iVar29 = *(int *)(puVar31 + 0x174fb0);\n            iVar7 = 0;\nLAB_00284ff4:\n            do {\n              iVar6 = (**(code **)(puVar31 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar6 != 0) goto LAB_002850f4;\n              if (iVar7 == 1) {\n                uStack_10e4 = (**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar7 == 2) {\n                iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar7 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar7 == 0) {\n                iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                if (iVar6 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar7 = iVar7 + 1;\n            } while( true );\n          }\n          if (iVar9 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar31 + 0x175a20))();\n          while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar7) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar7;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }\n              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar31 + 0x1759bc))(iVar3);\n              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar31 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              iVar7 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              iVar7 = iVar7 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n              uVar30 = (uint)bVar18;\n              if (uVar30 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar30);\n              }\n              iVar7 = uStack_10d4 + 7 + uVar30;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n              if (iVar8 < 0) goto LAB_0028544c;\n              (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar7 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar7 + 4;\n              iVar7 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar9 = iVar9 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar7 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n              iVar7 = iVar7 + -1;\n            } while (iVar7 != -1);\n            iVar9 = 2;\n          }\n        }\n        iVar26 = (**(code **)(puVar31 + 0x17575c))(iVar26);\n        iVar19 = (**(code **)(puVar31 + 0x17575c))(iVar19);\n        puVar21 = puVar5;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10dc);\n        }\n      }\nLAB_0028573c:\n      (**(code **)(puVar31 + 0x175450))(uVar15);\n      if (iVar26 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar31 + 0x17575c))(iVar26);\n      }\nLAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar31 + 0x17575c))(iVar19);\n      }\n      if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar31 + 0x17575c))(puStack_10dc);\n      }\n      (**(code **)(puVar31 + 0x17575c))(puVar5);\n      if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }\nLAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar3);\n        (**(code **)(puVar31 + 0x175608))\n                  (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                   *(int *)(puVar31 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar31 + 0x174fb4) + 0x1854,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pIStack_10fc != (Image *)0x0) {\n          (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n          (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n          pIStack_10fc = (Image *)0x0;\n        }\n        goto LAB_00287858;\n      }\n      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n    }" else (compound_statement "{\n      uVar15 = (**(code **)(puVar31 + 0x175bdc))();\n      iStack_10cc = 0x1000;\n      uStack_10d4 = 0;\n      uStack_10c8 = 0;\n      uStack_10e4 = 0;\n      cVar17 = '\0';\n      puStack_10dc = (undefined1 *)0x0;\n      iVar19 = 0;\n      iVar26 = 0;\n      iVar13 = *(int *)(puVar31 + 0x175020);\n      iVar22 = *(int *)(puVar31 + 0x1752b0);\n      iVar14 = *(int *)(puVar31 + 0x174fb8);\n      puVar21 = puVar5;\n      while( true ) {\n        while ((iVar9 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar9 != -1 &&\n               (iVar10 = (int)puVar21 - (int)puVar5, iVar9 != 10))) {\n          if (iStack_10cc <= iVar10 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1);\n            if (puVar5 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar5 + iVar10;\n          }\n          *puVar21 = (char)iVar9;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar5 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar26 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n        if (iVar26 == 0) {\n          (**(code **)(puVar31 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar31 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar10 = *(int *)(puVar31 + 0x174fc8);\n        iVar24 = *(int *)(puVar31 + 0x174fb8) + -0x2d8;\n        iVar9 = 0;\n        while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                 (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar7 == 0) {\n          if (iVar9 == 0) {\n            iStack_10a8 = 0;\n            iVar8 = *(int *)(puVar31 + 0x174fc8);\n            iVar29 = *(int *)(puVar31 + 0x174fb0);\n            iVar7 = 0;\nLAB_00284ff4:\n            do {\n              iVar6 = (**(code **)(puVar31 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar6 != 0) goto LAB_002850f4;\n              if (iVar7 == 1) {\n                uStack_10e4 = (**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar7 == 2) {\n                iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar7 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar7 == 0) {\n                iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                if (iVar6 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar7 = iVar7 + 1;\n            } while( true );\n          }\n          if (iVar9 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar31 + 0x175a20))();\n          while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar7) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar7;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }\n              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar31 + 0x1759bc))(iVar3);\n              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar31 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              iVar7 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              iVar7 = iVar7 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n              uVar30 = (uint)bVar18;\n              if (uVar30 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar30);\n              }\n              iVar7 = uStack_10d4 + 7 + uVar30;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n              if (iVar8 < 0) goto LAB_0028544c;\n              (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar7 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar7 + 4;\n              iVar7 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar9 = iVar9 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar7 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n              iVar7 = iVar7 + -1;\n            } while (iVar7 != -1);\n            iVar9 = 2;\n          }\n        }\n        iVar26 = (**(code **)(puVar31 + 0x17575c))(iVar26);\n        iVar19 = (**(code **)(puVar31 + 0x17575c))(iVar19);\n        puVar21 = puVar5;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10dc);\n        }\n      }\nLAB_0028573c:\n      (**(code **)(puVar31 + 0x175450))(uVar15);\n      if (iVar26 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar31 + 0x17575c))(iVar26);\n      }\nLAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar31 + 0x17575c))(iVar19);\n      }\n      if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar31 + 0x17575c))(puStack_10dc);\n      }\n      (**(code **)(puVar31 + 0x17575c))(puVar5);\n      if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }\nLAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar3);\n        (**(code **)(puVar31 + 0x175608))\n                  (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                   *(int *)(puVar31 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar31 + 0x174fb4) + 0x1854,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pIStack_10fc != (Image *)0x0) {\n          (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n          (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n          pIStack_10fc = (Image *)0x0;\n        }\n        goto LAB_00287858;\n      }\n      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n    }" { (expression_statement "uVar15 = (**(code **)(puVar31 + 0x175bdc))();" (assignment_expression "uVar15 = (**(code **)(puVar31 + 0x175bdc))()" identifier = (call_expression "(**(code **)(puVar31 + 0x175bdc))()" (parenthesized_expression "(**(code **)(puVar31 + 0x175bdc))" ( (pointer_expression "**(code **)(puVar31 + 0x175bdc)" * (pointer_expression "*(code **)(puVar31 + 0x175bdc)" * (cast_expression "(code **)(puVar31 + 0x175bdc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bdc)" ( (binary_expression "puVar31 + 0x175bdc" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (expression_statement "iStack_10cc = 0x1000;" (assignment_expression "iStack_10cc = 0x1000" identifier = number_literal) ;) (expression_statement "uStack_10d4 = 0;" (assignment_expression "uStack_10d4 = 0" identifier = number_literal) ;) (expression_statement "uStack_10c8 = 0;" (assignment_expression "uStack_10c8 = 0" identifier = number_literal) ;) (expression_statement "uStack_10e4 = 0;" (assignment_expression "uStack_10e4 = 0" identifier = number_literal) ;) (expression_statement "cVar17 = '\0';" (assignment_expression "cVar17 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "puStack_10dc = (undefined1 *)0x0;" (assignment_expression "puStack_10dc = (undefined1 *)0x0" identifier = (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iVar19 = 0;" (assignment_expression "iVar19 = 0" identifier = number_literal) ;) (expression_statement "iVar26 = 0;" (assignment_expression "iVar26 = 0" identifier = number_literal) ;) (expression_statement "iVar13 = *(int *)(puVar31 + 0x175020);" (assignment_expression "iVar13 = *(int *)(puVar31 + 0x175020)" identifier = (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) ))))) ;) (expression_statement "iVar22 = *(int *)(puVar31 + 0x1752b0);" (assignment_expression "iVar22 = *(int *)(puVar31 + 0x1752b0)" identifier = (pointer_expression "*(int *)(puVar31 + 0x1752b0)" * (cast_expression "(int *)(puVar31 + 0x1752b0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x1752b0)" ( (binary_expression "puVar31 + 0x1752b0" identifier + number_literal) ))))) ;) (expression_statement "iVar14 = *(int *)(puVar31 + 0x174fb8);" (assignment_expression "iVar14 = *(int *)(puVar31 + 0x174fb8)" identifier = (pointer_expression "*(int *)(puVar31 + 0x174fb8)" * (cast_expression "(int *)(puVar31 + 0x174fb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb8)" ( (binary_expression "puVar31 + 0x174fb8" identifier + number_literal) ))))) ;) (expression_statement "puVar21 = puVar5;" (assignment_expression "puVar21 = puVar5" identifier = identifier) ;) (while_statement "while( true ) {\n        while ((iVar9 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar9 != -1 &&\n               (iVar10 = (int)puVar21 - (int)puVar5, iVar9 != 10))) {\n          if (iStack_10cc <= iVar10 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1);\n            if (puVar5 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar5 + iVar10;\n          }\n          *puVar21 = (char)iVar9;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar5 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar26 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n        if (iVar26 == 0) {\n          (**(code **)(puVar31 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar31 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar10 = *(int *)(puVar31 + 0x174fc8);\n        iVar24 = *(int *)(puVar31 + 0x174fb8) + -0x2d8;\n        iVar9 = 0;\n        while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                 (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar7 == 0) {\n          if (iVar9 == 0) {\n            iStack_10a8 = 0;\n            iVar8 = *(int *)(puVar31 + 0x174fc8);\n            iVar29 = *(int *)(puVar31 + 0x174fb0);\n            iVar7 = 0;\nLAB_00284ff4:\n            do {\n              iVar6 = (**(code **)(puVar31 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar6 != 0) goto LAB_002850f4;\n              if (iVar7 == 1) {\n                uStack_10e4 = (**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar7 == 2) {\n                iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar7 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar7 == 0) {\n                iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                if (iVar6 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar7 = iVar7 + 1;\n            } while( true );\n          }\n          if (iVar9 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar31 + 0x175a20))();\n          while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar7) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar7;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }\n              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar31 + 0x1759bc))(iVar3);\n              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar31 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              iVar7 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              iVar7 = iVar7 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n              uVar30 = (uint)bVar18;\n              if (uVar30 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar30);\n              }\n              iVar7 = uStack_10d4 + 7 + uVar30;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n              if (iVar8 < 0) goto LAB_0028544c;\n              (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar7 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar7 + 4;\n              iVar7 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar9 = iVar9 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar7 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n              iVar7 = iVar7 + -1;\n            } while (iVar7 != -1);\n            iVar9 = 2;\n          }\n        }\n        iVar26 = (**(code **)(puVar31 + 0x17575c))(iVar26);\n        iVar19 = (**(code **)(puVar31 + 0x17575c))(iVar19);\n        puVar21 = puVar5;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10dc);\n        }\n      }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n        while ((iVar9 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar9 != -1 &&\n               (iVar10 = (int)puVar21 - (int)puVar5, iVar9 != 10))) {\n          if (iStack_10cc <= iVar10 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1);\n            if (puVar5 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar5 + iVar10;\n          }\n          *puVar21 = (char)iVar9;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar5 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar26 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n        if (iVar26 == 0) {\n          (**(code **)(puVar31 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar31 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar10 = *(int *)(puVar31 + 0x174fc8);\n        iVar24 = *(int *)(puVar31 + 0x174fb8) + -0x2d8;\n        iVar9 = 0;\n        while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                 (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar7 == 0) {\n          if (iVar9 == 0) {\n            iStack_10a8 = 0;\n            iVar8 = *(int *)(puVar31 + 0x174fc8);\n            iVar29 = *(int *)(puVar31 + 0x174fb0);\n            iVar7 = 0;\nLAB_00284ff4:\n            do {\n              iVar6 = (**(code **)(puVar31 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar6 != 0) goto LAB_002850f4;\n              if (iVar7 == 1) {\n                uStack_10e4 = (**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar7 == 2) {\n                iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar7 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar7 == 0) {\n                iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                if (iVar6 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar7 = iVar7 + 1;\n            } while( true );\n          }\n          if (iVar9 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar31 + 0x175a20))();\n          while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar7) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar7;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }\n              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar31 + 0x1759bc))(iVar3);\n              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar31 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              iVar7 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              iVar7 = iVar7 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n              uVar30 = (uint)bVar18;\n              if (uVar30 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar30);\n              }\n              iVar7 = uStack_10d4 + 7 + uVar30;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n              if (iVar8 < 0) goto LAB_0028544c;\n              (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar7 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar7 + 4;\n              iVar7 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar9 = iVar9 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar7 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n              iVar7 = iVar7 + -1;\n            } while (iVar7 != -1);\n            iVar9 = 2;\n          }\n        }\n        iVar26 = (**(code **)(puVar31 + 0x17575c))(iVar26);\n        iVar19 = (**(code **)(puVar31 + 0x17575c))(iVar19);\n        puVar21 = puVar5;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10dc);\n        }\n      }" { (while_statement "while ((iVar9 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar9 != -1 &&\n               (iVar10 = (int)puVar21 - (int)puVar5, iVar9 != 10))) {\n          if (iStack_10cc <= iVar10 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1);\n            if (puVar5 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar5 + iVar10;\n          }\n          *puVar21 = (char)iVar9;\n          puVar21 = puVar21 + 1;\n        }" while (parenthesized_expression "((iVar9 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar9 != -1 &&\n               (iVar10 = (int)puVar21 - (int)puVar5, iVar9 != 10)))" ( (parenthesized_expression "(iVar9 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar9 != -1 &&\n               (iVar10 = (int)puVar21 - (int)puVar5, iVar9 != 10))" ( (comma_expression "iVar9 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar9 != -1 &&\n               (iVar10 = (int)puVar21 - (int)puVar5, iVar9 != 10)" (assignment_expression "iVar9 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc)" identifier = (call_expression "(**(code **)(puVar31 + 0x175ed8))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175ed8))" ( (pointer_expression "**(code **)(puVar31 + 0x175ed8)" * (pointer_expression "*(code **)(puVar31 + 0x175ed8)" * (cast_expression "(code **)(puVar31 + 0x175ed8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175ed8)" ( (binary_expression "puVar31 + 0x175ed8" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier )))) , (binary_expression "iVar9 != -1 &&\n               (iVar10 = (int)puVar21 - (int)puVar5, iVar9 != 10)" (binary_expression "iVar9 != -1" identifier != number_literal) && (parenthesized_expression "(iVar10 = (int)puVar21 - (int)puVar5, iVar9 != 10)" ( (comma_expression "iVar10 = (int)puVar21 - (int)puVar5, iVar9 != 10" (assignment_expression "iVar10 = (int)puVar21 - (int)puVar5" identifier = (binary_expression "(int)puVar21 - (int)puVar5" (cast_expression "(int)puVar21" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)puVar5" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar9 != 10" identifier != number_literal)) )))) )) )) (compound_statement "{\n          if (iStack_10cc <= iVar10 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1);\n            if (puVar5 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar5 + iVar10;\n          }\n          *puVar21 = (char)iVar9;\n          puVar21 = puVar21 + 1;\n        }" { (if_statement "if (iStack_10cc <= iVar10 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1);\n            if (puVar5 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar5 + iVar10;\n          }" if (parenthesized_expression "(iStack_10cc <= iVar10 + 1)" ( (binary_expression "iStack_10cc <= iVar10 + 1" identifier <= (binary_expression "iVar10 + 1" identifier + number_literal)) )) (compound_statement "{\n            iStack_10cc = iStack_10cc * 2;\n            puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1);\n            if (puVar5 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar5 + iVar10;\n          }" { (expression_statement "iStack_10cc = iStack_10cc * 2;" (assignment_expression "iStack_10cc = iStack_10cc * 2" identifier = (binary_expression "iStack_10cc * 2" identifier * number_literal)) ;) (expression_statement "puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1);" (assignment_expression "puVar5 = (undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1)" identifier = (cast_expression "(undefined1 *)(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar31 + 0x175b08))(puVar5,iStack_10cc + 2,1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175b08))" ( (pointer_expression "**(code **)(puVar31 + 0x175b08)" * (pointer_expression "*(code **)(puVar31 + 0x175b08)" * (cast_expression "(code **)(puVar31 + 0x175b08)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175b08)" ( (binary_expression "puVar31 + 0x175b08" identifier + number_literal) ))))) )) (argument_list "(puVar5,iStack_10cc + 2,1)" ( identifier , (binary_expression "iStack_10cc + 2" identifier + number_literal) , number_literal ))))) ;) (if_statement "if (puVar5 == (undefined1 *)0x0) goto LAB_0028573c;" if (parenthesized_expression "(puVar5 == (undefined1 *)0x0)" ( (binary_expression "puVar5 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_0028573c;" goto statement_identifier ;)) (expression_statement "puVar21 = puVar5 + iVar10;" (assignment_expression "puVar21 = puVar5 + iVar10" identifier = (binary_expression "puVar5 + iVar10" identifier + identifier)) ;) })) (expression_statement "*puVar21 = (char)iVar9;" (assignment_expression "*puVar21 = (char)iVar9" (pointer_expression "*puVar21" * identifier) = (cast_expression "(char)iVar9" ( (type_descriptor "char" primitive_type) ) identifier)) ;) (expression_statement "puVar21 = puVar21 + 1;" (assignment_expression "puVar21 = puVar21 + 1" identifier = (binary_expression "puVar21 + 1" identifier + number_literal)) ;) })) (if_statement "if ((puVar5 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0)) break;" if (parenthesized_expression "((puVar5 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0))" ( (binary_expression "(puVar5 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0)" (parenthesized_expression "(puVar5 == (undefined1 *)0x0)" ( (binary_expression "puVar5 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0)" ( (comma_expression "iStack_10cc = ((int)puVar21 - (int)puVar5) + 1, (int)puVar21 - (int)puVar5 == 0" (assignment_expression "iStack_10cc = ((int)puVar21 - (int)puVar5) + 1" identifier = (binary_expression "((int)puVar21 - (int)puVar5) + 1" (parenthesized_expression "((int)puVar21 - (int)puVar5)" ( (binary_expression "(int)puVar21 - (int)puVar5" (cast_expression "(int)puVar21" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)puVar5" ( (type_descriptor "int" primitive_type) ) identifier)) )) + number_literal)) , (binary_expression "(int)puVar21 - (int)puVar5 == 0" (binary_expression "(int)puVar21 - (int)puVar5" (cast_expression "(int)puVar21" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)puVar5" ( (type_descriptor "int" primitive_type) ) identifier)) == number_literal)) ))) )) (break_statement "break;" break ;)) (expression_statement "*puVar21 = 0;" (assignment_expression "*puVar21 = 0" (pointer_expression "*puVar21" * identifier) = number_literal) ;) (expression_statement "uStack_10ac = 0;" (assignment_expression "uStack_10ac = 0" identifier = number_literal) ;) (expression_statement "iVar26 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);" (assignment_expression "iVar26 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1)" identifier = (call_expression "(**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf4)" * (pointer_expression "*(code **)(puVar31 + 0x175bf4)" * (cast_expression "(code **)(puVar31 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf4)" ( (binary_expression "puVar31 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(iStack_10cc,1)" ( identifier , number_literal )))) ;) (if_statement "if (iVar26 == 0) {\n          (**(code **)(puVar31 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }" if (parenthesized_expression "(iVar26 == 0)" ( (binary_expression "iVar26 == 0" identifier == number_literal) )) (compound_statement "{\n          (**(code **)(puVar31 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }" { (expression_statement "(**(code **)(puVar31 + 0x175450))(uVar15);" (call_expression "(**(code **)(puVar31 + 0x175450))(uVar15)" (parenthesized_expression "(**(code **)(puVar31 + 0x175450))" ( (pointer_expression "**(code **)(puVar31 + 0x175450)" * (pointer_expression "*(code **)(puVar31 + 0x175450)" * (cast_expression "(code **)(puVar31 + 0x175450)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175450)" ( (binary_expression "puVar31 + 0x175450" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (goto_statement "goto LAB_002879d4;" goto statement_identifier ;) })) (expression_statement "iVar19 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1);" (assignment_expression "iVar19 = (**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1)" identifier = (call_expression "(**(code **)(puVar31 + 0x175bf4))(iStack_10cc,1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf4)" * (pointer_expression "*(code **)(puVar31 + 0x175bf4)" * (cast_expression "(code **)(puVar31 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf4)" ( (binary_expression "puVar31 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(iStack_10cc,1)" ( identifier , number_literal )))) ;) (if_statement "if (iVar19 == 0) {\n          (**(code **)(puVar31 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n          (**(code **)(puVar31 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }" { (expression_statement "(**(code **)(puVar31 + 0x175450))(uVar15);" (call_expression "(**(code **)(puVar31 + 0x175450))(uVar15)" (parenthesized_expression "(**(code **)(puVar31 + 0x175450))" ( (pointer_expression "**(code **)(puVar31 + 0x175450)" * (pointer_expression "*(code **)(puVar31 + 0x175450)" * (cast_expression "(code **)(puVar31 + 0x175450)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175450)" ( (binary_expression "puVar31 + 0x175450" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "iVar19 = 0;" (assignment_expression "iVar19 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_002879c4;" goto statement_identifier ;) })) (expression_statement "iVar10 = *(int *)(puVar31 + 0x174fc8);" (assignment_expression "iVar10 = *(int *)(puVar31 + 0x174fc8)" identifier = (pointer_expression "*(int *)(puVar31 + 0x174fc8)" * (cast_expression "(int *)(puVar31 + 0x174fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fc8)" ( (binary_expression "puVar31 + 0x174fc8" identifier + number_literal) ))))) ;) (expression_statement "iVar24 = *(int *)(puVar31 + 0x174fb8) + -0x2d8;" (assignment_expression "iVar24 = *(int *)(puVar31 + 0x174fb8) + -0x2d8" identifier = (binary_expression "*(int *)(puVar31 + 0x174fb8) + -0x2d8" (pointer_expression "*(int *)(puVar31 + 0x174fb8)" * (cast_expression "(int *)(puVar31 + 0x174fb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb8)" ( (binary_expression "puVar31 + 0x174fb8" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "iVar9 = 0;" (assignment_expression "iVar9 = 0" identifier = number_literal) ;) (while_statement "while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                 (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar7 == 0) {\n          if (iVar9 == 0) {\n            iStack_10a8 = 0;\n            iVar8 = *(int *)(puVar31 + 0x174fc8);\n            iVar29 = *(int *)(puVar31 + 0x174fb0);\n            iVar7 = 0;\nLAB_00284ff4:\n            do {\n              iVar6 = (**(code **)(puVar31 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar6 != 0) goto LAB_002850f4;\n              if (iVar7 == 1) {\n                uStack_10e4 = (**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar7 == 2) {\n                iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar7 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar7 == 0) {\n                iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                if (iVar6 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar7 = iVar7 + 1;\n            } while( true );\n          }\n          if (iVar9 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar31 + 0x175a20))();\n          while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar7) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar7;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }\n              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar31 + 0x1759bc))(iVar3);\n              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar31 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              iVar7 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              iVar7 = iVar7 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n              uVar30 = (uint)bVar18;\n              if (uVar30 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar30);\n              }\n              iVar7 = uStack_10d4 + 7 + uVar30;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n              if (iVar8 < 0) goto LAB_0028544c;\n              (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar7 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar7 + 4;\n              iVar7 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar9 = iVar9 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar7 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n              iVar7 = iVar7 + -1;\n            } while (iVar7 != -1);\n            iVar9 = 2;\n          }\n        }" while (parenthesized_expression "(iVar7 = (**(code **)(puVar31 + 0x175720))\n                                 (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar7 == 0)" ( (comma_expression "iVar7 = (**(code **)(puVar31 + 0x175720))\n                                 (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar7 == 0" (assignment_expression "iVar7 = (**(code **)(puVar31 + 0x175720))\n                                 (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af)" identifier = (call_expression "(**(code **)(puVar31 + 0x175720))\n                                 (uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af)" (parenthesized_expression "(**(code **)(puVar31 + 0x175720))" ( (pointer_expression "**(code **)(puVar31 + 0x175720)" * (pointer_expression "*(code **)(puVar31 + 0x175720)" * (cast_expression "(code **)(puVar31 + 0x175720)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175720)" ( (binary_expression "puVar31 + 0x175720" identifier + number_literal) ))))) )) (argument_list "(uVar15,0,iVar26,iStack_10cc,puVar5,iVar24,iVar10 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af)" ( identifier , number_literal , identifier , identifier , identifier , identifier , (binary_expression "iVar10 + 0x2c44" identifier + number_literal) , (binary_expression "iVar13 + 0x7178" identifier + number_literal) , number_literal , (pointer_expression "&uStack_10b0" & identifier) , (pointer_expression "&uStack_10ac" & identifier) , (pointer_expression "&uStack_10af" & identifier) )))) , (binary_expression "iVar7 == 0" identifier == number_literal)) )) (compound_statement "{\n          if (iVar9 == 0) {\n            iStack_10a8 = 0;\n            iVar8 = *(int *)(puVar31 + 0x174fc8);\n            iVar29 = *(int *)(puVar31 + 0x174fb0);\n            iVar7 = 0;\nLAB_00284ff4:\n            do {\n              iVar6 = (**(code **)(puVar31 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar6 != 0) goto LAB_002850f4;\n              if (iVar7 == 1) {\n                uStack_10e4 = (**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar7 == 2) {\n                iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar7 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar7 == 0) {\n                iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                if (iVar6 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar7 = iVar7 + 1;\n            } while( true );\n          }\n          if (iVar9 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar31 + 0x175a20))();\n          while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar7) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar7;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }\n              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar31 + 0x1759bc))(iVar3);\n              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar31 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              iVar7 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              iVar7 = iVar7 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n              uVar30 = (uint)bVar18;\n              if (uVar30 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar30);\n              }\n              iVar7 = uStack_10d4 + 7 + uVar30;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n              if (iVar8 < 0) goto LAB_0028544c;\n              (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar7 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar7 + 4;\n              iVar7 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar9 = iVar9 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar7 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n              iVar7 = iVar7 + -1;\n            } while (iVar7 != -1);\n            iVar9 = 2;\n          }\n        }" { (if_statement "if (iVar9 == 0) {\n            iStack_10a8 = 0;\n            iVar8 = *(int *)(puVar31 + 0x174fc8);\n            iVar29 = *(int *)(puVar31 + 0x174fb0);\n            iVar7 = 0;\nLAB_00284ff4:\n            do {\n              iVar6 = (**(code **)(puVar31 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar6 != 0) goto LAB_002850f4;\n              if (iVar7 == 1) {\n                uStack_10e4 = (**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar7 == 2) {\n                iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar7 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar7 == 0) {\n                iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                if (iVar6 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar7 = iVar7 + 1;\n            } while( true );\n          }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n            iStack_10a8 = 0;\n            iVar8 = *(int *)(puVar31 + 0x174fc8);\n            iVar29 = *(int *)(puVar31 + 0x174fb0);\n            iVar7 = 0;\nLAB_00284ff4:\n            do {\n              iVar6 = (**(code **)(puVar31 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar6 != 0) goto LAB_002850f4;\n              if (iVar7 == 1) {\n                uStack_10e4 = (**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar7 == 2) {\n                iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar7 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar7 == 0) {\n                iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                if (iVar6 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar7 = iVar7 + 1;\n            } while( true );\n          }" { (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (expression_statement "iVar8 = *(int *)(puVar31 + 0x174fc8);" (assignment_expression "iVar8 = *(int *)(puVar31 + 0x174fc8)" identifier = (pointer_expression "*(int *)(puVar31 + 0x174fc8)" * (cast_expression "(int *)(puVar31 + 0x174fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fc8)" ( (binary_expression "puVar31 + 0x174fc8" identifier + number_literal) ))))) ;) (expression_statement "iVar29 = *(int *)(puVar31 + 0x174fb0);" (assignment_expression "iVar29 = *(int *)(puVar31 + 0x174fb0)" identifier = (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) ))))) ;) (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" identifier = number_literal) ;) (labeled_statement "LAB_00284ff4:\n            do {\n              iVar6 = (**(code **)(puVar31 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar6 != 0) goto LAB_002850f4;\n              if (iVar7 == 1) {\n                uStack_10e4 = (**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar7 == 2) {\n                iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar7 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar7 == 0) {\n                iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                if (iVar6 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar7 = iVar7 + 1;\n            } while( true );" statement_identifier : (do_statement "do {\n              iVar6 = (**(code **)(puVar31 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar6 != 0) goto LAB_002850f4;\n              if (iVar7 == 1) {\n                uStack_10e4 = (**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar7 == 2) {\n                iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar7 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar7 == 0) {\n                iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                if (iVar6 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar7 = iVar7 + 1;\n            } while( true );" do (compound_statement "{\n              iVar6 = (**(code **)(puVar31 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar6 != 0) goto LAB_002850f4;\n              if (iVar7 == 1) {\n                uStack_10e4 = (**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar7 == 2) {\n                iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar7 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar7 == 0) {\n                iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                if (iVar6 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar7 = iVar7 + 1;\n            }" { (expression_statement "iVar6 = (**(code **)(puVar31 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);" (assignment_expression "iVar6 = (**(code **)(puVar31 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad)" identifier = (call_expression "(**(code **)(puVar31 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad)" (parenthesized_expression "(**(code **)(puVar31 + 0x175720))" ( (pointer_expression "**(code **)(puVar31 + 0x175720)" * (pointer_expression "*(code **)(puVar31 + 0x175720)" * (cast_expression "(code **)(puVar31 + 0x175720)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175720)" ( (binary_expression "puVar31 + 0x175720" identifier + number_literal) ))))) )) (argument_list "(uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar8 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad)" ( identifier , number_literal , identifier , identifier , identifier , identifier , (binary_expression "iVar8 + 0xabc" identifier + number_literal) , identifier , number_literal , (pointer_expression "&cStack_10ae" & identifier) , (pointer_expression "&iStack_10a8" & identifier) , (pointer_expression "&uStack_10ad" & identifier) )))) ;) (if_statement "if (iVar6 != 0) goto LAB_002850f4;" if (parenthesized_expression "(iVar6 != 0)" ( (binary_expression "iVar6 != 0" identifier != number_literal) )) (goto_statement "goto LAB_002850f4;" goto statement_identifier ;)) (if_statement "if (iVar7 == 1) {\n                uStack_10e4 = (**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar7 == 2) {\n                iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar7 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar7 == 0) {\n                iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                if (iVar6 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                }\n              }" if (parenthesized_expression "(iVar7 == 1)" ( (binary_expression "iVar7 == 1" identifier == number_literal) )) (compound_statement "{\n                uStack_10e4 = (**(code **)(puVar31 + 0x175a28))(iVar19,0,10);\n              }" { (expression_statement "uStack_10e4 = (**(code **)(puVar31 + 0x175a28))(iVar19,0,10);" (assignment_expression "uStack_10e4 = (**(code **)(puVar31 + 0x175a28))(iVar19,0,10)" identifier = (call_expression "(**(code **)(puVar31 + 0x175a28))(iVar19,0,10)" (parenthesized_expression "(**(code **)(puVar31 + 0x175a28))" ( (pointer_expression "**(code **)(puVar31 + 0x175a28)" * (pointer_expression "*(code **)(puVar31 + 0x175a28)" * (cast_expression "(code **)(puVar31 + 0x175a28)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175a28)" ( (binary_expression "puVar31 + 0x175a28" identifier + number_literal) ))))) )) (argument_list "(iVar19,0,10)" ( identifier , number_literal , number_literal )))) ;) }) (else_clause "else if (iVar7 == 2) {\n                iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar7 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar7 == 0) {\n                iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                if (iVar6 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                }\n              }" else (if_statement "if (iVar7 == 2) {\n                iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar7 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar7 == 0) {\n                iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                if (iVar6 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                }\n              }" if (parenthesized_expression "(iVar7 == 2)" ( (binary_expression "iVar7 == 2" identifier == number_literal) )) (compound_statement "{\n                iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar7 = 3;\n                  goto LAB_00284ff4;\n                }\n              }" { (expression_statement "iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19);" (assignment_expression "iVar6 = (**(code **)(puVar31 + 0x175a20))(iVar19)" identifier = (call_expression "(**(code **)(puVar31 + 0x175a20))(iVar19)" (parenthesized_expression "(**(code **)(puVar31 + 0x175a20))" ( (pointer_expression "**(code **)(puVar31 + 0x175a20)" * (pointer_expression "*(code **)(puVar31 + 0x175a20)" * (cast_expression "(code **)(puVar31 + 0x175a20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175a20)" ( (binary_expression "puVar31 + 0x175a20" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier )))) ;) (expression_statement "puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1);" (assignment_expression "puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1)" identifier = (cast_expression "(undefined1 *)(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar31 + 0x175bf4))(iVar6 + 0x1000,1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf4)" * (pointer_expression "*(code **)(puVar31 + 0x175bf4)" * (cast_expression "(code **)(puVar31 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf4)" ( (binary_expression "puVar31 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(iVar6 + 0x1000,1)" ( (binary_expression "iVar6 + 0x1000" identifier + number_literal) , number_literal ))))) ;) (if_statement "if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar31 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar7 = 3;\n                  goto LAB_00284ff4;\n                }" if (parenthesized_expression "(puStack_10dc != (undefined1 *)0x0)" ( (binary_expression "puStack_10dc != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  (**(code **)(puVar31 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar7 = 3;\n                  goto LAB_00284ff4;\n                }" { (expression_statement "(**(code **)(puVar31 + 0x17595c))(puStack_10dc,iVar19);" (call_expression "(**(code **)(puVar31 + 0x17595c))(puStack_10dc,iVar19)" (parenthesized_expression "(**(code **)(puVar31 + 0x17595c))" ( (pointer_expression "**(code **)(puVar31 + 0x17595c)" * (pointer_expression "*(code **)(puVar31 + 0x17595c)" * (cast_expression "(code **)(puVar31 + 0x17595c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x17595c)" ( (binary_expression "puVar31 + 0x17595c" identifier + number_literal) ))))) )) (argument_list "(puStack_10dc,iVar19)" ( identifier , identifier ))) ;) (expression_statement "iVar7 = 3;" (assignment_expression "iVar7 = 3" identifier = number_literal) ;) (goto_statement "goto LAB_00284ff4;" goto statement_identifier ;) })) }) (else_clause "else if (iVar7 == 0) {\n                iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                if (iVar6 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                }\n              }" else (if_statement "if (iVar7 == 0) {\n                iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                if (iVar6 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                }\n              }" if (parenthesized_expression "(iVar7 == 0)" ( (binary_expression "iVar7 == 0" identifier == number_literal) )) (compound_statement "{\n                iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);\n                if (iVar6 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                }\n              }" { (expression_statement "iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890);" (assignment_expression "iVar6 = (**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890)" identifier = (call_expression "(**(code **)(puVar31 + 0x1753e4))(iVar19,iVar29 + 0x7890)" (parenthesized_expression "(**(code **)(puVar31 + 0x1753e4))" ( (pointer_expression "**(code **)(puVar31 + 0x1753e4)" * (pointer_expression "*(code **)(puVar31 + 0x1753e4)" * (cast_expression "(code **)(puVar31 + 0x1753e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1753e4)" ( (binary_expression "puVar31 + 0x1753e4" identifier + number_literal) ))))) )) (argument_list "(iVar19,iVar29 + 0x7890)" ( identifier , (binary_expression "iVar29 + 0x7890" identifier + number_literal) )))) ;) (if_statement "if (iVar6 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                }" if (parenthesized_expression "(iVar6 == 0)" ( (binary_expression "iVar6 == 0" identifier == number_literal) )) (compound_statement "{\n                  cVar17 = -1;\n                }" { (expression_statement "cVar17 = -1;" (assignment_expression "cVar17 = -1" identifier = number_literal) ;) }) (else_clause "else {\n                  cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                }" else (compound_statement "{\n                  cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);\n                }" { (expression_statement "cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10);" (assignment_expression "cVar17 = (**(code **)(puVar31 + 0x175c34))(iVar19,0,10)" identifier = (call_expression "(**(code **)(puVar31 + 0x175c34))(iVar19,0,10)" (parenthesized_expression "(**(code **)(puVar31 + 0x175c34))" ( (pointer_expression "**(code **)(puVar31 + 0x175c34)" * (pointer_expression "*(code **)(puVar31 + 0x175c34)" * (cast_expression "(code **)(puVar31 + 0x175c34)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175c34)" ( (binary_expression "puVar31 + 0x175c34" identifier + number_literal) ))))) )) (argument_list "(iVar19,0,10)" ( identifier , number_literal , number_literal )))) ;) }))) })))))) (expression_statement "iVar7 = iVar7 + 1;" (assignment_expression "iVar7 = iVar7 + 1" identifier = (binary_expression "iVar7 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "( true )" ( true )) ;)) })) (if_statement "if (iVar9 != 1) goto LAB_002850f4;" if (parenthesized_expression "(iVar9 != 1)" ( (binary_expression "iVar9 != 1" identifier != number_literal) )) (goto_statement "goto LAB_002850f4;" goto statement_identifier ;)) (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (expression_statement "uVar12 = (**(code **)(puVar31 + 0x175a20))();" (assignment_expression "uVar12 = (**(code **)(puVar31 + 0x175a20))()" identifier = (call_expression "(**(code **)(puVar31 + 0x175a20))()" (parenthesized_expression "(**(code **)(puVar31 + 0x175a20))" ( (pointer_expression "**(code **)(puVar31 + 0x175a20)" * (pointer_expression "*(code **)(puVar31 + 0x175a20)" * (cast_expression "(code **)(puVar31 + 0x175a20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175a20)" ( (binary_expression "puVar31 + 0x175a20" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (while_statement "while (iVar7 = (**(code **)(puVar31 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar7) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar7;\n              }\n            }\n          }" while (parenthesized_expression "(iVar7 = (**(code **)(puVar31 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0)" ( (comma_expression "iVar7 = (**(code **)(puVar31 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar7 == 0" (assignment_expression "iVar7 = (**(code **)(puVar31 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" identifier = (call_expression "(**(code **)(puVar31 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" (parenthesized_expression "(**(code **)(puVar31 + 0x175720))" ( (pointer_expression "**(code **)(puVar31 + 0x175720)" * (pointer_expression "*(code **)(puVar31 + 0x175720)" * (cast_expression "(code **)(puVar31 + 0x175720)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175720)" ( (binary_expression "puVar31 + 0x175720" identifier + number_literal) ))))) )) (argument_list "(uVar15,0,iVar19,iStack_10cc,iVar26,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" ( identifier , number_literal , identifier , identifier , identifier , identifier , (binary_expression "iVar14 + -0x3bc" identifier + number_literal) , identifier , number_literal , (pointer_expression "&cStack_10ae" & identifier) , (pointer_expression "&iStack_10a8" & identifier) , (pointer_expression "&uStack_10ad" & identifier) )))) , (binary_expression "iVar7 == 0" identifier == number_literal)) )) (compound_statement "{\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar7) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar7;\n              }\n            }\n          }" { (if_statement "if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar7) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar7;\n              }\n            }" if (parenthesized_expression "((cStack_10ae != '\0') && (0 < iStack_10a8))" ( (binary_expression "(cStack_10ae != '\0') && (0 < iStack_10a8)" (parenthesized_expression "(cStack_10ae != '\0')" ( (binary_expression "cStack_10ae != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(0 < iStack_10a8)" ( (binary_expression "0 < iStack_10a8" number_literal < identifier) ))) )) (compound_statement "{\n              iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar7) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar7;\n              }\n            }" { (expression_statement "iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1);" (assignment_expression "iVar7 = (*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1)" identifier = (call_expression "(*(code *)(iVar22 + 0x458c))(iVar26 + iStack_10a8 + -1)" (parenthesized_expression "(*(code *)(iVar22 + 0x458c))" ( (pointer_expression "*(code *)(iVar22 + 0x458c)" * (cast_expression "(code *)(iVar22 + 0x458c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar22 + 0x458c)" ( (binary_expression "iVar22 + 0x458c" identifier + number_literal) )))) )) (argument_list "(iVar26 + iStack_10a8 + -1)" ( (binary_expression "iVar26 + iStack_10a8 + -1" (binary_expression "iVar26 + iStack_10a8" identifier + identifier) + number_literal) )))) ;) (if_statement "if ((int)uVar12 < iVar7) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar7;\n              }" if (parenthesized_expression "((int)uVar12 < iVar7)" ( (binary_expression "(int)uVar12 < iVar7" (cast_expression "(int)uVar12" ( (type_descriptor "int" primitive_type) ) identifier) < identifier) )) (compound_statement "{\n                uVar12 = 0;\n              }" { (expression_statement "uVar12 = 0;" (assignment_expression "uVar12 = 0" identifier = number_literal) ;) }) (else_clause "else {\n                uVar12 = uVar12 - iVar7;\n              }" else (compound_statement "{\n                uVar12 = uVar12 - iVar7;\n              }" { (expression_statement "uVar12 = uVar12 - iVar7;" (assignment_expression "uVar12 = uVar12 - iVar7" identifier = (binary_expression "uVar12 - iVar7" identifier - identifier)) ;) }))) })) })) (if_statement "if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }\n              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar31 + 0x1759bc))(iVar3);\n              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar31 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              iVar7 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              iVar7 = iVar7 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n              uVar30 = (uint)bVar18;\n              if (uVar30 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar30);\n              }\n              iVar7 = uStack_10d4 + 7 + uVar30;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n              if (iVar8 < 0) goto LAB_0028544c;\n              (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar7 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar7 + 4;\n              iVar7 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar9 = iVar9 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar7 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n              iVar7 = iVar7 + -1;\n            } while (iVar7 != -1);\n            iVar9 = 2;\n          }" if (parenthesized_expression "(cVar17 == -1)" ( (binary_expression "cVar17 == -1" identifier == number_literal) )) (compound_statement "{\n            if (0 < (int)uStack_10c8) {\n              iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }\n              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar31 + 0x1759bc))(iVar3);\n              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar31 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              iVar7 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              iVar7 = iVar7 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n              uVar30 = (uint)bVar18;\n              if (uVar30 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar30);\n              }\n              iVar7 = uStack_10d4 + 7 + uVar30;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n              if (iVar8 < 0) goto LAB_0028544c;\n              (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar7 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar7 + 4;\n              iVar7 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar9 = iVar9 + 1;\n          }" { (if_statement "if (0 < (int)uStack_10c8) {\n              iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }\n              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar31 + 0x1759bc))(iVar3);\n              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }" if (parenthesized_expression "(0 < (int)uStack_10c8)" ( (binary_expression "0 < (int)uStack_10c8" number_literal < (cast_expression "(int)uStack_10c8" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n              iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }\n              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar31 + 0x1759bc))(iVar3);\n              iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n              if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }" { (expression_statement "iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3);" (assignment_expression "iVar7 = (**(code **)(puVar31 + 0x175a04))(iVar3)" identifier = (call_expression "(**(code **)(puVar31 + 0x175a04))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x175a04))" ( (pointer_expression "**(code **)(puVar31 + 0x175a04)" * (pointer_expression "*(code **)(puVar31 + 0x175a04)" * (cast_expression "(code **)(puVar31 + 0x175a04)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175a04)" ( (binary_expression "puVar31 + 0x175a04" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }" if (parenthesized_expression "(iVar7 < 0)" ( (binary_expression "iVar7 < 0" identifier < number_literal) )) (compound_statement "{\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }" { (expression_statement "(**(code **)(puVar31 + 0x17575c))(puVar5);" (call_expression "(**(code **)(puVar31 + 0x17575c))(puVar5)" (parenthesized_expression "(**(code **)(puVar31 + 0x17575c))" ( (pointer_expression "**(code **)(puVar31 + 0x17575c)" * (pointer_expression "*(code **)(puVar31 + 0x17575c)" * (cast_expression "(code **)(puVar31 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x17575c)" ( (binary_expression "puVar31 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(puVar5)" ( identifier ))) ;) (goto_statement "goto LAB_0028544c;" goto statement_identifier ;) })) (expression_statement "iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);" (assignment_expression "iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3)" identifier = (call_expression "(**(code **)(puVar31 + 0x175a10))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x175a10))" ( (pointer_expression "**(code **)(puVar31 + 0x175a10)" * (pointer_expression "*(code **)(puVar31 + 0x175a10)" * (cast_expression "(code **)(puVar31 + 0x175a10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175a10)" ( (binary_expression "puVar31 + 0x175a10" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }" if (parenthesized_expression "(iVar7 < 0)" ( (binary_expression "iVar7 < 0" identifier < number_literal) )) (compound_statement "{\n                (**(code **)(puVar31 + 0x17575c))(puVar5,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }" { (expression_statement "(**(code **)(puVar31 + 0x17575c))(puVar5,uStack_10d4 - uStack_10c8);" (call_expression "(**(code **)(puVar31 + 0x17575c))(puVar5,uStack_10d4 - uStack_10c8)" (parenthesized_expression "(**(code **)(puVar31 + 0x17575c))" ( (pointer_expression "**(code **)(puVar31 + 0x17575c)" * (pointer_expression "*(code **)(puVar31 + 0x17575c)" * (cast_expression "(code **)(puVar31 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x17575c)" ( (binary_expression "puVar31 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(puVar5,uStack_10d4 - uStack_10c8)" ( identifier , (binary_expression "uStack_10d4 - uStack_10c8" identifier - identifier) ))) ;) (goto_statement "goto LAB_0028544c;" goto statement_identifier ;) })) (expression_statement "(**(code **)(puVar31 + 0x1759bc))(iVar3);" (call_expression "(**(code **)(puVar31 + 0x1759bc))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x1759bc))" ( (pointer_expression "**(code **)(puVar31 + 0x1759bc)" * (pointer_expression "*(code **)(puVar31 + 0x1759bc)" * (cast_expression "(code **)(puVar31 + 0x1759bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1759bc)" ( (binary_expression "puVar31 + 0x1759bc" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3);" (assignment_expression "iVar7 = (**(code **)(puVar31 + 0x175a10))(iVar3)" identifier = (call_expression "(**(code **)(puVar31 + 0x175a10))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x175a10))" ( (pointer_expression "**(code **)(puVar31 + 0x175a10)" * (pointer_expression "*(code **)(puVar31 + 0x175a10)" * (cast_expression "(code **)(puVar31 + 0x175a10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175a10)" ( (binary_expression "puVar31 + 0x175a10" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if (iVar7 < 0) {\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }" if (parenthesized_expression "(iVar7 < 0)" ( (binary_expression "iVar7 < 0" identifier < number_literal) )) (compound_statement "{\n                (**(code **)(puVar31 + 0x17575c))(puVar5);\n                goto LAB_0028544c;\n              }" { (expression_statement "(**(code **)(puVar31 + 0x17575c))(puVar5);" (call_expression "(**(code **)(puVar31 + 0x17575c))(puVar5)" (parenthesized_expression "(**(code **)(puVar31 + 0x17575c))" ( (pointer_expression "**(code **)(puVar31 + 0x17575c)" * (pointer_expression "*(code **)(puVar31 + 0x17575c)" * (cast_expression "(code **)(puVar31 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x17575c)" ( (binary_expression "puVar31 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(puVar5)" ( identifier ))) ;) (goto_statement "goto LAB_0028544c;" goto statement_identifier ;) })) (expression_statement "uStack_10c8 = 0;" (assignment_expression "uStack_10c8 = 0" identifier = number_literal) ;) })) (if_statement "if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }" if (parenthesized_expression "((uStack_10d4 & 1) != 0)" ( (binary_expression "(uStack_10d4 & 1) != 0" (parenthesized_expression "(uStack_10d4 & 1)" ( (binary_expression "uStack_10d4 & 1" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }" { (expression_statement "(**(code **)(puVar31 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar31 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar31 + 0x1756c4)" * (pointer_expression "*(code **)(puVar31 + 0x1756c4)" * (cast_expression "(code **)(puVar31 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756c4)" ( (binary_expression "puVar31 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0)" ( identifier , number_literal ))) ;) (expression_statement "uStack_10d4 = uStack_10d4 + 1;" (assignment_expression "uStack_10d4 = uStack_10d4 + 1" identifier = (binary_expression "uStack_10d4 + 1" identifier + number_literal)) ;) })) (expression_statement "(**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890);" (call_expression "(**(code **)(puVar31 + 0x175c90))(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890)" (parenthesized_expression "(**(code **)(puVar31 + 0x175c90))" ( (pointer_expression "**(code **)(puVar31 + 0x175c90)" * (pointer_expression "*(code **)(puVar31 + 0x175c90)" * (cast_expression "(code **)(puVar31 + 0x175c90)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175c90)" ( (binary_expression "puVar31 + 0x175c90" identifier + number_literal) ))))) )) (argument_list "(iVar3,*(int *)(puVar31 + 0x174fb0) + 0x7890)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x7890" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175970))(iVar3,uStack_10e4 & 0xffff);" (call_expression "(**(code **)(puVar31 + 0x175970))(iVar3,uStack_10e4 & 0xffff)" (parenthesized_expression "(**(code **)(puVar31 + 0x175970))" ( (pointer_expression "**(code **)(puVar31 + 0x175970)" * (pointer_expression "*(code **)(puVar31 + 0x175970)" * (cast_expression "(code **)(puVar31 + 0x175970)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175970)" ( (binary_expression "puVar31 + 0x175970" identifier + number_literal) ))))) )) (argument_list "(iVar3,uStack_10e4 & 0xffff)" ( identifier , (binary_expression "uStack_10e4 & 0xffff" identifier & number_literal) ))) ;) (if_statement "if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              iVar7 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              iVar7 = iVar7 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n              uVar30 = (uint)bVar18;\n              if (uVar30 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar30);\n              }\n              iVar7 = uStack_10d4 + 7 + uVar30;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }" if (parenthesized_expression "(puStack_10dc == (undefined1 *)0x0)" ( (binary_expression "puStack_10dc == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              iVar7 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n              iVar7 = iVar7 + 1;\n            }" { (expression_statement "(**(code **)(puVar31 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar31 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar31 + 0x1756c4)" * (pointer_expression "*(code **)(puVar31 + 0x1756c4)" * (cast_expression "(code **)(puVar31 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756c4)" ( (binary_expression "puVar31 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0)" ( identifier , number_literal ))) ;) (expression_statement "iVar7 = uStack_10d4 + 7;" (assignment_expression "iVar7 = uStack_10d4 + 7" identifier = (binary_expression "uStack_10d4 + 7" identifier + number_literal)) ;) (labeled_statement "LAB_00287988:\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,0);" statement_identifier : (expression_statement "(**(code **)(puVar31 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar31 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar31 + 0x1756c4)" * (pointer_expression "*(code **)(puVar31 + 0x1756c4)" * (cast_expression "(code **)(puVar31 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756c4)" ( (binary_expression "puVar31 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0)" ( identifier , number_literal ))) ;)) (expression_statement "iVar7 = iVar7 + 1;" (assignment_expression "iVar7 = iVar7 + 1" identifier = (binary_expression "iVar7 + 1" identifier + number_literal)) ;) }) (else_clause "else {\n              bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n              uVar30 = (uint)bVar18;\n              if (uVar30 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar30);\n              }\n              iVar7 = uStack_10d4 + 7 + uVar30;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }" else (compound_statement "{\n              bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);\n              uVar30 = (uint)bVar18;\n              if (uVar30 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar30);\n              }\n              iVar7 = uStack_10d4 + 7 + uVar30;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }" { (expression_statement "bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10dc);" (assignment_expression "bVar18 = (**(code **)(puVar31 + 0x175a20))(puStack_10dc)" identifier = (call_expression "(**(code **)(puVar31 + 0x175a20))(puStack_10dc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175a20))" ( (pointer_expression "**(code **)(puVar31 + 0x175a20)" * (pointer_expression "*(code **)(puVar31 + 0x175a20)" * (cast_expression "(code **)(puVar31 + 0x175a20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175a20)" ( (binary_expression "puVar31 + 0x175a20" identifier + number_literal) ))))) )) (argument_list "(puStack_10dc)" ( identifier )))) ;) (expression_statement "(**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18);" (call_expression "(**(code **)(puVar31 + 0x1756c4))(iVar3,bVar18)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar31 + 0x1756c4)" * (pointer_expression "*(code **)(puVar31 + 0x1756c4)" * (cast_expression "(code **)(puVar31 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756c4)" ( (binary_expression "puVar31 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,bVar18)" ( identifier , identifier ))) ;) (expression_statement "uVar30 = (uint)bVar18;" (assignment_expression "uVar30 = (uint)bVar18" identifier = (cast_expression "(uint)bVar18" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (uVar30 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar30);\n              }" if (parenthesized_expression "(uVar30 != 0)" ( (binary_expression "uVar30 != 0" identifier != number_literal) )) (compound_statement "{\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar30);\n              }" { (expression_statement "puVar21 = puStack_10dc;" (assignment_expression "puVar21 = puStack_10dc" identifier = identifier) ;) (do_statement "do {\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar30);" do (compound_statement "{\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                }" { (expression_statement "(**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);" (call_expression "(**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar31 + 0x1756c4)" * (pointer_expression "*(code **)(puVar31 + 0x1756c4)" * (cast_expression "(code **)(puVar31 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756c4)" ( (binary_expression "puVar31 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,*puVar21)" ( identifier , (pointer_expression "*puVar21" * identifier) ))) ;) (expression_statement "puVar21 = puVar21 + 1;" (assignment_expression "puVar21 = puVar21 + 1" identifier = (binary_expression "puVar21 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(puVar21 != puStack_10dc + uVar30)" ( (binary_expression "puVar21 != puStack_10dc + uVar30" identifier != (binary_expression "puStack_10dc + uVar30" identifier + identifier)) )) ;) })) (expression_statement "iVar7 = uStack_10d4 + 7 + uVar30;" (assignment_expression "iVar7 = uStack_10d4 + 7 + uVar30" identifier = (binary_expression "uStack_10d4 + 7 + uVar30" (binary_expression "uStack_10d4 + 7" identifier + number_literal) + identifier)) ;) (if_statement "if ((bVar18 & 1) == 0) goto LAB_00287988;" if (parenthesized_expression "((bVar18 & 1) == 0)" ( (binary_expression "(bVar18 & 1) == 0" (parenthesized_expression "(bVar18 & 1)" ( (binary_expression "bVar18 & 1" identifier & number_literal) )) == number_literal) )) (goto_statement "goto LAB_00287988;" goto statement_identifier ;)) }))) (if_statement "if (uStack_10e4 == 0x404) {\n              iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n              if (iVar8 < 0) goto LAB_0028544c;\n              (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar7 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar7 + 4;\n              iVar7 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }" if (parenthesized_expression "(uStack_10e4 == 0x404)" ( (binary_expression "uStack_10e4 == 0x404" identifier == number_literal) )) (compound_statement "{\n              iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n              if (iVar8 < 0) goto LAB_0028544c;\n              (**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar7 + 4;\n              uStack_10c8 = uStack_10d4;\n            }" { (expression_statement "iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3);" (assignment_expression "iVar8 = (**(code **)(puVar31 + 0x175a04))(iVar3)" identifier = (call_expression "(**(code **)(puVar31 + 0x175a04))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x175a04))" ( (pointer_expression "**(code **)(puVar31 + 0x175a04)" * (pointer_expression "*(code **)(puVar31 + 0x175a04)" * (cast_expression "(code **)(puVar31 + 0x175a04)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175a04)" ( (binary_expression "puVar31 + 0x175a04" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if (iVar8 < 0) goto LAB_0028544c;" if (parenthesized_expression "(iVar8 < 0)" ( (binary_expression "iVar8 < 0" identifier < number_literal) )) (goto_statement "goto LAB_0028544c;" goto statement_identifier ;)) (expression_statement "(**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff);" (call_expression "(**(code **)(puVar31 + 0x1759bc))(iVar3,0xffffffff)" (parenthesized_expression "(**(code **)(puVar31 + 0x1759bc))" ( (pointer_expression "**(code **)(puVar31 + 0x1759bc)" * (pointer_expression "*(code **)(puVar31 + 0x1759bc)" * (cast_expression "(code **)(puVar31 + 0x1759bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1759bc)" ( (binary_expression "puVar31 + 0x1759bc" identifier + number_literal) ))))) )) (argument_list "(iVar3,0xffffffff)" ( identifier , number_literal ))) ;) (expression_statement "uStack_10d4 = iVar7 + 4;" (assignment_expression "uStack_10d4 = iVar7 + 4" identifier = (binary_expression "iVar7 + 4" identifier + number_literal)) ;) (expression_statement "uStack_10c8 = uStack_10d4;" (assignment_expression "uStack_10c8 = uStack_10d4" identifier = identifier) ;) }) (else_clause "else {\n              (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar7 + 4;\n              iVar7 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }" else (compound_statement "{\n              (**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar7 + 4;\n              iVar7 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }" { (expression_statement "(**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12);" (call_expression "(**(code **)(puVar31 + 0x1759bc))(iVar3,uVar12)" (parenthesized_expression "(**(code **)(puVar31 + 0x1759bc))" ( (pointer_expression "**(code **)(puVar31 + 0x1759bc)" * (pointer_expression "*(code **)(puVar31 + 0x1759bc)" * (cast_expression "(code **)(puVar31 + 0x1759bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1759bc)" ( (binary_expression "puVar31 + 0x1759bc" identifier + number_literal) ))))) )) (argument_list "(iVar3,uVar12)" ( identifier , identifier ))) ;) (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (expression_statement "uStack_10d4 = uVar12 + iVar7 + 4;" (assignment_expression "uStack_10d4 = uVar12 + iVar7 + 4" identifier = (binary_expression "uVar12 + iVar7 + 4" (binary_expression "uVar12 + iVar7" identifier + identifier) + number_literal)) ;) (expression_statement "iVar7 = uVar12 - 1;" (assignment_expression "iVar7 = uVar12 - 1" identifier = (binary_expression "uVar12 - 1" identifier - number_literal)) ;) (if_statement "if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n              }" if (parenthesized_expression "(0 < (int)uVar12)" ( (binary_expression "0 < (int)uVar12" number_literal < (cast_expression "(int)uVar12" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);\n              }" { (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (do_statement "do {\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                } while (iVar7 != -1);" do (compound_statement "{\n                  puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n                  iVar7 = iVar7 + -1;\n                }" { (expression_statement "puVar21 = (undefined1 *)(iVar26 + iStack_10a8);" (assignment_expression "puVar21 = (undefined1 *)(iVar26 + iStack_10a8)" identifier = (cast_expression "(undefined1 *)(iVar26 + iStack_10a8)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar26 + iStack_10a8)" ( (binary_expression "iVar26 + iStack_10a8" identifier + identifier) )))) ;) (expression_statement "iStack_10a8 = iStack_10a8 + 1;" (assignment_expression "iStack_10a8 = iStack_10a8 + 1" identifier = (binary_expression "iStack_10a8 + 1" identifier + number_literal)) ;) (expression_statement "(**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);" (call_expression "(**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar31 + 0x1756c4)" * (pointer_expression "*(code **)(puVar31 + 0x1756c4)" * (cast_expression "(code **)(puVar31 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756c4)" ( (binary_expression "puVar31 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,*puVar21)" ( identifier , (pointer_expression "*puVar21" * identifier) ))) ;) (expression_statement "iVar7 = iVar7 + -1;" (assignment_expression "iVar7 = iVar7 + -1" identifier = (binary_expression "iVar7 + -1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar7 != -1)" ( (binary_expression "iVar7 != -1" identifier != number_literal) )) ;) })) (if_statement "if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }" if (parenthesized_expression "((uStack_10d4 & 1) != 0)" ( (binary_expression "(uStack_10d4 & 1) != 0" (parenthesized_expression "(uStack_10d4 & 1)" ( (binary_expression "uStack_10d4 & 1" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                (**(code **)(puVar31 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }" { (expression_statement "(**(code **)(puVar31 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar31 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar31 + 0x1756c4)" * (pointer_expression "*(code **)(puVar31 + 0x1756c4)" * (cast_expression "(code **)(puVar31 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756c4)" ( (binary_expression "puVar31 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0)" ( identifier , number_literal ))) ;) (expression_statement "uStack_10d4 = uStack_10d4 + 1;" (assignment_expression "uStack_10d4 = uStack_10d4 + 1" identifier = (binary_expression "uStack_10d4 + 1" identifier + number_literal)) ;) })) }))) (labeled_statement "LAB_002850f4:\n            iVar9 = iVar9 + 1;" statement_identifier : (expression_statement "iVar9 = iVar9 + 1;" (assignment_expression "iVar9 = iVar9 + 1" identifier = (binary_expression "iVar9 + 1" identifier + number_literal)) ;)) }) (else_clause "else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar7 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n              iVar7 = iVar7 + -1;\n            } while (iVar7 != -1);\n            iVar9 = 2;\n          }" else (compound_statement "{\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar31 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar7 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n              iVar7 = iVar7 + -1;\n            } while (iVar7 != -1);\n            iVar9 = 2;\n          }" { (if_statement "if (0x7fff < (int)uVar12) goto LAB_002850f4;" if (parenthesized_expression "(0x7fff < (int)uVar12)" ( (binary_expression "0x7fff < (int)uVar12" number_literal < (cast_expression "(int)uVar12" ( (type_descriptor "int" primitive_type) ) identifier)) )) (goto_statement "goto LAB_002850f4;" goto statement_identifier ;)) (expression_statement "(**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c);" (call_expression "(**(code **)(puVar31 + 0x1756c4))(iVar3,0x1c)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar31 + 0x1756c4)" * (pointer_expression "*(code **)(puVar31 + 0x1756c4)" * (cast_expression "(code **)(puVar31 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756c4)" ( (binary_expression "puVar31 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0x1c)" ( identifier , number_literal ))) ;) (expression_statement "(**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17);" (call_expression "(**(code **)(puVar31 + 0x1756c4))(iVar3,cVar17)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar31 + 0x1756c4)" * (pointer_expression "*(code **)(puVar31 + 0x1756c4)" * (cast_expression "(code **)(puVar31 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756c4)" ( (binary_expression "puVar31 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,cVar17)" ( identifier , identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);" (call_expression "(**(code **)(puVar31 + 0x1756c4))(iVar3,uStack_10e4 & 0xff)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar31 + 0x1756c4)" * (pointer_expression "*(code **)(puVar31 + 0x1756c4)" * (cast_expression "(code **)(puVar31 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756c4)" ( (binary_expression "puVar31 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,uStack_10e4 & 0xff)" ( identifier , (binary_expression "uStack_10e4 & 0xff" identifier & number_literal) ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff);" (call_expression "(**(code **)(puVar31 + 0x175970))(iVar3,uVar12 & 0xffff)" (parenthesized_expression "(**(code **)(puVar31 + 0x175970))" ( (pointer_expression "**(code **)(puVar31 + 0x175970)" * (pointer_expression "*(code **)(puVar31 + 0x175970)" * (cast_expression "(code **)(puVar31 + 0x175970)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175970)" ( (binary_expression "puVar31 + 0x175970" identifier + number_literal) ))))) )) (argument_list "(iVar3,uVar12 & 0xffff)" ( identifier , (binary_expression "uVar12 & 0xffff" identifier & number_literal) ))) ;) (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (expression_statement "uStack_10d4 = uVar12 + uStack_10d4 + 5;" (assignment_expression "uStack_10d4 = uVar12 + uStack_10d4 + 5" identifier = (binary_expression "uVar12 + uStack_10d4 + 5" (binary_expression "uVar12 + uStack_10d4" identifier + identifier) + number_literal)) ;) (expression_statement "iVar7 = uVar12 - 1;" (assignment_expression "iVar7 = uVar12 - 1" identifier = (binary_expression "uVar12 - 1" identifier - number_literal)) ;) (if_statement "if ((int)uVar12 < 1) goto LAB_002850f4;" if (parenthesized_expression "((int)uVar12 < 1)" ( (binary_expression "(int)uVar12 < 1" (cast_expression "(int)uVar12" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (goto_statement "goto LAB_002850f4;" goto statement_identifier ;)) (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (do_statement "do {\n              puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n              iVar7 = iVar7 + -1;\n            } while (iVar7 != -1);" do (compound_statement "{\n              puVar21 = (undefined1 *)(iVar26 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);\n              iVar7 = iVar7 + -1;\n            }" { (expression_statement "puVar21 = (undefined1 *)(iVar26 + iStack_10a8);" (assignment_expression "puVar21 = (undefined1 *)(iVar26 + iStack_10a8)" identifier = (cast_expression "(undefined1 *)(iVar26 + iStack_10a8)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar26 + iStack_10a8)" ( (binary_expression "iVar26 + iStack_10a8" identifier + identifier) )))) ;) (expression_statement "iStack_10a8 = iStack_10a8 + 1;" (assignment_expression "iStack_10a8 = iStack_10a8 + 1" identifier = (binary_expression "iStack_10a8 + 1" identifier + number_literal)) ;) (expression_statement "(**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21);" (call_expression "(**(code **)(puVar31 + 0x1756c4))(iVar3,*puVar21)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar31 + 0x1756c4)" * (pointer_expression "*(code **)(puVar31 + 0x1756c4)" * (cast_expression "(code **)(puVar31 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756c4)" ( (binary_expression "puVar31 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,*puVar21)" ( identifier , (pointer_expression "*puVar21" * identifier) ))) ;) (expression_statement "iVar7 = iVar7 + -1;" (assignment_expression "iVar7 = iVar7 + -1" identifier = (binary_expression "iVar7 + -1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar7 != -1)" ( (binary_expression "iVar7 != -1" identifier != number_literal) )) ;) (expression_statement "iVar9 = 2;" (assignment_expression "iVar9 = 2" identifier = number_literal) ;) }))) })) (expression_statement "iVar26 = (**(code **)(puVar31 + 0x17575c))(iVar26);" (assignment_expression "iVar26 = (**(code **)(puVar31 + 0x17575c))(iVar26)" identifier = (call_expression "(**(code **)(puVar31 + 0x17575c))(iVar26)" (parenthesized_expression "(**(code **)(puVar31 + 0x17575c))" ( (pointer_expression "**(code **)(puVar31 + 0x17575c)" * (pointer_expression "*(code **)(puVar31 + 0x17575c)" * (cast_expression "(code **)(puVar31 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x17575c)" ( (binary_expression "puVar31 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(iVar26)" ( identifier )))) ;) (expression_statement "iVar19 = (**(code **)(puVar31 + 0x17575c))(iVar19);" (assignment_expression "iVar19 = (**(code **)(puVar31 + 0x17575c))(iVar19)" identifier = (call_expression "(**(code **)(puVar31 + 0x17575c))(iVar19)" (parenthesized_expression "(**(code **)(puVar31 + 0x17575c))" ( (pointer_expression "**(code **)(puVar31 + 0x17575c)" * (pointer_expression "*(code **)(puVar31 + 0x17575c)" * (cast_expression "(code **)(puVar31 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x17575c)" ( (binary_expression "puVar31 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier )))) ;) (expression_statement "puVar21 = puVar5;" (assignment_expression "puVar21 = puVar5" identifier = identifier) ;) (if_statement "if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10dc);\n        }" if (parenthesized_expression "(puStack_10dc != (undefined1 *)0x0)" ( (binary_expression "puStack_10dc != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10dc);\n        }" { (expression_statement "puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10dc);" (assignment_expression "puStack_10dc = (undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10dc)" identifier = (cast_expression "(undefined1 *)(**(code **)(puVar31 + 0x17575c))(puStack_10dc)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar31 + 0x17575c))(puStack_10dc)" (parenthesized_expression "(**(code **)(puVar31 + 0x17575c))" ( (pointer_expression "**(code **)(puVar31 + 0x17575c)" * (pointer_expression "*(code **)(puVar31 + 0x17575c)" * (cast_expression "(code **)(puVar31 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x17575c)" ( (binary_expression "puVar31 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(puStack_10dc)" ( identifier ))))) ;) })) })) (labeled_statement "LAB_0028573c:\n      (**(code **)(puVar31 + 0x175450))(uVar15);" statement_identifier : (expression_statement "(**(code **)(puVar31 + 0x175450))(uVar15);" (call_expression "(**(code **)(puVar31 + 0x175450))(uVar15)" (parenthesized_expression "(**(code **)(puVar31 + 0x175450))" ( (pointer_expression "**(code **)(puVar31 + 0x175450)" * (pointer_expression "*(code **)(puVar31 + 0x175450)" * (cast_expression "(code **)(puVar31 + 0x175450)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175450)" ( (binary_expression "puVar31 + 0x175450" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;)) (if_statement "if (iVar26 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar31 + 0x17575c))(iVar26);\n      }" if (parenthesized_expression "(iVar26 != 0)" ( (binary_expression "iVar26 != 0" identifier != number_literal) )) (compound_statement "{\nLAB_002879c4:\n        (**(code **)(puVar31 + 0x17575c))(iVar26);\n      }" { (labeled_statement "LAB_002879c4:\n        (**(code **)(puVar31 + 0x17575c))(iVar26);" statement_identifier : (expression_statement "(**(code **)(puVar31 + 0x17575c))(iVar26);" (call_expression "(**(code **)(puVar31 + 0x17575c))(iVar26)" (parenthesized_expression "(**(code **)(puVar31 + 0x17575c))" ( (pointer_expression "**(code **)(puVar31 + 0x17575c)" * (pointer_expression "*(code **)(puVar31 + 0x17575c)" * (cast_expression "(code **)(puVar31 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x17575c)" ( (binary_expression "puVar31 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(iVar26)" ( identifier ))) ;)) })) (labeled_statement "LAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar31 + 0x17575c))(iVar19);\n      }" statement_identifier : (if_statement "if (iVar19 != 0) {\n        (**(code **)(puVar31 + 0x17575c))(iVar19);\n      }" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (compound_statement "{\n        (**(code **)(puVar31 + 0x17575c))(iVar19);\n      }" { (expression_statement "(**(code **)(puVar31 + 0x17575c))(iVar19);" (call_expression "(**(code **)(puVar31 + 0x17575c))(iVar19)" (parenthesized_expression "(**(code **)(puVar31 + 0x17575c))" ( (pointer_expression "**(code **)(puVar31 + 0x17575c)" * (pointer_expression "*(code **)(puVar31 + 0x17575c)" * (cast_expression "(code **)(puVar31 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x17575c)" ( (binary_expression "puVar31 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;) }))) (if_statement "if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar31 + 0x17575c))(puStack_10dc);\n      }" if (parenthesized_expression "(puStack_10dc != (undefined1 *)0x0)" ( (binary_expression "puStack_10dc != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        (**(code **)(puVar31 + 0x17575c))(puStack_10dc);\n      }" { (expression_statement "(**(code **)(puVar31 + 0x17575c))(puStack_10dc);" (call_expression "(**(code **)(puVar31 + 0x17575c))(puStack_10dc)" (parenthesized_expression "(**(code **)(puVar31 + 0x17575c))" ( (pointer_expression "**(code **)(puVar31 + 0x17575c)" * (pointer_expression "*(code **)(puVar31 + 0x17575c)" * (cast_expression "(code **)(puVar31 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x17575c)" ( (binary_expression "puVar31 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(puStack_10dc)" ( identifier ))) ;) })) (expression_statement "(**(code **)(puVar31 + 0x17575c))(puVar5);" (call_expression "(**(code **)(puVar31 + 0x17575c))(puVar5)" (parenthesized_expression "(**(code **)(puVar31 + 0x17575c))" ( (pointer_expression "**(code **)(puVar31 + 0x17575c)" * (pointer_expression "*(code **)(puVar31 + 0x17575c)" * (cast_expression "(code **)(puVar31 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x17575c)" ( (binary_expression "puVar31 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(puVar5)" ( identifier ))) ;) (if_statement "if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }" if (parenthesized_expression "(0 < (int)uStack_10c8)" ( (binary_expression "0 < (int)uStack_10c8" number_literal < (cast_expression "(int)uStack_10c8" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n        iVar19 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }" { (expression_statement "iVar19 = (**(code **)(puVar31 + 0x175a04))(iVar3);" (assignment_expression "iVar19 = (**(code **)(puVar31 + 0x175a04))(iVar3)" identifier = (call_expression "(**(code **)(puVar31 + 0x175a04))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x175a04))" ( (pointer_expression "**(code **)(puVar31 + 0x175a04)" * (pointer_expression "*(code **)(puVar31 + 0x175a04)" * (cast_expression "(code **)(puVar31 + 0x175a04)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175a04)" ( (binary_expression "puVar31 + 0x175a04" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }" if (parenthesized_expression "((-1 < iVar19) && (iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3), -1 < iVar19))" ( (binary_expression "(-1 < iVar19) && (iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3), -1 < iVar19)" (parenthesized_expression "(-1 < iVar19)" ( (binary_expression "-1 < iVar19" number_literal < identifier) )) && (parenthesized_expression "(iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3), -1 < iVar19)" ( (comma_expression "iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3), -1 < iVar19" (assignment_expression "iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3)" identifier = (call_expression "(**(code **)(puVar31 + 0x175a10))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x175a10))" ( (pointer_expression "**(code **)(puVar31 + 0x175a10)" * (pointer_expression "*(code **)(puVar31 + 0x175a10)" * (cast_expression "(code **)(puVar31 + 0x175a10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175a10)" ( (binary_expression "puVar31 + 0x175a10" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) , (binary_expression "-1 < iVar19" number_literal < identifier)) ))) )) (compound_statement "{\n          (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }" { (expression_statement "(**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);" (call_expression "(**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8)" (parenthesized_expression "(**(code **)(puVar31 + 0x1759bc))" ( (pointer_expression "**(code **)(puVar31 + 0x1759bc)" * (pointer_expression "*(code **)(puVar31 + 0x1759bc)" * (cast_expression "(code **)(puVar31 + 0x1759bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1759bc)" ( (binary_expression "puVar31 + 0x1759bc" identifier + number_literal) ))))) )) (argument_list "(iVar3,uStack_10d4 - uStack_10c8)" ( identifier , (binary_expression "uStack_10d4 - uStack_10c8" identifier - identifier) ))) ;) (expression_statement "iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3);" (assignment_expression "iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3)" identifier = (call_expression "(**(code **)(puVar31 + 0x175a10))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x175a10))" ( (pointer_expression "**(code **)(puVar31 + 0x175a10)" * (pointer_expression "*(code **)(puVar31 + 0x175a10)" * (cast_expression "(code **)(puVar31 + 0x175a10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175a10)" ( (binary_expression "puVar31 + 0x175a10" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if (-1 < iVar19) goto LAB_00287ab4;" if (parenthesized_expression "(-1 < iVar19)" ( (binary_expression "-1 < iVar19" number_literal < identifier) )) (goto_statement "goto LAB_00287ab4;" goto statement_identifier ;)) })) (goto_statement "goto LAB_0028544c;" goto statement_identifier ;) })) (labeled_statement "LAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar3);\n        (**(code **)(puVar31 + 0x175608))\n                  (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                   *(int *)(puVar31 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar31 + 0x174fb4) + 0x1854,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pIStack_10fc != (Image *)0x0) {\n          (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n          (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n          pIStack_10fc = (Image *)0x0;\n        }\n        goto LAB_00287858;\n      }" statement_identifier : (if_statement "if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar3);\n        (**(code **)(puVar31 + 0x175608))\n                  (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                   *(int *)(puVar31 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar31 + 0x174fb4) + 0x1854,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pIStack_10fc != (Image *)0x0) {\n          (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n          (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n          pIStack_10fc = (Image *)0x0;\n        }\n        goto LAB_00287858;\n      }" if (parenthesized_expression "(uStack_10d4 == 0)" ( (binary_expression "uStack_10d4 == 0" identifier == number_literal) )) (compound_statement "{\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar3);\n        (**(code **)(puVar31 + 0x175608))\n                  (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                   *(int *)(puVar31 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar31 + 0x174fb4) + 0x1854,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pIStack_10fc != (Image *)0x0) {\n          (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n          (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n          pIStack_10fc = (Image *)0x0;\n        }\n        goto LAB_00287858;\n      }" { (expression_statement "uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" identifier = (call_expression "(**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar31 + 0x175e54))" ( (pointer_expression "**(code **)(puVar31 + 0x175e54)" * (pointer_expression "*(code **)(puVar31 + 0x175e54)" * (cast_expression "(code **)(puVar31 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175e54)" ( (binary_expression "puVar31 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar31 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar31 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar31 + 0x1756a8)" * (pointer_expression "*(code **)(puVar31 + 0x1756a8)" * (cast_expression "(code **)(puVar31 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756a8)" ( (binary_expression "puVar31 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar31 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x175634))" ( (pointer_expression "**(code **)(puVar31 + 0x175634)" * (pointer_expression "*(code **)(puVar31 + 0x175634)" * (cast_expression "(code **)(puVar31 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175634)" ( (binary_expression "puVar31 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175608))\n                  (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                   *(int *)(puVar31 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar31 + 0x174fb4) + 0x1854,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);" (call_expression "(**(code **)(puVar31 + 0x175608))\n                  (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                   *(int *)(puVar31 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar31 + 0x174fb4) + 0x1854,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar31 + 0x175608))" ( (pointer_expression "**(code **)(puVar31 + 0x175608)" * (pointer_expression "*(code **)(puVar31 + 0x175608)" * (cast_expression "(code **)(puVar31 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175608)" ( (binary_expression "puVar31 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                   *(int *)(puVar31 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar31 + 0x174fb4) + 0x1854,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar31 + 0x174fb4) + 0x1854" (pointer_expression "*(int *)(puVar31 + 0x174fb4)" * (cast_expression "(int *)(puVar31 + 0x174fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb4)" ( (binary_expression "puVar31 + 0x174fb4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pIStack_10fc != (Image *)0x0) {\n          (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n          (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n          pIStack_10fc = (Image *)0x0;\n        }" if (parenthesized_expression "(pIStack_10fc != (Image *)0x0)" ( (binary_expression "pIStack_10fc != (Image *)0x0" identifier != (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n          (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n          pIStack_10fc = (Image *)0x0;\n        }" { (expression_statement "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175d70))" ( (pointer_expression "**(code **)(puVar31 + 0x175d70)" * (pointer_expression "*(code **)(puVar31 + 0x175d70)" * (cast_expression "(code **)(puVar31 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175d70)" ( (binary_expression "puVar31 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf8)" * (pointer_expression "*(code **)(puVar31 + 0x175bf8)" * (cast_expression "(code **)(puVar31 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf8)" ( (binary_expression "puVar31 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "pIStack_10fc = (Image *)0x0;" (assignment_expression "pIStack_10fc = (Image *)0x0" identifier = (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) }))) (if_statement "if ((uStack_10d4 & 1) == 0) goto LAB_00286050;" if (parenthesized_expression "((uStack_10d4 & 1) == 0)" ( (binary_expression "(uStack_10d4 & 1) == 0" (parenthesized_expression "(uStack_10d4 & 1)" ( (binary_expression "uStack_10d4 & 1" identifier & number_literal) )) == number_literal) )) (goto_statement "goto LAB_00286050;" goto statement_identifier ;)) }))) (expression_statement "(**(code **)(puVar31 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar31 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar31 + 0x1756c4)" * (pointer_expression "*(code **)(puVar31 + 0x1756c4)" * (cast_expression "(code **)(puVar31 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756c4)" ( (binary_expression "puVar31 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0)" ( identifier , number_literal ))) ;) (goto_statement "goto LAB_00286050;" goto statement_identifier ;) })) (expression_statement "uStack_10d4 = 1;" (assignment_expression "uStack_10d4 = 1" identifier = number_literal) ;) (goto_statement "goto LAB_00284a7c;" goto statement_identifier ;) (labeled_statement "LAB_00286038:\n  (**(code **)(puVar31 + 0x1756a8))(iVar19);" statement_identifier : (expression_statement "(**(code **)(puVar31 + 0x1756a8))(iVar19);" (call_expression "(**(code **)(puVar31 + 0x1756a8))(iVar19)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar31 + 0x1756a8)" * (pointer_expression "*(code **)(puVar31 + 0x1756a8)" * (cast_expression "(code **)(puVar31 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756a8)" ( (binary_expression "puVar31 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;)) (expression_statement "uStack_10d4 = 1;" (assignment_expression "uStack_10d4 = 1" identifier = number_literal) ;) (goto_statement "goto LAB_00286050;" goto statement_identifier ;) (labeled_statement "LAB_00285f24:\n  (**(code **)(puVar31 + 0x175450))(uVar15);" statement_identifier : (expression_statement "(**(code **)(puVar31 + 0x175450))(uVar15);" (call_expression "(**(code **)(puVar31 + 0x175450))(uVar15)" (parenthesized_expression "(**(code **)(puVar31 + 0x175450))" ( (pointer_expression "**(code **)(puVar31 + 0x175450)" * (pointer_expression "*(code **)(puVar31 + 0x175450)" * (cast_expression "(code **)(puVar31 + 0x175450)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175450)" ( (binary_expression "puVar31 + 0x175450" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;)) (if_statement "if (iVar26 != 0) {\nLAB_00287be8:\n    (**(code **)(puVar31 + 0x17575c))(iVar26);\n  }" if (parenthesized_expression "(iVar26 != 0)" ( (binary_expression "iVar26 != 0" identifier != number_literal) )) (compound_statement "{\nLAB_00287be8:\n    (**(code **)(puVar31 + 0x17575c))(iVar26);\n  }" { (labeled_statement "LAB_00287be8:\n    (**(code **)(puVar31 + 0x17575c))(iVar26);" statement_identifier : (expression_statement "(**(code **)(puVar31 + 0x17575c))(iVar26);" (call_expression "(**(code **)(puVar31 + 0x17575c))(iVar26)" (parenthesized_expression "(**(code **)(puVar31 + 0x17575c))" ( (pointer_expression "**(code **)(puVar31 + 0x17575c)" * (pointer_expression "*(code **)(puVar31 + 0x17575c)" * (cast_expression "(code **)(puVar31 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x17575c)" ( (binary_expression "puVar31 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(iVar26)" ( identifier ))) ;)) })) (labeled_statement "LAB_00287bf8:\n  if (iVar19 != 0) {\n    (**(code **)(puVar31 + 0x17575c))(iVar19);\n  }" statement_identifier : (if_statement "if (iVar19 != 0) {\n    (**(code **)(puVar31 + 0x17575c))(iVar19);\n  }" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (compound_statement "{\n    (**(code **)(puVar31 + 0x17575c))(iVar19);\n  }" { (expression_statement "(**(code **)(puVar31 + 0x17575c))(iVar19);" (call_expression "(**(code **)(puVar31 + 0x17575c))(iVar19)" (parenthesized_expression "(**(code **)(puVar31 + 0x17575c))" ( (pointer_expression "**(code **)(puVar31 + 0x17575c)" * (pointer_expression "*(code **)(puVar31 + 0x17575c)" * (cast_expression "(code **)(puVar31 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x17575c)" ( (binary_expression "puVar31 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;) }))) (if_statement "if (puStack_10ec != (undefined1 *)0x0) {\n    (**(code **)(puVar31 + 0x17575c))(puStack_10ec);\n  }" if (parenthesized_expression "(puStack_10ec != (undefined1 *)0x0)" ( (binary_expression "puStack_10ec != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    (**(code **)(puVar31 + 0x17575c))(puStack_10ec);\n  }" { (expression_statement "(**(code **)(puVar31 + 0x17575c))(puStack_10ec);" (call_expression "(**(code **)(puVar31 + 0x17575c))(puStack_10ec)" (parenthesized_expression "(**(code **)(puVar31 + 0x17575c))" ( (pointer_expression "**(code **)(puVar31 + 0x17575c)" * (pointer_expression "*(code **)(puVar31 + 0x17575c)" * (cast_expression "(code **)(puVar31 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x17575c)" ( (binary_expression "puVar31 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(puStack_10ec)" ( identifier ))) ;) })) (expression_statement "(**(code **)(puVar31 + 0x17575c))(puVar5);" (call_expression "(**(code **)(puVar31 + 0x17575c))(puVar5)" (parenthesized_expression "(**(code **)(puVar31 + 0x17575c))" ( (pointer_expression "**(code **)(puVar31 + 0x17575c)" * (pointer_expression "*(code **)(puVar31 + 0x17575c)" * (cast_expression "(code **)(puVar31 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x17575c)" ( (binary_expression "puVar31 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(puVar5)" ( identifier ))) ;) (if_statement "if ((int)uStack_10c8 < 1) {\nLAB_00287cd8:\n    if (uStack_10d4 == 0) {\n      uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n      (**(code **)(puVar31 + 0x1756a8))(uVar15);\n      (**(code **)(puVar31 + 0x175634))(iVar3);\n      (**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x4e0,0x1a9,*(int *)(puVar31 + 0x174fb4) + 0x1854,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n      if (pIStack_10fc != (Image *)0x0) {\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n        pIStack_10fc = (Image *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n  }\n  else {\n    iVar19 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n    if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3), -1 < iVar19)) {\n      (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n      iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n      if (-1 < iVar19) goto LAB_00287cd8;\n    }\nLAB_00287db0:\n    uStack_10d4 = 0xffffffff;\n  }" if (parenthesized_expression "((int)uStack_10c8 < 1)" ( (binary_expression "(int)uStack_10c8 < 1" (cast_expression "(int)uStack_10c8" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\nLAB_00287cd8:\n    if (uStack_10d4 == 0) {\n      uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n      (**(code **)(puVar31 + 0x1756a8))(uVar15);\n      (**(code **)(puVar31 + 0x175634))(iVar3);\n      (**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x4e0,0x1a9,*(int *)(puVar31 + 0x174fb4) + 0x1854,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n      if (pIStack_10fc != (Image *)0x0) {\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n        pIStack_10fc = (Image *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n  }" { (labeled_statement "LAB_00287cd8:\n    if (uStack_10d4 == 0) {\n      uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n      (**(code **)(puVar31 + 0x1756a8))(uVar15);\n      (**(code **)(puVar31 + 0x175634))(iVar3);\n      (**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x4e0,0x1a9,*(int *)(puVar31 + 0x174fb4) + 0x1854,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n      if (pIStack_10fc != (Image *)0x0) {\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n        pIStack_10fc = (Image *)0x0;\n      }\n      goto LAB_00287858;\n    }" statement_identifier : (if_statement "if (uStack_10d4 == 0) {\n      uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n      (**(code **)(puVar31 + 0x1756a8))(uVar15);\n      (**(code **)(puVar31 + 0x175634))(iVar3);\n      (**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x4e0,0x1a9,*(int *)(puVar31 + 0x174fb4) + 0x1854,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n      if (pIStack_10fc != (Image *)0x0) {\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n        pIStack_10fc = (Image *)0x0;\n      }\n      goto LAB_00287858;\n    }" if (parenthesized_expression "(uStack_10d4 == 0)" ( (binary_expression "uStack_10d4 == 0" identifier == number_literal) )) (compound_statement "{\n      uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n      (**(code **)(puVar31 + 0x1756a8))(uVar15);\n      (**(code **)(puVar31 + 0x175634))(iVar3);\n      (**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x4e0,0x1a9,*(int *)(puVar31 + 0x174fb4) + 0x1854,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n      if (pIStack_10fc != (Image *)0x0) {\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n        pIStack_10fc = (Image *)0x0;\n      }\n      goto LAB_00287858;\n    }" { (expression_statement "uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" identifier = (call_expression "(**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar31 + 0x175e54))" ( (pointer_expression "**(code **)(puVar31 + 0x175e54)" * (pointer_expression "*(code **)(puVar31 + 0x175e54)" * (cast_expression "(code **)(puVar31 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175e54)" ( (binary_expression "puVar31 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar31 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar31 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar31 + 0x1756a8)" * (pointer_expression "*(code **)(puVar31 + 0x1756a8)" * (cast_expression "(code **)(puVar31 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756a8)" ( (binary_expression "puVar31 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar31 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x175634))" ( (pointer_expression "**(code **)(puVar31 + 0x175634)" * (pointer_expression "*(code **)(puVar31 + 0x175634)" * (cast_expression "(code **)(puVar31 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175634)" ( (binary_expression "puVar31 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x4e0,0x1a9,*(int *)(puVar31 + 0x174fb4) + 0x1854,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);" (call_expression "(**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x4e0,0x1a9,*(int *)(puVar31 + 0x174fb4) + 0x1854,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar31 + 0x175608))" ( (pointer_expression "**(code **)(puVar31 + 0x175608)" * (pointer_expression "*(code **)(puVar31 + 0x175608)" * (cast_expression "(code **)(puVar31 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175608)" ( (binary_expression "puVar31 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x4e0,0x1a9,*(int *)(puVar31 + 0x174fb4) + 0x1854,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar31 + 0x174fb4) + 0x1854" (pointer_expression "*(int *)(puVar31 + 0x174fb4)" * (cast_expression "(int *)(puVar31 + 0x174fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb4)" ( (binary_expression "puVar31 + 0x174fb4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pIStack_10fc != (Image *)0x0) {\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n        pIStack_10fc = (Image *)0x0;\n      }" if (parenthesized_expression "(pIStack_10fc != (Image *)0x0)" ( (binary_expression "pIStack_10fc != (Image *)0x0" identifier != (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n        pIStack_10fc = (Image *)0x0;\n      }" { (expression_statement "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175d70))" ( (pointer_expression "**(code **)(puVar31 + 0x175d70)" * (pointer_expression "*(code **)(puVar31 + 0x175d70)" * (cast_expression "(code **)(puVar31 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175d70)" ( (binary_expression "puVar31 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf8)" * (pointer_expression "*(code **)(puVar31 + 0x175bf8)" * (cast_expression "(code **)(puVar31 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf8)" ( (binary_expression "puVar31 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "pIStack_10fc = (Image *)0x0;" (assignment_expression "pIStack_10fc = (Image *)0x0" identifier = (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) }))) (if_statement "if ((uStack_10d4 & 1) == 0) goto LAB_00286050;" if (parenthesized_expression "((uStack_10d4 & 1) == 0)" ( (binary_expression "(uStack_10d4 & 1) == 0" (parenthesized_expression "(uStack_10d4 & 1)" ( (binary_expression "uStack_10d4 & 1" identifier & number_literal) )) == number_literal) )) (goto_statement "goto LAB_00286050;" goto statement_identifier ;)) }) (else_clause "else {\n    iVar19 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n    if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3), -1 < iVar19)) {\n      (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n      iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n      if (-1 < iVar19) goto LAB_00287cd8;\n    }\nLAB_00287db0:\n    uStack_10d4 = 0xffffffff;\n  }" else (compound_statement "{\n    iVar19 = (**(code **)(puVar31 + 0x175a04))(iVar3);\n    if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3), -1 < iVar19)) {\n      (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n      iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n      if (-1 < iVar19) goto LAB_00287cd8;\n    }\nLAB_00287db0:\n    uStack_10d4 = 0xffffffff;\n  }" { (expression_statement "iVar19 = (**(code **)(puVar31 + 0x175a04))(iVar3);" (assignment_expression "iVar19 = (**(code **)(puVar31 + 0x175a04))(iVar3)" identifier = (call_expression "(**(code **)(puVar31 + 0x175a04))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x175a04))" ( (pointer_expression "**(code **)(puVar31 + 0x175a04)" * (pointer_expression "*(code **)(puVar31 + 0x175a04)" * (cast_expression "(code **)(puVar31 + 0x175a04)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175a04)" ( (binary_expression "puVar31 + 0x175a04" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3), -1 < iVar19)) {\n      (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n      iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n      if (-1 < iVar19) goto LAB_00287cd8;\n    }" if (parenthesized_expression "((-1 < iVar19) && (iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3), -1 < iVar19))" ( (binary_expression "(-1 < iVar19) && (iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3), -1 < iVar19)" (parenthesized_expression "(-1 < iVar19)" ( (binary_expression "-1 < iVar19" number_literal < identifier) )) && (parenthesized_expression "(iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3), -1 < iVar19)" ( (comma_expression "iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3), -1 < iVar19" (assignment_expression "iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3)" identifier = (call_expression "(**(code **)(puVar31 + 0x175a10))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x175a10))" ( (pointer_expression "**(code **)(puVar31 + 0x175a10)" * (pointer_expression "*(code **)(puVar31 + 0x175a10)" * (cast_expression "(code **)(puVar31 + 0x175a10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175a10)" ( (binary_expression "puVar31 + 0x175a10" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) , (binary_expression "-1 < iVar19" number_literal < identifier)) ))) )) (compound_statement "{\n      (**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n      iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3);\n      if (-1 < iVar19) goto LAB_00287cd8;\n    }" { (expression_statement "(**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);" (call_expression "(**(code **)(puVar31 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8)" (parenthesized_expression "(**(code **)(puVar31 + 0x1759bc))" ( (pointer_expression "**(code **)(puVar31 + 0x1759bc)" * (pointer_expression "*(code **)(puVar31 + 0x1759bc)" * (cast_expression "(code **)(puVar31 + 0x1759bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1759bc)" ( (binary_expression "puVar31 + 0x1759bc" identifier + number_literal) ))))) )) (argument_list "(iVar3,uStack_10d4 - uStack_10c8)" ( identifier , (binary_expression "uStack_10d4 - uStack_10c8" identifier - identifier) ))) ;) (expression_statement "iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3);" (assignment_expression "iVar19 = (**(code **)(puVar31 + 0x175a10))(iVar3)" identifier = (call_expression "(**(code **)(puVar31 + 0x175a10))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x175a10))" ( (pointer_expression "**(code **)(puVar31 + 0x175a10)" * (pointer_expression "*(code **)(puVar31 + 0x175a10)" * (cast_expression "(code **)(puVar31 + 0x175a10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175a10)" ( (binary_expression "puVar31 + 0x175a10" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if (-1 < iVar19) goto LAB_00287cd8;" if (parenthesized_expression "(-1 < iVar19)" ( (binary_expression "-1 < iVar19" number_literal < identifier) )) (goto_statement "goto LAB_00287cd8;" goto statement_identifier ;)) })) (labeled_statement "LAB_00287db0:\n    uStack_10d4 = 0xffffffff;" statement_identifier : (expression_statement "uStack_10d4 = 0xffffffff;" (assignment_expression "uStack_10d4 = 0xffffffff" identifier = number_literal) ;)) }))) (expression_statement "(**(code **)(puVar31 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar31 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar31 + 0x1756c4)" * (pointer_expression "*(code **)(puVar31 + 0x1756c4)" * (cast_expression "(code **)(puVar31 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756c4)" ( (binary_expression "puVar31 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0)" ( identifier , number_literal ))) ;) (labeled_statement "LAB_00286050:\n  uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3);" statement_identifier : (expression_statement "uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3);" (assignment_expression "uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3)" identifier = (call_expression "(**(code **)(puVar31 + 0x1754cc))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x1754cc))" ( (pointer_expression "**(code **)(puVar31 + 0x1754cc)" * (pointer_expression "*(code **)(puVar31 + 0x1754cc)" * (cast_expression "(code **)(puVar31 + 0x1754cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1754cc)" ( (binary_expression "puVar31 + 0x1754cc" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;)) (expression_statement "(**(code **)(puVar31 + 0x175ba0))(iVar3);" (call_expression "(**(code **)(puVar31 + 0x175ba0))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x175ba0))" ( (pointer_expression "**(code **)(puVar31 + 0x175ba0)" * (pointer_expression "*(code **)(puVar31 + 0x175ba0)" * (cast_expression "(code **)(puVar31 + 0x175ba0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175ba0)" ( (binary_expression "puVar31 + 0x175ba0" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "iVar19 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1);" (assignment_expression "iVar19 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1)" identifier = (call_expression "(**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175dac))" ( (pointer_expression "**(code **)(puVar31 + 0x175dac)" * (pointer_expression "*(code **)(puVar31 + 0x175dac)" * (cast_expression "(code **)(puVar31 + 0x175dac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175dac)" ( (binary_expression "puVar31 + 0x175dac" identifier + number_literal) ))))) )) (argument_list "(uVar15,extraout_v1)" ( identifier , identifier )))) ;) (if_statement "if (iVar19 == 0) {\n    uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar31 + 0x1756a8))(uVar15);\n    (**(code **)(puVar31 + 0x175634))(iVar3);\n    (**(code **)(puVar31 + 0x175608))\n              (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x4ee,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78\n               ,iVar20 + 0x2210);\n    if (pIStack_10fc != (Image *)0x0) {\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      pIStack_10fc = (Image *)0x0;\n    }\n    goto LAB_00287858;\n  }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n    uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar31 + 0x1756a8))(uVar15);\n    (**(code **)(puVar31 + 0x175634))(iVar3);\n    (**(code **)(puVar31 + 0x175608))\n              (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x4ee,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78\n               ,iVar20 + 0x2210);\n    if (pIStack_10fc != (Image *)0x0) {\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      pIStack_10fc = (Image *)0x0;\n    }\n    goto LAB_00287858;\n  }" { (expression_statement "uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" identifier = (call_expression "(**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar31 + 0x175e54))" ( (pointer_expression "**(code **)(puVar31 + 0x175e54)" * (pointer_expression "*(code **)(puVar31 + 0x175e54)" * (cast_expression "(code **)(puVar31 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175e54)" ( (binary_expression "puVar31 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar31 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar31 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar31 + 0x1756a8)" * (pointer_expression "*(code **)(puVar31 + 0x1756a8)" * (cast_expression "(code **)(puVar31 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756a8)" ( (binary_expression "puVar31 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar31 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x175634))" ( (pointer_expression "**(code **)(puVar31 + 0x175634)" * (pointer_expression "*(code **)(puVar31 + 0x175634)" * (cast_expression "(code **)(puVar31 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175634)" ( (binary_expression "puVar31 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175608))\n              (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x4ee,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78\n               ,iVar20 + 0x2210);" (call_expression "(**(code **)(puVar31 + 0x175608))\n              (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x4ee,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78\n               ,iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar31 + 0x175608))" ( (pointer_expression "**(code **)(puVar31 + 0x175608)" * (pointer_expression "*(code **)(puVar31 + 0x175608)" * (cast_expression "(code **)(puVar31 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175608)" ( (binary_expression "puVar31 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x4ee,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78\n               ,iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pIStack_10fc != (Image *)0x0) {\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      pIStack_10fc = (Image *)0x0;\n    }" if (parenthesized_expression "(pIStack_10fc != (Image *)0x0)" ( (binary_expression "pIStack_10fc != (Image *)0x0" identifier != (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      pIStack_10fc = (Image *)0x0;\n    }" { (expression_statement "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175d70))" ( (pointer_expression "**(code **)(puVar31 + 0x175d70)" * (pointer_expression "*(code **)(puVar31 + 0x175d70)" * (cast_expression "(code **)(puVar31 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175d70)" ( (binary_expression "puVar31 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf8)" * (pointer_expression "*(code **)(puVar31 + 0x175bf8)" * (cast_expression "(code **)(puVar31 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf8)" ( (binary_expression "puVar31 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "pIStack_10fc = (Image *)0x0;" (assignment_expression "pIStack_10fc = (Image *)0x0" identifier = (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "iVar13 = (**(code **)(puVar31 + 0x175d80))\n                     (pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + 0x17f8,iVar19,in_a1);" (assignment_expression "iVar13 = (**(code **)(puVar31 + 0x175d80))\n                     (pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + 0x17f8,iVar19,in_a1)" identifier = (call_expression "(**(code **)(puVar31 + 0x175d80))\n                     (pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + 0x17f8,iVar19,in_a1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175d80))" ( (pointer_expression "**(code **)(puVar31 + 0x175d80)" * (pointer_expression "*(code **)(puVar31 + 0x175d80)" * (cast_expression "(code **)(puVar31 + 0x175d80)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175d80)" ( (binary_expression "puVar31 + 0x175d80" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + 0x17f8,iVar19,in_a1)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x174fb4) + 0x17f8" (pointer_expression "*(int *)(puVar31 + 0x174fb4)" * (cast_expression "(int *)(puVar31 + 0x174fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb4)" ( (binary_expression "puVar31 + 0x174fb4" identifier + number_literal) )))) + number_literal) , identifier , identifier )))) ;) (expression_statement "(**(code **)(puVar31 + 0x1754e4))(iVar19);" (call_expression "(**(code **)(puVar31 + 0x1754e4))(iVar19)" (parenthesized_expression "(**(code **)(puVar31 + 0x1754e4))" ( (pointer_expression "**(code **)(puVar31 + 0x1754e4)" * (pointer_expression "*(code **)(puVar31 + 0x1754e4)" * (cast_expression "(code **)(puVar31 + 0x1754e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1754e4)" ( (binary_expression "puVar31 + 0x1754e4" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;) (expression_statement "uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" identifier = (call_expression "(**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar31 + 0x175e54))" ( (pointer_expression "**(code **)(puVar31 + 0x175e54)" * (pointer_expression "*(code **)(puVar31 + 0x175e54)" * (cast_expression "(code **)(puVar31 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175e54)" ( (binary_expression "puVar31 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar31 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar31 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar31 + 0x1756a8)" * (pointer_expression "*(code **)(puVar31 + 0x1756a8)" * (cast_expression "(code **)(puVar31 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756a8)" ( (binary_expression "puVar31 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar31 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x175634))" ( (pointer_expression "**(code **)(puVar31 + 0x175634)" * (pointer_expression "*(code **)(puVar31 + 0x175634)" * (cast_expression "(code **)(puVar31 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175634)" ( (binary_expression "puVar31 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (if_statement "if (iVar13 == 0) {\n    (**(code **)(puVar31 + 0x175608))\n              (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x4f6,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78\n               ,iVar20 + 0x2210);\n    if (pIStack_10fc != (Image *)0x0) {\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      pIStack_10fc = (Image *)0x0;\n    }\n    goto LAB_00287858;\n  }" if (parenthesized_expression "(iVar13 == 0)" ( (binary_expression "iVar13 == 0" identifier == number_literal) )) (compound_statement "{\n    (**(code **)(puVar31 + 0x175608))\n              (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x4f6,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78\n               ,iVar20 + 0x2210);\n    if (pIStack_10fc != (Image *)0x0) {\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      pIStack_10fc = (Image *)0x0;\n    }\n    goto LAB_00287858;\n  }" { (expression_statement "(**(code **)(puVar31 + 0x175608))\n              (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x4f6,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78\n               ,iVar20 + 0x2210);" (call_expression "(**(code **)(puVar31 + 0x175608))\n              (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x4f6,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78\n               ,iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar31 + 0x175608))" ( (pointer_expression "**(code **)(puVar31 + 0x175608)" * (pointer_expression "*(code **)(puVar31 + 0x175608)" * (cast_expression "(code **)(puVar31 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175608)" ( (binary_expression "puVar31 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x4f6,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78\n               ,iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pIStack_10fc != (Image *)0x0) {\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      pIStack_10fc = (Image *)0x0;\n    }" if (parenthesized_expression "(pIStack_10fc != (Image *)0x0)" ( (binary_expression "pIStack_10fc != (Image *)0x0" identifier != (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      pIStack_10fc = (Image *)0x0;\n    }" { (expression_statement "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175d70))" ( (pointer_expression "**(code **)(puVar31 + 0x175d70)" * (pointer_expression "*(code **)(puVar31 + 0x175d70)" * (cast_expression "(code **)(puVar31 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175d70)" ( (binary_expression "puVar31 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf8)" * (pointer_expression "*(code **)(puVar31 + 0x175bf8)" * (cast_expression "(code **)(puVar31 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf8)" ( (binary_expression "puVar31 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "pIStack_10fc = (Image *)0x0;" (assignment_expression "pIStack_10fc = (Image *)0x0" identifier = (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (labeled_statement "LAB_00284a7c:\n  iVar3 = (**(code **)(puVar31 + 0x175d04))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78b8,4);" statement_identifier : (expression_statement "iVar3 = (**(code **)(puVar31 + 0x175d04))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78b8,4);" (assignment_expression "iVar3 = (**(code **)(puVar31 + 0x175d04))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78b8,4)" identifier = (call_expression "(**(code **)(puVar31 + 0x175d04))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78b8,4)" (parenthesized_expression "(**(code **)(puVar31 + 0x175d04))" ( (pointer_expression "**(code **)(puVar31 + 0x175d04)" * (pointer_expression "*(code **)(puVar31 + 0x175d04)" * (cast_expression "(code **)(puVar31 + 0x175d04)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175d04)" ( (binary_expression "puVar31 + 0x175d04" identifier + number_literal) ))))) )) (argument_list "(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78b8,4)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x78b8" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , number_literal )))) ;)) (if_statement "if (iVar3 == 0) {\n    (**(code **)(puVar31 + 0x175464))(auStack_1084,0x1000,*(int *)(puVar31 + 0x175020) + -0x4858,1);\n    ofile = (Image *)(**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n    if (ofile == (Image *)0x0) {\n      (**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x500,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n      if (pIStack_10fc != (Image *)0x0) {\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      }\n    }\n    else {\n      iVar3 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n      if (iVar3 == 0) {\n        (**(code **)(puVar31 + 0x175634))(ofile);\n        (**(code **)(puVar31 + 0x175608))\n                  (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                   *(int *)(puVar31 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pIStack_10fc != (Image *)0x0) {\n          (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n          (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n          pIStack_10fc = (Image *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar31 + 0x1759b0))(ofile->blob,iVar3);\n        iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78c0);\n        if (iVar3 != 0) {\n          iVar3 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n          if (iVar3 != 0) {\n            (**(code **)(puVar31 + 0x175dbc))(iVar3,0,0x14000);\n            do {\n              iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);\n              if (iVar19 == 0) goto LAB_00286b70;\n              iVar13 = 0;\n              if (0 < iVar19) {\n                do {\n                  iVar22 = (**(code **)(puVar31 + 0x17607c))(ofile,iVar19 - iVar13,iVar3 + iVar13);\n                  if (iVar22 < 1) {\n                    if (iVar13 < iVar19) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar13 = iVar13 + iVar22;\n                } while (iVar13 < iVar19);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(ofile);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar31 + 0x175020) + -0x48a4,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar31 + 0x175548))();\n          ifile = (Image *)(**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n          if (ifile == (Image *)0x0) {\n            uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n            (**(code **)(puVar31 + 0x1756a8))(uVar15);\n            (**(code **)(puVar31 + 0x175634))(ofile);\n            (**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            pBVar27 = ifile->blob;\n            uVar11 = (**(code **)(puVar31 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar31 + 0x175430))(uVar15);\n            (**(code **)(puVar31 + 0x1759b0))(pBVar27,uVar11,uVar15);\n            iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n            if (iVar3 == 0xff) {\n              iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n              iVar19 = *(int *)(puVar31 + 0x1752b0);\n              if (iVar3 == 0xd8) {\n                iVar3 = *(int *)(puVar31 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar3 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,0xff);\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc,ofile);\n                      uStack_10a0 = *(undefined4 *)(iVar3 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar3 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar3 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar3 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar3 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar3 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar3 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar13 = jpeg_transfer_1(ifile,ofile);\n                      } while (iVar13 != -1);\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if ((iVar13 != -1) &&\n                         (iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1)) {\n                        iVar22 = iVar13 * 0x100 + -2 + iVar22;\n                        do {\n                          if (iVar22 == 0) break;\n                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                          iVar22 = iVar22 + -1;\n                        } while (iVar13 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n                (**(code **)(puVar31 + 0x1756a8))(uVar15);\n                (**(code **)(puVar31 + 0x175634))(ifile);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n            (**(code **)(puVar31 + 0x1756a8))(uVar15);\n            (**(code **)(puVar31 + 0x175634))(ifile);\n            (**(code **)(puVar31 + 0x175634))(ofile);\n            (**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar31 + 0x175020) + -0x4850,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }\n    }\n    goto LAB_00286534;\n  }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n    (**(code **)(puVar31 + 0x175464))(auStack_1084,0x1000,*(int *)(puVar31 + 0x175020) + -0x4858,1);\n    ofile = (Image *)(**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n    if (ofile == (Image *)0x0) {\n      (**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x500,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n      if (pIStack_10fc != (Image *)0x0) {\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      }\n    }\n    else {\n      iVar3 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n      if (iVar3 == 0) {\n        (**(code **)(puVar31 + 0x175634))(ofile);\n        (**(code **)(puVar31 + 0x175608))\n                  (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                   *(int *)(puVar31 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pIStack_10fc != (Image *)0x0) {\n          (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n          (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n          pIStack_10fc = (Image *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar31 + 0x1759b0))(ofile->blob,iVar3);\n        iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78c0);\n        if (iVar3 != 0) {\n          iVar3 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n          if (iVar3 != 0) {\n            (**(code **)(puVar31 + 0x175dbc))(iVar3,0,0x14000);\n            do {\n              iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);\n              if (iVar19 == 0) goto LAB_00286b70;\n              iVar13 = 0;\n              if (0 < iVar19) {\n                do {\n                  iVar22 = (**(code **)(puVar31 + 0x17607c))(ofile,iVar19 - iVar13,iVar3 + iVar13);\n                  if (iVar22 < 1) {\n                    if (iVar13 < iVar19) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar13 = iVar13 + iVar22;\n                } while (iVar13 < iVar19);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(ofile);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar31 + 0x175020) + -0x48a4,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar31 + 0x175548))();\n          ifile = (Image *)(**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n          if (ifile == (Image *)0x0) {\n            uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n            (**(code **)(puVar31 + 0x1756a8))(uVar15);\n            (**(code **)(puVar31 + 0x175634))(ofile);\n            (**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            pBVar27 = ifile->blob;\n            uVar11 = (**(code **)(puVar31 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar31 + 0x175430))(uVar15);\n            (**(code **)(puVar31 + 0x1759b0))(pBVar27,uVar11,uVar15);\n            iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n            if (iVar3 == 0xff) {\n              iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n              iVar19 = *(int *)(puVar31 + 0x1752b0);\n              if (iVar3 == 0xd8) {\n                iVar3 = *(int *)(puVar31 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar3 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,0xff);\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc,ofile);\n                      uStack_10a0 = *(undefined4 *)(iVar3 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar3 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar3 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar3 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar3 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar3 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar3 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar13 = jpeg_transfer_1(ifile,ofile);\n                      } while (iVar13 != -1);\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if ((iVar13 != -1) &&\n                         (iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1)) {\n                        iVar22 = iVar13 * 0x100 + -2 + iVar22;\n                        do {\n                          if (iVar22 == 0) break;\n                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                          iVar22 = iVar22 + -1;\n                        } while (iVar13 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n                (**(code **)(puVar31 + 0x1756a8))(uVar15);\n                (**(code **)(puVar31 + 0x175634))(ifile);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n            (**(code **)(puVar31 + 0x1756a8))(uVar15);\n            (**(code **)(puVar31 + 0x175634))(ifile);\n            (**(code **)(puVar31 + 0x175634))(ofile);\n            (**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar31 + 0x175020) + -0x4850,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }\n    }\n    goto LAB_00286534;\n  }" { (expression_statement "(**(code **)(puVar31 + 0x175464))(auStack_1084,0x1000,*(int *)(puVar31 + 0x175020) + -0x4858,1);" (call_expression "(**(code **)(puVar31 + 0x175464))(auStack_1084,0x1000,*(int *)(puVar31 + 0x175020) + -0x4858,1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175464))" ( (pointer_expression "**(code **)(puVar31 + 0x175464)" * (pointer_expression "*(code **)(puVar31 + 0x175464)" * (cast_expression "(code **)(puVar31 + 0x175464)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175464)" ( (binary_expression "puVar31 + 0x175464" identifier + number_literal) ))))) )) (argument_list "(auStack_1084,0x1000,*(int *)(puVar31 + 0x175020) + -0x4858,1)" ( identifier , number_literal , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x4858" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) (expression_statement "ofile = (Image *)(**(code **)(puVar31 + 0x175cf4))(0,in_a1);" (assignment_expression "ofile = (Image *)(**(code **)(puVar31 + 0x175cf4))(0,in_a1)" identifier = (cast_expression "(Image *)(**(code **)(puVar31 + 0x175cf4))(0,in_a1)" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar31 + 0x175cf4))(0,in_a1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175cf4))" ( (pointer_expression "**(code **)(puVar31 + 0x175cf4)" * (pointer_expression "*(code **)(puVar31 + 0x175cf4)" * (cast_expression "(code **)(puVar31 + 0x175cf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175cf4)" ( (binary_expression "puVar31 + 0x175cf4" identifier + number_literal) ))))) )) (argument_list "(0,in_a1)" ( number_literal , identifier ))))) ;) (if_statement "if (ofile == (Image *)0x0) {\n      (**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x500,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n      if (pIStack_10fc != (Image *)0x0) {\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      }\n    }\n    else {\n      iVar3 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n      if (iVar3 == 0) {\n        (**(code **)(puVar31 + 0x175634))(ofile);\n        (**(code **)(puVar31 + 0x175608))\n                  (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                   *(int *)(puVar31 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pIStack_10fc != (Image *)0x0) {\n          (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n          (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n          pIStack_10fc = (Image *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar31 + 0x1759b0))(ofile->blob,iVar3);\n        iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78c0);\n        if (iVar3 != 0) {\n          iVar3 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n          if (iVar3 != 0) {\n            (**(code **)(puVar31 + 0x175dbc))(iVar3,0,0x14000);\n            do {\n              iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);\n              if (iVar19 == 0) goto LAB_00286b70;\n              iVar13 = 0;\n              if (0 < iVar19) {\n                do {\n                  iVar22 = (**(code **)(puVar31 + 0x17607c))(ofile,iVar19 - iVar13,iVar3 + iVar13);\n                  if (iVar22 < 1) {\n                    if (iVar13 < iVar19) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar13 = iVar13 + iVar22;\n                } while (iVar13 < iVar19);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(ofile);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar31 + 0x175020) + -0x48a4,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar31 + 0x175548))();\n          ifile = (Image *)(**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n          if (ifile == (Image *)0x0) {\n            uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n            (**(code **)(puVar31 + 0x1756a8))(uVar15);\n            (**(code **)(puVar31 + 0x175634))(ofile);\n            (**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            pBVar27 = ifile->blob;\n            uVar11 = (**(code **)(puVar31 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar31 + 0x175430))(uVar15);\n            (**(code **)(puVar31 + 0x1759b0))(pBVar27,uVar11,uVar15);\n            iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n            if (iVar3 == 0xff) {\n              iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n              iVar19 = *(int *)(puVar31 + 0x1752b0);\n              if (iVar3 == 0xd8) {\n                iVar3 = *(int *)(puVar31 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar3 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,0xff);\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc,ofile);\n                      uStack_10a0 = *(undefined4 *)(iVar3 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar3 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar3 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar3 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar3 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar3 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar3 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar13 = jpeg_transfer_1(ifile,ofile);\n                      } while (iVar13 != -1);\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if ((iVar13 != -1) &&\n                         (iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1)) {\n                        iVar22 = iVar13 * 0x100 + -2 + iVar22;\n                        do {\n                          if (iVar22 == 0) break;\n                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                          iVar22 = iVar22 + -1;\n                        } while (iVar13 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n                (**(code **)(puVar31 + 0x1756a8))(uVar15);\n                (**(code **)(puVar31 + 0x175634))(ifile);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n            (**(code **)(puVar31 + 0x1756a8))(uVar15);\n            (**(code **)(puVar31 + 0x175634))(ifile);\n            (**(code **)(puVar31 + 0x175634))(ofile);\n            (**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar31 + 0x175020) + -0x4850,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }\n    }" if (parenthesized_expression "(ofile == (Image *)0x0)" ( (binary_expression "ofile == (Image *)0x0" identifier == (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      (**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x500,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n      if (pIStack_10fc != (Image *)0x0) {\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      }\n    }" { (expression_statement "(**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x500,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);" (call_expression "(**(code **)(puVar31 + 0x175608))\n                (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x500,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar31 + 0x175608))" ( (pointer_expression "**(code **)(puVar31 + 0x175608)" * (pointer_expression "*(code **)(puVar31 + 0x175608)" * (cast_expression "(code **)(puVar31 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175608)" ( (binary_expression "puVar31 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700\n                 ,0x500,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,\n                 *(int *)(puVar31 + 0x174fb0) + 0x6e78,iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pIStack_10fc != (Image *)0x0) {\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      }" if (parenthesized_expression "(pIStack_10fc != (Image *)0x0)" ( (binary_expression "pIStack_10fc != (Image *)0x0" identifier != (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n        (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      }" { (expression_statement "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175d70))" ( (pointer_expression "**(code **)(puVar31 + 0x175d70)" * (pointer_expression "*(code **)(puVar31 + 0x175d70)" * (cast_expression "(code **)(puVar31 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175d70)" ( (binary_expression "puVar31 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf8)" * (pointer_expression "*(code **)(puVar31 + 0x175bf8)" * (cast_expression "(code **)(puVar31 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf8)" ( (binary_expression "puVar31 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) })) }) (else_clause "else {\n      iVar3 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n      if (iVar3 == 0) {\n        (**(code **)(puVar31 + 0x175634))(ofile);\n        (**(code **)(puVar31 + 0x175608))\n                  (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                   *(int *)(puVar31 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pIStack_10fc != (Image *)0x0) {\n          (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n          (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n          pIStack_10fc = (Image *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar31 + 0x1759b0))(ofile->blob,iVar3);\n        iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78c0);\n        if (iVar3 != 0) {\n          iVar3 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n          if (iVar3 != 0) {\n            (**(code **)(puVar31 + 0x175dbc))(iVar3,0,0x14000);\n            do {\n              iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);\n              if (iVar19 == 0) goto LAB_00286b70;\n              iVar13 = 0;\n              if (0 < iVar19) {\n                do {\n                  iVar22 = (**(code **)(puVar31 + 0x17607c))(ofile,iVar19 - iVar13,iVar3 + iVar13);\n                  if (iVar22 < 1) {\n                    if (iVar13 < iVar19) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar13 = iVar13 + iVar22;\n                } while (iVar13 < iVar19);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(ofile);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar31 + 0x175020) + -0x48a4,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar31 + 0x175548))();\n          ifile = (Image *)(**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n          if (ifile == (Image *)0x0) {\n            uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n            (**(code **)(puVar31 + 0x1756a8))(uVar15);\n            (**(code **)(puVar31 + 0x175634))(ofile);\n            (**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            pBVar27 = ifile->blob;\n            uVar11 = (**(code **)(puVar31 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar31 + 0x175430))(uVar15);\n            (**(code **)(puVar31 + 0x1759b0))(pBVar27,uVar11,uVar15);\n            iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n            if (iVar3 == 0xff) {\n              iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n              iVar19 = *(int *)(puVar31 + 0x1752b0);\n              if (iVar3 == 0xd8) {\n                iVar3 = *(int *)(puVar31 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar3 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,0xff);\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc,ofile);\n                      uStack_10a0 = *(undefined4 *)(iVar3 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar3 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar3 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar3 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar3 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar3 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar3 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar13 = jpeg_transfer_1(ifile,ofile);\n                      } while (iVar13 != -1);\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if ((iVar13 != -1) &&\n                         (iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1)) {\n                        iVar22 = iVar13 * 0x100 + -2 + iVar22;\n                        do {\n                          if (iVar22 == 0) break;\n                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                          iVar22 = iVar22 + -1;\n                        } while (iVar13 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n                (**(code **)(puVar31 + 0x1756a8))(uVar15);\n                (**(code **)(puVar31 + 0x175634))(ifile);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n            (**(code **)(puVar31 + 0x1756a8))(uVar15);\n            (**(code **)(puVar31 + 0x175634))(ifile);\n            (**(code **)(puVar31 + 0x175634))(ofile);\n            (**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar31 + 0x175020) + -0x4850,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }\n    }" else (compound_statement "{\n      iVar3 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n      if (iVar3 == 0) {\n        (**(code **)(puVar31 + 0x175634))(ofile);\n        (**(code **)(puVar31 + 0x175608))\n                  (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                   *(int *)(puVar31 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pIStack_10fc != (Image *)0x0) {\n          (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n          (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n          pIStack_10fc = (Image *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar31 + 0x1759b0))(ofile->blob,iVar3);\n        iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78c0);\n        if (iVar3 != 0) {\n          iVar3 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n          if (iVar3 != 0) {\n            (**(code **)(puVar31 + 0x175dbc))(iVar3,0,0x14000);\n            do {\n              iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);\n              if (iVar19 == 0) goto LAB_00286b70;\n              iVar13 = 0;\n              if (0 < iVar19) {\n                do {\n                  iVar22 = (**(code **)(puVar31 + 0x17607c))(ofile,iVar19 - iVar13,iVar3 + iVar13);\n                  if (iVar22 < 1) {\n                    if (iVar13 < iVar19) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar13 = iVar13 + iVar22;\n                } while (iVar13 < iVar19);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(ofile);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar31 + 0x175020) + -0x48a4,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar31 + 0x175548))();\n          ifile = (Image *)(**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n          if (ifile == (Image *)0x0) {\n            uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n            (**(code **)(puVar31 + 0x1756a8))(uVar15);\n            (**(code **)(puVar31 + 0x175634))(ofile);\n            (**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            pBVar27 = ifile->blob;\n            uVar11 = (**(code **)(puVar31 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar31 + 0x175430))(uVar15);\n            (**(code **)(puVar31 + 0x1759b0))(pBVar27,uVar11,uVar15);\n            iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n            if (iVar3 == 0xff) {\n              iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n              iVar19 = *(int *)(puVar31 + 0x1752b0);\n              if (iVar3 == 0xd8) {\n                iVar3 = *(int *)(puVar31 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar3 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,0xff);\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc,ofile);\n                      uStack_10a0 = *(undefined4 *)(iVar3 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar3 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar3 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar3 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar3 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar3 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar3 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar13 = jpeg_transfer_1(ifile,ofile);\n                      } while (iVar13 != -1);\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if ((iVar13 != -1) &&\n                         (iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1)) {\n                        iVar22 = iVar13 * 0x100 + -2 + iVar22;\n                        do {\n                          if (iVar22 == 0) break;\n                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                          iVar22 = iVar22 + -1;\n                        } while (iVar13 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n                (**(code **)(puVar31 + 0x1756a8))(uVar15);\n                (**(code **)(puVar31 + 0x175634))(ifile);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n            (**(code **)(puVar31 + 0x1756a8))(uVar15);\n            (**(code **)(puVar31 + 0x175634))(ifile);\n            (**(code **)(puVar31 + 0x175634))(ofile);\n            (**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar31 + 0x175020) + -0x4850,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }\n    }" { (expression_statement "iVar3 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);" (assignment_expression "iVar3 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1)" identifier = (call_expression "(**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf4)" * (pointer_expression "*(code **)(puVar31 + 0x175bf4)" * (cast_expression "(code **)(puVar31 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf4)" ( (binary_expression "puVar31 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(uStack_10d4,1)" ( identifier , number_literal )))) ;) (if_statement "if (iVar3 == 0) {\n        (**(code **)(puVar31 + 0x175634))(ofile);\n        (**(code **)(puVar31 + 0x175608))\n                  (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                   *(int *)(puVar31 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pIStack_10fc != (Image *)0x0) {\n          (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n          (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n          pIStack_10fc = (Image *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar31 + 0x1759b0))(ofile->blob,iVar3);\n        iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78c0);\n        if (iVar3 != 0) {\n          iVar3 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n          if (iVar3 != 0) {\n            (**(code **)(puVar31 + 0x175dbc))(iVar3,0,0x14000);\n            do {\n              iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);\n              if (iVar19 == 0) goto LAB_00286b70;\n              iVar13 = 0;\n              if (0 < iVar19) {\n                do {\n                  iVar22 = (**(code **)(puVar31 + 0x17607c))(ofile,iVar19 - iVar13,iVar3 + iVar13);\n                  if (iVar22 < 1) {\n                    if (iVar13 < iVar19) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar13 = iVar13 + iVar22;\n                } while (iVar13 < iVar19);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(ofile);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar31 + 0x175020) + -0x48a4,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar31 + 0x175548))();\n          ifile = (Image *)(**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n          if (ifile == (Image *)0x0) {\n            uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n            (**(code **)(puVar31 + 0x1756a8))(uVar15);\n            (**(code **)(puVar31 + 0x175634))(ofile);\n            (**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            pBVar27 = ifile->blob;\n            uVar11 = (**(code **)(puVar31 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar31 + 0x175430))(uVar15);\n            (**(code **)(puVar31 + 0x1759b0))(pBVar27,uVar11,uVar15);\n            iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n            if (iVar3 == 0xff) {\n              iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n              iVar19 = *(int *)(puVar31 + 0x1752b0);\n              if (iVar3 == 0xd8) {\n                iVar3 = *(int *)(puVar31 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar3 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,0xff);\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc,ofile);\n                      uStack_10a0 = *(undefined4 *)(iVar3 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar3 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar3 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar3 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar3 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar3 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar3 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar13 = jpeg_transfer_1(ifile,ofile);\n                      } while (iVar13 != -1);\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if ((iVar13 != -1) &&\n                         (iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1)) {\n                        iVar22 = iVar13 * 0x100 + -2 + iVar22;\n                        do {\n                          if (iVar22 == 0) break;\n                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                          iVar22 = iVar22 + -1;\n                        } while (iVar13 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n                (**(code **)(puVar31 + 0x1756a8))(uVar15);\n                (**(code **)(puVar31 + 0x175634))(ifile);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n            (**(code **)(puVar31 + 0x1756a8))(uVar15);\n            (**(code **)(puVar31 + 0x175634))(ifile);\n            (**(code **)(puVar31 + 0x175634))(ofile);\n            (**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar31 + 0x175020) + -0x4850,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n        (**(code **)(puVar31 + 0x175634))(ofile);\n        (**(code **)(puVar31 + 0x175608))\n                  (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                   *(int *)(puVar31 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pIStack_10fc != (Image *)0x0) {\n          (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n          (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n          pIStack_10fc = (Image *)0x0;\n          goto LAB_00287858;\n        }\n      }" { (expression_statement "(**(code **)(puVar31 + 0x175634))(ofile);" (call_expression "(**(code **)(puVar31 + 0x175634))(ofile)" (parenthesized_expression "(**(code **)(puVar31 + 0x175634))" ( (pointer_expression "**(code **)(puVar31 + 0x175634)" * (pointer_expression "*(code **)(puVar31 + 0x175634)" * (cast_expression "(code **)(puVar31 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175634)" ( (binary_expression "puVar31 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(ofile)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175608))\n                  (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                   *(int *)(puVar31 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);" (call_expression "(**(code **)(puVar31 + 0x175608))\n                  (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                   *(int *)(puVar31 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar31 + 0x175608))" ( (pointer_expression "**(code **)(puVar31 + 0x175608)" * (pointer_expression "*(code **)(puVar31 + 0x175608)" * (cast_expression "(code **)(puVar31 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175608)" ( (binary_expression "puVar31 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                   *(int *)(puVar31 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pIStack_10fc != (Image *)0x0) {\n          (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n          (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n          pIStack_10fc = (Image *)0x0;\n          goto LAB_00287858;\n        }" if (parenthesized_expression "(pIStack_10fc != (Image *)0x0)" ( (binary_expression "pIStack_10fc != (Image *)0x0" identifier != (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n          (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n          pIStack_10fc = (Image *)0x0;\n          goto LAB_00287858;\n        }" { (expression_statement "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175d70))" ( (pointer_expression "**(code **)(puVar31 + 0x175d70)" * (pointer_expression "*(code **)(puVar31 + 0x175d70)" * (cast_expression "(code **)(puVar31 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175d70)" ( (binary_expression "puVar31 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf8)" * (pointer_expression "*(code **)(puVar31 + 0x175bf8)" * (cast_expression "(code **)(puVar31 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf8)" ( (binary_expression "puVar31 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "pIStack_10fc = (Image *)0x0;" (assignment_expression "pIStack_10fc = (Image *)0x0" identifier = (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) }) (else_clause "else {\n        (**(code **)(puVar31 + 0x1759b0))(ofile->blob,iVar3);\n        iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78c0);\n        if (iVar3 != 0) {\n          iVar3 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n          if (iVar3 != 0) {\n            (**(code **)(puVar31 + 0x175dbc))(iVar3,0,0x14000);\n            do {\n              iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);\n              if (iVar19 == 0) goto LAB_00286b70;\n              iVar13 = 0;\n              if (0 < iVar19) {\n                do {\n                  iVar22 = (**(code **)(puVar31 + 0x17607c))(ofile,iVar19 - iVar13,iVar3 + iVar13);\n                  if (iVar22 < 1) {\n                    if (iVar13 < iVar19) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar13 = iVar13 + iVar22;\n                } while (iVar13 < iVar19);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(ofile);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar31 + 0x175020) + -0x48a4,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar31 + 0x175548))();\n          ifile = (Image *)(**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n          if (ifile == (Image *)0x0) {\n            uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n            (**(code **)(puVar31 + 0x1756a8))(uVar15);\n            (**(code **)(puVar31 + 0x175634))(ofile);\n            (**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            pBVar27 = ifile->blob;\n            uVar11 = (**(code **)(puVar31 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar31 + 0x175430))(uVar15);\n            (**(code **)(puVar31 + 0x1759b0))(pBVar27,uVar11,uVar15);\n            iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n            if (iVar3 == 0xff) {\n              iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n              iVar19 = *(int *)(puVar31 + 0x1752b0);\n              if (iVar3 == 0xd8) {\n                iVar3 = *(int *)(puVar31 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar3 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,0xff);\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc,ofile);\n                      uStack_10a0 = *(undefined4 *)(iVar3 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar3 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar3 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar3 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar3 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar3 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar3 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar13 = jpeg_transfer_1(ifile,ofile);\n                      } while (iVar13 != -1);\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if ((iVar13 != -1) &&\n                         (iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1)) {\n                        iVar22 = iVar13 * 0x100 + -2 + iVar22;\n                        do {\n                          if (iVar22 == 0) break;\n                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                          iVar22 = iVar22 + -1;\n                        } while (iVar13 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n                (**(code **)(puVar31 + 0x1756a8))(uVar15);\n                (**(code **)(puVar31 + 0x175634))(ifile);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n            (**(code **)(puVar31 + 0x1756a8))(uVar15);\n            (**(code **)(puVar31 + 0x175634))(ifile);\n            (**(code **)(puVar31 + 0x175634))(ofile);\n            (**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar31 + 0x175020) + -0x4850,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }" else (compound_statement "{\n        (**(code **)(puVar31 + 0x1759b0))(ofile->blob,iVar3);\n        iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78c0);\n        if (iVar3 != 0) {\n          iVar3 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n          if (iVar3 != 0) {\n            (**(code **)(puVar31 + 0x175dbc))(iVar3,0,0x14000);\n            do {\n              iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);\n              if (iVar19 == 0) goto LAB_00286b70;\n              iVar13 = 0;\n              if (0 < iVar19) {\n                do {\n                  iVar22 = (**(code **)(puVar31 + 0x17607c))(ofile,iVar19 - iVar13,iVar3 + iVar13);\n                  if (iVar22 < 1) {\n                    if (iVar13 < iVar19) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar13 = iVar13 + iVar22;\n                } while (iVar13 < iVar19);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(ofile);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar31 + 0x175020) + -0x48a4,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar31 + 0x175548))();\n          ifile = (Image *)(**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n          if (ifile == (Image *)0x0) {\n            uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n            (**(code **)(puVar31 + 0x1756a8))(uVar15);\n            (**(code **)(puVar31 + 0x175634))(ofile);\n            (**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            pBVar27 = ifile->blob;\n            uVar11 = (**(code **)(puVar31 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar31 + 0x175430))(uVar15);\n            (**(code **)(puVar31 + 0x1759b0))(pBVar27,uVar11,uVar15);\n            iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n            if (iVar3 == 0xff) {\n              iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n              iVar19 = *(int *)(puVar31 + 0x1752b0);\n              if (iVar3 == 0xd8) {\n                iVar3 = *(int *)(puVar31 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar3 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,0xff);\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc,ofile);\n                      uStack_10a0 = *(undefined4 *)(iVar3 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar3 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar3 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar3 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar3 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar3 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar3 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar13 = jpeg_transfer_1(ifile,ofile);\n                      } while (iVar13 != -1);\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if ((iVar13 != -1) &&\n                         (iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1)) {\n                        iVar22 = iVar13 * 0x100 + -2 + iVar22;\n                        do {\n                          if (iVar22 == 0) break;\n                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                          iVar22 = iVar22 + -1;\n                        } while (iVar13 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n                (**(code **)(puVar31 + 0x1756a8))(uVar15);\n                (**(code **)(puVar31 + 0x175634))(ifile);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n            (**(code **)(puVar31 + 0x1756a8))(uVar15);\n            (**(code **)(puVar31 + 0x175634))(ifile);\n            (**(code **)(puVar31 + 0x175634))(ofile);\n            (**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar31 + 0x175020) + -0x4850,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }" { (expression_statement "(**(code **)(puVar31 + 0x1759b0))(ofile->blob,iVar3);" (call_expression "(**(code **)(puVar31 + 0x1759b0))(ofile->blob,iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x1759b0))" ( (pointer_expression "**(code **)(puVar31 + 0x1759b0)" * (pointer_expression "*(code **)(puVar31 + 0x1759b0)" * (cast_expression "(code **)(puVar31 + 0x1759b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1759b0)" ( (binary_expression "puVar31 + 0x1759b0" identifier + number_literal) ))))) )) (argument_list "(ofile->blob,iVar3)" ( (field_expression "ofile->blob" identifier -> field_identifier) , identifier ))) ;) (expression_statement "iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78c0);" (assignment_expression "iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78c0)" identifier = (call_expression "(**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78c0)" (parenthesized_expression "(**(code **)(puVar31 + 0x1757f8))" ( (pointer_expression "**(code **)(puVar31 + 0x1757f8)" * (pointer_expression "*(code **)(puVar31 + 0x1757f8)" * (cast_expression "(code **)(puVar31 + 0x1757f8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1757f8)" ( (binary_expression "puVar31 + 0x1757f8" identifier + number_literal) ))))) )) (argument_list "(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78c0)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x78c0" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) )))) ;) (if_statement "if (iVar3 != 0) {\n          iVar3 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n          if (iVar3 != 0) {\n            (**(code **)(puVar31 + 0x175dbc))(iVar3,0,0x14000);\n            do {\n              iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);\n              if (iVar19 == 0) goto LAB_00286b70;\n              iVar13 = 0;\n              if (0 < iVar19) {\n                do {\n                  iVar22 = (**(code **)(puVar31 + 0x17607c))(ofile,iVar19 - iVar13,iVar3 + iVar13);\n                  if (iVar22 < 1) {\n                    if (iVar13 < iVar19) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar13 = iVar13 + iVar22;\n                } while (iVar13 < iVar19);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }" if (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (compound_statement "{\n          iVar3 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n          if (iVar3 != 0) {\n            (**(code **)(puVar31 + 0x175dbc))(iVar3,0,0x14000);\n            do {\n              iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);\n              if (iVar19 == 0) goto LAB_00286b70;\n              iVar13 = 0;\n              if (0 < iVar19) {\n                do {\n                  iVar22 = (**(code **)(puVar31 + 0x17607c))(ofile,iVar19 - iVar13,iVar3 + iVar13);\n                  if (iVar22 < 1) {\n                    if (iVar13 < iVar19) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar13 = iVar13 + iVar22;\n                } while (iVar13 < iVar19);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }" { (expression_statement "iVar3 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);" (assignment_expression "iVar3 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1)" identifier = (call_expression "(**(code **)(puVar31 + 0x175bf4))(0x14000,1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf4)" * (pointer_expression "*(code **)(puVar31 + 0x175bf4)" * (cast_expression "(code **)(puVar31 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf4)" ( (binary_expression "puVar31 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(0x14000,1)" ( number_literal , number_literal )))) ;) (if_statement "if (iVar3 != 0) {\n            (**(code **)(puVar31 + 0x175dbc))(iVar3,0,0x14000);\n            do {\n              iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);\n              if (iVar19 == 0) goto LAB_00286b70;\n              iVar13 = 0;\n              if (0 < iVar19) {\n                do {\n                  iVar22 = (**(code **)(puVar31 + 0x17607c))(ofile,iVar19 - iVar13,iVar3 + iVar13);\n                  if (iVar22 < 1) {\n                    if (iVar13 < iVar19) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar13 = iVar13 + iVar22;\n                } while (iVar13 < iVar19);\n              }\n            } while( true );\n          }" if (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (compound_statement "{\n            (**(code **)(puVar31 + 0x175dbc))(iVar3,0,0x14000);\n            do {\n              iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);\n              if (iVar19 == 0) goto LAB_00286b70;\n              iVar13 = 0;\n              if (0 < iVar19) {\n                do {\n                  iVar22 = (**(code **)(puVar31 + 0x17607c))(ofile,iVar19 - iVar13,iVar3 + iVar13);\n                  if (iVar22 < 1) {\n                    if (iVar13 < iVar19) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar13 = iVar13 + iVar22;\n                } while (iVar13 < iVar19);\n              }\n            } while( true );\n          }" { (expression_statement "(**(code **)(puVar31 + 0x175dbc))(iVar3,0,0x14000);" (call_expression "(**(code **)(puVar31 + 0x175dbc))(iVar3,0,0x14000)" (parenthesized_expression "(**(code **)(puVar31 + 0x175dbc))" ( (pointer_expression "**(code **)(puVar31 + 0x175dbc)" * (pointer_expression "*(code **)(puVar31 + 0x175dbc)" * (cast_expression "(code **)(puVar31 + 0x175dbc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175dbc)" ( (binary_expression "puVar31 + 0x175dbc" identifier + number_literal) ))))) )) (argument_list "(iVar3,0,0x14000)" ( identifier , number_literal , number_literal ))) ;) (do_statement "do {\n              iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);\n              if (iVar19 == 0) goto LAB_00286b70;\n              iVar13 = 0;\n              if (0 < iVar19) {\n                do {\n                  iVar22 = (**(code **)(puVar31 + 0x17607c))(ofile,iVar19 - iVar13,iVar3 + iVar13);\n                  if (iVar22 < 1) {\n                    if (iVar13 < iVar19) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar13 = iVar13 + iVar22;\n                } while (iVar13 < iVar19);\n              }\n            } while( true );" do (compound_statement "{\n              iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);\n              if (iVar19 == 0) goto LAB_00286b70;\n              iVar13 = 0;\n              if (0 < iVar19) {\n                do {\n                  iVar22 = (**(code **)(puVar31 + 0x17607c))(ofile,iVar19 - iVar13,iVar3 + iVar13);\n                  if (iVar22 < 1) {\n                    if (iVar13 < iVar19) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar13 = iVar13 + iVar22;\n                } while (iVar13 < iVar19);\n              }\n            }" { (expression_statement "iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);" (assignment_expression "iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3)" identifier = (call_expression "(**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x175494))" ( (pointer_expression "**(code **)(puVar31 + 0x175494)" * (pointer_expression "*(code **)(puVar31 + 0x175494)" * (cast_expression "(code **)(puVar31 + 0x175494)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175494)" ( (binary_expression "puVar31 + 0x175494" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc,0x14000,iVar3)" ( identifier , number_literal , identifier )))) ;) (if_statement "if (iVar19 == 0) goto LAB_00286b70;" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00286b70;" goto statement_identifier ;)) (expression_statement "iVar13 = 0;" (assignment_expression "iVar13 = 0" identifier = number_literal) ;) (if_statement "if (0 < iVar19) {\n                do {\n                  iVar22 = (**(code **)(puVar31 + 0x17607c))(ofile,iVar19 - iVar13,iVar3 + iVar13);\n                  if (iVar22 < 1) {\n                    if (iVar13 < iVar19) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar13 = iVar13 + iVar22;\n                } while (iVar13 < iVar19);\n              }" if (parenthesized_expression "(0 < iVar19)" ( (binary_expression "0 < iVar19" number_literal < identifier) )) (compound_statement "{\n                do {\n                  iVar22 = (**(code **)(puVar31 + 0x17607c))(ofile,iVar19 - iVar13,iVar3 + iVar13);\n                  if (iVar22 < 1) {\n                    if (iVar13 < iVar19) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar13 = iVar13 + iVar22;\n                } while (iVar13 < iVar19);\n              }" { (do_statement "do {\n                  iVar22 = (**(code **)(puVar31 + 0x17607c))(ofile,iVar19 - iVar13,iVar3 + iVar13);\n                  if (iVar22 < 1) {\n                    if (iVar13 < iVar19) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar13 = iVar13 + iVar22;\n                } while (iVar13 < iVar19);" do (compound_statement "{\n                  iVar22 = (**(code **)(puVar31 + 0x17607c))(ofile,iVar19 - iVar13,iVar3 + iVar13);\n                  if (iVar22 < 1) {\n                    if (iVar13 < iVar19) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar13 = iVar13 + iVar22;\n                }" { (expression_statement "iVar22 = (**(code **)(puVar31 + 0x17607c))(ofile,iVar19 - iVar13,iVar3 + iVar13);" (assignment_expression "iVar22 = (**(code **)(puVar31 + 0x17607c))(ofile,iVar19 - iVar13,iVar3 + iVar13)" identifier = (call_expression "(**(code **)(puVar31 + 0x17607c))(ofile,iVar19 - iVar13,iVar3 + iVar13)" (parenthesized_expression "(**(code **)(puVar31 + 0x17607c))" ( (pointer_expression "**(code **)(puVar31 + 0x17607c)" * (pointer_expression "*(code **)(puVar31 + 0x17607c)" * (cast_expression "(code **)(puVar31 + 0x17607c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x17607c)" ( (binary_expression "puVar31 + 0x17607c" identifier + number_literal) ))))) )) (argument_list "(ofile,iVar19 - iVar13,iVar3 + iVar13)" ( identifier , (binary_expression "iVar19 - iVar13" identifier - identifier) , (binary_expression "iVar3 + iVar13" identifier + identifier) )))) ;) (if_statement "if (iVar22 < 1) {\n                    if (iVar13 < iVar19) goto LAB_00286b70;\n                    break;\n                  }" if (parenthesized_expression "(iVar22 < 1)" ( (binary_expression "iVar22 < 1" identifier < number_literal) )) (compound_statement "{\n                    if (iVar13 < iVar19) goto LAB_00286b70;\n                    break;\n                  }" { (if_statement "if (iVar13 < iVar19) goto LAB_00286b70;" if (parenthesized_expression "(iVar13 < iVar19)" ( (binary_expression "iVar13 < iVar19" identifier < identifier) )) (goto_statement "goto LAB_00286b70;" goto statement_identifier ;)) (break_statement "break;" break ;) })) (expression_statement "iVar13 = iVar13 + iVar22;" (assignment_expression "iVar13 = iVar13 + iVar22" identifier = (binary_expression "iVar13 + iVar22" identifier + identifier)) ;) }) while (parenthesized_expression "(iVar13 < iVar19)" ( (binary_expression "iVar13 < iVar19" identifier < identifier) )) ;) })) }) while (parenthesized_expression "( true )" ( true )) ;) })) (goto_statement "goto LAB_00286b84;" goto statement_identifier ;) })) (if_statement "if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(ofile);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar31 + 0x175020) + -0x48a4,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar31 + 0x175548))();\n          ifile = (Image *)(**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n          if (ifile == (Image *)0x0) {\n            uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n            (**(code **)(puVar31 + 0x1756a8))(uVar15);\n            (**(code **)(puVar31 + 0x175634))(ofile);\n            (**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            pBVar27 = ifile->blob;\n            uVar11 = (**(code **)(puVar31 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar31 + 0x175430))(uVar15);\n            (**(code **)(puVar31 + 0x1759b0))(pBVar27,uVar11,uVar15);\n            iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n            if (iVar3 == 0xff) {\n              iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n              iVar19 = *(int *)(puVar31 + 0x1752b0);\n              if (iVar3 == 0xd8) {\n                iVar3 = *(int *)(puVar31 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar3 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,0xff);\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc,ofile);\n                      uStack_10a0 = *(undefined4 *)(iVar3 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar3 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar3 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar3 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar3 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar3 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar3 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar13 = jpeg_transfer_1(ifile,ofile);\n                      } while (iVar13 != -1);\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if ((iVar13 != -1) &&\n                         (iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1)) {\n                        iVar22 = iVar13 * 0x100 + -2 + iVar22;\n                        do {\n                          if (iVar22 == 0) break;\n                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                          iVar22 = iVar22 + -1;\n                        } while (iVar13 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n                (**(code **)(puVar31 + 0x1756a8))(uVar15);\n                (**(code **)(puVar31 + 0x175634))(ifile);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n            (**(code **)(puVar31 + 0x1756a8))(uVar15);\n            (**(code **)(puVar31 + 0x175634))(ifile);\n            (**(code **)(puVar31 + 0x175634))(ofile);\n            (**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar31 + 0x175020) + -0x4850,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }" if (parenthesized_expression "(*(int *)(iVar20 + 0x1ec) == 0)" ( (binary_expression "*(int *)(iVar20 + 0x1ec) == 0" (pointer_expression "*(int *)(iVar20 + 0x1ec)" * (cast_expression "(int *)(iVar20 + 0x1ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1ec)" ( (binary_expression "iVar20 + 0x1ec" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(ofile);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar31 + 0x175020) + -0x48a4,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n            goto LAB_00287858;\n          }\n        }" { (expression_statement "uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);" (assignment_expression "uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob)" identifier = (call_expression "(**(code **)(puVar31 + 0x175e54))(ofile->blob)" (parenthesized_expression "(**(code **)(puVar31 + 0x175e54))" ( (pointer_expression "**(code **)(puVar31 + 0x175e54)" * (pointer_expression "*(code **)(puVar31 + 0x175e54)" * (cast_expression "(code **)(puVar31 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175e54)" ( (binary_expression "puVar31 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(ofile->blob)" ( (field_expression "ofile->blob" identifier -> field_identifier) )))) ;) (expression_statement "(**(code **)(puVar31 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar31 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar31 + 0x1756a8)" * (pointer_expression "*(code **)(puVar31 + 0x1756a8)" * (cast_expression "(code **)(puVar31 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756a8)" ( (binary_expression "puVar31 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175634))(ofile);" (call_expression "(**(code **)(puVar31 + 0x175634))(ofile)" (parenthesized_expression "(**(code **)(puVar31 + 0x175634))" ( (pointer_expression "**(code **)(puVar31 + 0x175634)" * (pointer_expression "*(code **)(puVar31 + 0x175634)" * (cast_expression "(code **)(puVar31 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175634)" ( (binary_expression "puVar31 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(ofile)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar31 + 0x175020) + -0x48a4,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar31 + 0x175020) + -0x48a4,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar31 + 0x175608))" ( (pointer_expression "**(code **)(puVar31 + 0x175608)" * (pointer_expression "*(code **)(puVar31 + 0x175608)" * (cast_expression "(code **)(puVar31 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175608)" ( (binary_expression "puVar31 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar31 + 0x175020) + -0x48a4,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x48a4" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n            goto LAB_00287858;\n          }" if (parenthesized_expression "(pIStack_10fc != (Image *)0x0)" ( (binary_expression "pIStack_10fc != (Image *)0x0" identifier != (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n            goto LAB_00287858;\n          }" { (expression_statement "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175d70))" ( (pointer_expression "**(code **)(puVar31 + 0x175d70)" * (pointer_expression "*(code **)(puVar31 + 0x175d70)" * (cast_expression "(code **)(puVar31 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175d70)" ( (binary_expression "puVar31 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf8)" * (pointer_expression "*(code **)(puVar31 + 0x175bf8)" * (cast_expression "(code **)(puVar31 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf8)" ( (binary_expression "puVar31 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "pIStack_10fc = (Image *)0x0;" (assignment_expression "pIStack_10fc = (Image *)0x0" identifier = (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) }) (else_clause "else {\n          uVar15 = (**(code **)(puVar31 + 0x175548))();\n          ifile = (Image *)(**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n          if (ifile == (Image *)0x0) {\n            uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n            (**(code **)(puVar31 + 0x1756a8))(uVar15);\n            (**(code **)(puVar31 + 0x175634))(ofile);\n            (**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            pBVar27 = ifile->blob;\n            uVar11 = (**(code **)(puVar31 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar31 + 0x175430))(uVar15);\n            (**(code **)(puVar31 + 0x1759b0))(pBVar27,uVar11,uVar15);\n            iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n            if (iVar3 == 0xff) {\n              iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n              iVar19 = *(int *)(puVar31 + 0x1752b0);\n              if (iVar3 == 0xd8) {\n                iVar3 = *(int *)(puVar31 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar3 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,0xff);\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc,ofile);\n                      uStack_10a0 = *(undefined4 *)(iVar3 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar3 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar3 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar3 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar3 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar3 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar3 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar13 = jpeg_transfer_1(ifile,ofile);\n                      } while (iVar13 != -1);\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if ((iVar13 != -1) &&\n                         (iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1)) {\n                        iVar22 = iVar13 * 0x100 + -2 + iVar22;\n                        do {\n                          if (iVar22 == 0) break;\n                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                          iVar22 = iVar22 + -1;\n                        } while (iVar13 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n                (**(code **)(puVar31 + 0x1756a8))(uVar15);\n                (**(code **)(puVar31 + 0x175634))(ifile);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n            (**(code **)(puVar31 + 0x1756a8))(uVar15);\n            (**(code **)(puVar31 + 0x175634))(ifile);\n            (**(code **)(puVar31 + 0x175634))(ofile);\n            (**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar31 + 0x175020) + -0x4850,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }" else (compound_statement "{\n          uVar15 = (**(code **)(puVar31 + 0x175548))();\n          ifile = (Image *)(**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n          if (ifile == (Image *)0x0) {\n            uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n            (**(code **)(puVar31 + 0x1756a8))(uVar15);\n            (**(code **)(puVar31 + 0x175634))(ofile);\n            (**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            pBVar27 = ifile->blob;\n            uVar11 = (**(code **)(puVar31 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar31 + 0x175430))(uVar15);\n            (**(code **)(puVar31 + 0x1759b0))(pBVar27,uVar11,uVar15);\n            iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n            if (iVar3 == 0xff) {\n              iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n              iVar19 = *(int *)(puVar31 + 0x1752b0);\n              if (iVar3 == 0xd8) {\n                iVar3 = *(int *)(puVar31 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar3 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,0xff);\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc,ofile);\n                      uStack_10a0 = *(undefined4 *)(iVar3 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar3 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar3 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar3 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar3 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar3 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar3 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar13 = jpeg_transfer_1(ifile,ofile);\n                      } while (iVar13 != -1);\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if ((iVar13 != -1) &&\n                         (iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1)) {\n                        iVar22 = iVar13 * 0x100 + -2 + iVar22;\n                        do {\n                          if (iVar22 == 0) break;\n                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                          iVar22 = iVar22 + -1;\n                        } while (iVar13 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n                (**(code **)(puVar31 + 0x1756a8))(uVar15);\n                (**(code **)(puVar31 + 0x175634))(ifile);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n            (**(code **)(puVar31 + 0x1756a8))(uVar15);\n            (**(code **)(puVar31 + 0x175634))(ifile);\n            (**(code **)(puVar31 + 0x175634))(ofile);\n            (**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar31 + 0x175020) + -0x4850,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }" { (expression_statement "uVar15 = (**(code **)(puVar31 + 0x175548))();" (assignment_expression "uVar15 = (**(code **)(puVar31 + 0x175548))()" identifier = (call_expression "(**(code **)(puVar31 + 0x175548))()" (parenthesized_expression "(**(code **)(puVar31 + 0x175548))" ( (pointer_expression "**(code **)(puVar31 + 0x175548)" * (pointer_expression "*(code **)(puVar31 + 0x175548)" * (cast_expression "(code **)(puVar31 + 0x175548)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175548)" ( (binary_expression "puVar31 + 0x175548" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (expression_statement "ifile = (Image *)(**(code **)(puVar31 + 0x175cf4))(0,in_a1);" (assignment_expression "ifile = (Image *)(**(code **)(puVar31 + 0x175cf4))(0,in_a1)" identifier = (cast_expression "(Image *)(**(code **)(puVar31 + 0x175cf4))(0,in_a1)" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar31 + 0x175cf4))(0,in_a1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175cf4))" ( (pointer_expression "**(code **)(puVar31 + 0x175cf4)" * (pointer_expression "*(code **)(puVar31 + 0x175cf4)" * (cast_expression "(code **)(puVar31 + 0x175cf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175cf4)" ( (binary_expression "puVar31 + 0x175cf4" identifier + number_literal) ))))) )) (argument_list "(0,in_a1)" ( number_literal , identifier ))))) ;) (if_statement "if (ifile == (Image *)0x0) {\n            uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n            (**(code **)(puVar31 + 0x1756a8))(uVar15);\n            (**(code **)(puVar31 + 0x175634))(ofile);\n            (**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            pBVar27 = ifile->blob;\n            uVar11 = (**(code **)(puVar31 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar31 + 0x175430))(uVar15);\n            (**(code **)(puVar31 + 0x1759b0))(pBVar27,uVar11,uVar15);\n            iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n            if (iVar3 == 0xff) {\n              iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n              iVar19 = *(int *)(puVar31 + 0x1752b0);\n              if (iVar3 == 0xd8) {\n                iVar3 = *(int *)(puVar31 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar3 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,0xff);\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc,ofile);\n                      uStack_10a0 = *(undefined4 *)(iVar3 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar3 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar3 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar3 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar3 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar3 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar3 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar13 = jpeg_transfer_1(ifile,ofile);\n                      } while (iVar13 != -1);\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if ((iVar13 != -1) &&\n                         (iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1)) {\n                        iVar22 = iVar13 * 0x100 + -2 + iVar22;\n                        do {\n                          if (iVar22 == 0) break;\n                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                          iVar22 = iVar22 + -1;\n                        } while (iVar13 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n                (**(code **)(puVar31 + 0x1756a8))(uVar15);\n                (**(code **)(puVar31 + 0x175634))(ifile);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n            (**(code **)(puVar31 + 0x1756a8))(uVar15);\n            (**(code **)(puVar31 + 0x175634))(ifile);\n            (**(code **)(puVar31 + 0x175634))(ofile);\n            (**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar31 + 0x175020) + -0x4850,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }\n          }" if (parenthesized_expression "(ifile == (Image *)0x0)" ( (binary_expression "ifile == (Image *)0x0" identifier == (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n            (**(code **)(puVar31 + 0x1756a8))(uVar15);\n            (**(code **)(puVar31 + 0x175634))(ofile);\n            (**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }\n          }" { (expression_statement "uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);" (assignment_expression "uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob)" identifier = (call_expression "(**(code **)(puVar31 + 0x175e54))(ofile->blob)" (parenthesized_expression "(**(code **)(puVar31 + 0x175e54))" ( (pointer_expression "**(code **)(puVar31 + 0x175e54)" * (pointer_expression "*(code **)(puVar31 + 0x175e54)" * (cast_expression "(code **)(puVar31 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175e54)" ( (binary_expression "puVar31 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(ofile->blob)" ( (field_expression "ofile->blob" identifier -> field_identifier) )))) ;) (expression_statement "(**(code **)(puVar31 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar31 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar31 + 0x1756a8)" * (pointer_expression "*(code **)(puVar31 + 0x1756a8)" * (cast_expression "(code **)(puVar31 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756a8)" ( (binary_expression "puVar31 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175634))(ofile);" (call_expression "(**(code **)(puVar31 + 0x175634))(ofile)" (parenthesized_expression "(**(code **)(puVar31 + 0x175634))" ( (pointer_expression "**(code **)(puVar31 + 0x175634)" * (pointer_expression "*(code **)(puVar31 + 0x175634)" * (cast_expression "(code **)(puVar31 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175634)" ( (binary_expression "puVar31 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(ofile)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);" (call_expression "(**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar31 + 0x175608))" ( (pointer_expression "**(code **)(puVar31 + 0x175608)" * (pointer_expression "*(code **)(puVar31 + 0x175608)" * (cast_expression "(code **)(puVar31 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175608)" ( (binary_expression "puVar31 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }" if (parenthesized_expression "(pIStack_10fc != (Image *)0x0)" ( (binary_expression "pIStack_10fc != (Image *)0x0" identifier != (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }" { (expression_statement "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175d70))" ( (pointer_expression "**(code **)(puVar31 + 0x175d70)" * (pointer_expression "*(code **)(puVar31 + 0x175d70)" * (cast_expression "(code **)(puVar31 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175d70)" ( (binary_expression "puVar31 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf8)" * (pointer_expression "*(code **)(puVar31 + 0x175bf8)" * (cast_expression "(code **)(puVar31 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf8)" ( (binary_expression "puVar31 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "pIStack_10fc = (Image *)0x0;" (assignment_expression "pIStack_10fc = (Image *)0x0" identifier = (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) }) (else_clause "else {\n            pBVar27 = ifile->blob;\n            uVar11 = (**(code **)(puVar31 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar31 + 0x175430))(uVar15);\n            (**(code **)(puVar31 + 0x1759b0))(pBVar27,uVar11,uVar15);\n            iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n            if (iVar3 == 0xff) {\n              iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n              iVar19 = *(int *)(puVar31 + 0x1752b0);\n              if (iVar3 == 0xd8) {\n                iVar3 = *(int *)(puVar31 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar3 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,0xff);\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc,ofile);\n                      uStack_10a0 = *(undefined4 *)(iVar3 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar3 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar3 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar3 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar3 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar3 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar3 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar13 = jpeg_transfer_1(ifile,ofile);\n                      } while (iVar13 != -1);\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if ((iVar13 != -1) &&\n                         (iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1)) {\n                        iVar22 = iVar13 * 0x100 + -2 + iVar22;\n                        do {\n                          if (iVar22 == 0) break;\n                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                          iVar22 = iVar22 + -1;\n                        } while (iVar13 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n                (**(code **)(puVar31 + 0x1756a8))(uVar15);\n                (**(code **)(puVar31 + 0x175634))(ifile);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n            (**(code **)(puVar31 + 0x1756a8))(uVar15);\n            (**(code **)(puVar31 + 0x175634))(ifile);\n            (**(code **)(puVar31 + 0x175634))(ofile);\n            (**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar31 + 0x175020) + -0x4850,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }\n          }" else (compound_statement "{\n            pBVar27 = ifile->blob;\n            uVar11 = (**(code **)(puVar31 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar31 + 0x175430))(uVar15);\n            (**(code **)(puVar31 + 0x1759b0))(pBVar27,uVar11,uVar15);\n            iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n            if (iVar3 == 0xff) {\n              iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n              iVar19 = *(int *)(puVar31 + 0x1752b0);\n              if (iVar3 == 0xd8) {\n                iVar3 = *(int *)(puVar31 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar3 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,0xff);\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc,ofile);\n                      uStack_10a0 = *(undefined4 *)(iVar3 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar3 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar3 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar3 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar3 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar3 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar3 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar13 = jpeg_transfer_1(ifile,ofile);\n                      } while (iVar13 != -1);\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if ((iVar13 != -1) &&\n                         (iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1)) {\n                        iVar22 = iVar13 * 0x100 + -2 + iVar22;\n                        do {\n                          if (iVar22 == 0) break;\n                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                          iVar22 = iVar22 + -1;\n                        } while (iVar13 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n                (**(code **)(puVar31 + 0x1756a8))(uVar15);\n                (**(code **)(puVar31 + 0x175634))(ifile);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n            (**(code **)(puVar31 + 0x1756a8))(uVar15);\n            (**(code **)(puVar31 + 0x175634))(ifile);\n            (**(code **)(puVar31 + 0x175634))(ofile);\n            (**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar31 + 0x175020) + -0x4850,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }\n          }" { (expression_statement "pBVar27 = ifile->blob;" (assignment_expression "pBVar27 = ifile->blob" identifier = (field_expression "ifile->blob" identifier -> field_identifier)) ;) (expression_statement "uVar11 = (**(code **)(puVar31 + 0x175550))(uVar15);" (assignment_expression "uVar11 = (**(code **)(puVar31 + 0x175550))(uVar15)" identifier = (call_expression "(**(code **)(puVar31 + 0x175550))(uVar15)" (parenthesized_expression "(**(code **)(puVar31 + 0x175550))" ( (pointer_expression "**(code **)(puVar31 + 0x175550)" * (pointer_expression "*(code **)(puVar31 + 0x175550)" * (cast_expression "(code **)(puVar31 + 0x175550)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175550)" ( (binary_expression "puVar31 + 0x175550" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier )))) ;) (expression_statement "uVar15 = (**(code **)(puVar31 + 0x175430))(uVar15);" (assignment_expression "uVar15 = (**(code **)(puVar31 + 0x175430))(uVar15)" identifier = (call_expression "(**(code **)(puVar31 + 0x175430))(uVar15)" (parenthesized_expression "(**(code **)(puVar31 + 0x175430))" ( (pointer_expression "**(code **)(puVar31 + 0x175430)" * (pointer_expression "*(code **)(puVar31 + 0x175430)" * (cast_expression "(code **)(puVar31 + 0x175430)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175430)" ( (binary_expression "puVar31 + 0x175430" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier )))) ;) (expression_statement "(**(code **)(puVar31 + 0x1759b0))(pBVar27,uVar11,uVar15);" (call_expression "(**(code **)(puVar31 + 0x1759b0))(pBVar27,uVar11,uVar15)" (parenthesized_expression "(**(code **)(puVar31 + 0x1759b0))" ( (pointer_expression "**(code **)(puVar31 + 0x1759b0)" * (pointer_expression "*(code **)(puVar31 + 0x1759b0)" * (cast_expression "(code **)(puVar31 + 0x1759b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1759b0)" ( (binary_expression "puVar31 + 0x1759b0" identifier + number_literal) ))))) )) (argument_list "(pBVar27,uVar11,uVar15)" ( identifier , identifier , identifier ))) ;) (expression_statement "iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);" (assignment_expression "iVar3 = jpeg_transfer_1(pIStack_10fc,ofile)" identifier = (call_expression "jpeg_transfer_1(pIStack_10fc,ofile)" identifier (argument_list "(pIStack_10fc,ofile)" ( identifier , identifier )))) ;) (if_statement "if (iVar3 == 0xff) {\n              iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n              iVar19 = *(int *)(puVar31 + 0x1752b0);\n              if (iVar3 == 0xd8) {\n                iVar3 = *(int *)(puVar31 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar3 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,0xff);\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc,ofile);\n                      uStack_10a0 = *(undefined4 *)(iVar3 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar3 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar3 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar3 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar3 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar3 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar3 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar13 = jpeg_transfer_1(ifile,ofile);\n                      } while (iVar13 != -1);\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if ((iVar13 != -1) &&\n                         (iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1)) {\n                        iVar22 = iVar13 * 0x100 + -2 + iVar22;\n                        do {\n                          if (iVar22 == 0) break;\n                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                          iVar22 = iVar22 + -1;\n                        } while (iVar13 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n                (**(code **)(puVar31 + 0x1756a8))(uVar15);\n                (**(code **)(puVar31 + 0x175634))(ifile);\n                goto LAB_00286b84;\n              }\n            }" if (parenthesized_expression "(iVar3 == 0xff)" ( (binary_expression "iVar3 == 0xff" identifier == number_literal) )) (compound_statement "{\n              iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n              iVar19 = *(int *)(puVar31 + 0x1752b0);\n              if (iVar3 == 0xd8) {\n                iVar3 = *(int *)(puVar31 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar3 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,0xff);\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc,ofile);\n                      uStack_10a0 = *(undefined4 *)(iVar3 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar3 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar3 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar3 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar3 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar3 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar3 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar13 = jpeg_transfer_1(ifile,ofile);\n                      } while (iVar13 != -1);\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if ((iVar13 != -1) &&\n                         (iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1)) {\n                        iVar22 = iVar13 * 0x100 + -2 + iVar22;\n                        do {\n                          if (iVar22 == 0) break;\n                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                          iVar22 = iVar22 + -1;\n                        } while (iVar13 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n                (**(code **)(puVar31 + 0x1756a8))(uVar15);\n                (**(code **)(puVar31 + 0x175634))(ifile);\n                goto LAB_00286b84;\n              }\n            }" { (expression_statement "iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);" (assignment_expression "iVar3 = jpeg_transfer_1(pIStack_10fc,ofile)" identifier = (call_expression "jpeg_transfer_1(pIStack_10fc,ofile)" identifier (argument_list "(pIStack_10fc,ofile)" ( identifier , identifier )))) ;) (expression_statement "iVar19 = *(int *)(puVar31 + 0x1752b0);" (assignment_expression "iVar19 = *(int *)(puVar31 + 0x1752b0)" identifier = (pointer_expression "*(int *)(puVar31 + 0x1752b0)" * (cast_expression "(int *)(puVar31 + 0x1752b0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x1752b0)" ( (binary_expression "puVar31 + 0x1752b0" identifier + number_literal) ))))) ;) (if_statement "if (iVar3 == 0xd8) {\n                iVar3 = *(int *)(puVar31 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar3 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,0xff);\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc,ofile);\n                      uStack_10a0 = *(undefined4 *)(iVar3 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar3 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar3 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar3 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar3 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar3 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar3 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar13 = jpeg_transfer_1(ifile,ofile);\n                      } while (iVar13 != -1);\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if ((iVar13 != -1) &&\n                         (iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1)) {\n                        iVar22 = iVar13 * 0x100 + -2 + iVar22;\n                        do {\n                          if (iVar22 == 0) break;\n                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                          iVar22 = iVar22 + -1;\n                        } while (iVar13 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n                (**(code **)(puVar31 + 0x1756a8))(uVar15);\n                (**(code **)(puVar31 + 0x175634))(ifile);\n                goto LAB_00286b84;\n              }" if (parenthesized_expression "(iVar3 == 0xd8)" ( (binary_expression "iVar3 == 0xd8" identifier == number_literal) )) (compound_statement "{\n                iVar3 = *(int *)(puVar31 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar3 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,0xff);\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc,ofile);\n                      uStack_10a0 = *(undefined4 *)(iVar3 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar3 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar3 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar3 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar3 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar3 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar3 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar13 = jpeg_transfer_1(ifile,ofile);\n                      } while (iVar13 != -1);\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if ((iVar13 != -1) &&\n                         (iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1)) {\n                        iVar22 = iVar13 * 0x100 + -2 + iVar22;\n                        do {\n                          if (iVar22 == 0) break;\n                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                          iVar22 = iVar22 + -1;\n                        } while (iVar13 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);\n                (**(code **)(puVar31 + 0x1756a8))(uVar15);\n                (**(code **)(puVar31 + 0x175634))(ifile);\n                goto LAB_00286b84;\n              }" { (expression_statement "iVar3 = *(int *)(puVar31 + 0x175020);" (assignment_expression "iVar3 = *(int *)(puVar31 + 0x175020)" identifier = (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) ))))) ;) (expression_statement "uVar15 = *(undefined4 *)(iVar3 + -0x4720);" (assignment_expression "uVar15 = *(undefined4 *)(iVar3 + -0x4720)" identifier = (pointer_expression "*(undefined4 *)(iVar3 + -0x4720)" * (cast_expression "(undefined4 *)(iVar3 + -0x4720)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + -0x4720)" ( (binary_expression "iVar3 + -0x4720" identifier + number_literal) ))))) ;) (labeled_statement "LAB_002869d4:\n                uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);" statement_identifier : (expression_statement "uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);" (assignment_expression "uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc)" identifier = (call_expression "(**(code **)(puVar31 + 0x175ed8))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175ed8))" ( (pointer_expression "**(code **)(puVar31 + 0x175ed8)" * (pointer_expression "*(code **)(puVar31 + 0x175ed8)" * (cast_expression "(code **)(puVar31 + 0x175ed8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175ed8)" ( (binary_expression "puVar31 + 0x175ed8" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier )))) ;)) (if_statement "if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,0xff);\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc,ofile);\n                      uStack_10a0 = *(undefined4 *)(iVar3 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar3 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar3 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar3 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar3 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar3 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar3 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar13 = jpeg_transfer_1(ifile,ofile);\n                      } while (iVar13 != -1);\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if ((iVar13 != -1) &&\n                         (iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1)) {\n                        iVar22 = iVar13 * 0x100 + -2 + iVar22;\n                        do {\n                          if (iVar22 == 0) break;\n                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                          iVar22 = iVar22 + -1;\n                        } while (iVar13 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }" if (parenthesized_expression "(uVar12 != 0xffffffff)" ( (binary_expression "uVar12 != 0xffffffff" identifier != number_literal) )) (compound_statement "{\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,0xff);\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc,ofile);\n                      uStack_10a0 = *(undefined4 *)(iVar3 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar3 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar3 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar3 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar3 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar3 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar3 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar13 = jpeg_transfer_1(ifile,ofile);\n                      } while (iVar13 != -1);\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if ((iVar13 != -1) &&\n                         (iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1)) {\n                        iVar22 = iVar13 * 0x100 + -2 + iVar22;\n                        do {\n                          if (iVar22 == 0) break;\n                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                          iVar22 = iVar22 + -1;\n                        } while (iVar13 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }" { (if_statement "if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,0xff);\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc,ofile);\n                      uStack_10a0 = *(undefined4 *)(iVar3 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar3 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar3 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar3 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar3 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar3 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar3 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar13 = jpeg_transfer_1(ifile,ofile);\n                      } while (iVar13 != -1);\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if ((iVar13 != -1) &&\n                         (iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1)) {\n                        iVar22 = iVar13 * 0x100 + -2 + iVar22;\n                        do {\n                          if (iVar22 == 0) break;\n                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                          iVar22 = iVar22 + -1;\n                        } while (iVar13 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                  }" if (parenthesized_expression "(uVar12 == 0xff)" ( (binary_expression "uVar12 == 0xff" identifier == number_literal) )) (compound_statement "{\n                    do {\n                      uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,0xff);\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc,ofile);\n                      uStack_10a0 = *(undefined4 *)(iVar3 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar3 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar3 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar3 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar3 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar3 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar3 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar13 = jpeg_transfer_1(ifile,ofile);\n                      } while (iVar13 != -1);\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if ((iVar13 != -1) &&\n                         (iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1)) {\n                        iVar22 = iVar13 * 0x100 + -2 + iVar22;\n                        do {\n                          if (iVar22 == 0) break;\n                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                          iVar22 = iVar22 + -1;\n                        } while (iVar13 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc);\n                    }\n                  }" { (do_statement "do {\n                      uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);" do (compound_statement "{\n                      uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    }" { (expression_statement "uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);" (assignment_expression "uVar12 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc)" identifier = (call_expression "(**(code **)(puVar31 + 0x175ed8))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175ed8))" ( (pointer_expression "**(code **)(puVar31 + 0x175ed8)" * (pointer_expression "*(code **)(puVar31 + 0x175ed8)" * (cast_expression "(code **)(puVar31 + 0x175ed8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175ed8)" ( (binary_expression "puVar31 + 0x175ed8" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier )))) ;) (if_statement "if (uVar12 == 0xffffffff) goto LAB_00287dd0;" if (parenthesized_expression "(uVar12 == 0xffffffff)" ( (binary_expression "uVar12 == 0xffffffff" identifier == number_literal) )) (goto_statement "goto LAB_00287dd0;" goto statement_identifier ;)) }) while (parenthesized_expression "(uVar12 == 0xff)" ( (binary_expression "uVar12 == 0xff" identifier == number_literal) )) ;) (if_statement "if (uVar12 == 0xd9) goto LAB_002867e4;" if (parenthesized_expression "(uVar12 == 0xd9)" ( (binary_expression "uVar12 == 0xd9" identifier == number_literal) )) (goto_statement "goto LAB_002867e4;" goto statement_identifier ;)) (if_statement "if (uVar12 != 0xed) {\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,0xff);\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                    }" if (parenthesized_expression "(uVar12 != 0xed)" ( (binary_expression "uVar12 != 0xed" identifier != number_literal) )) (compound_statement "{\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,0xff);\n                      (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                    }" { (expression_statement "(**(code **)(puVar31 + 0x1756c4))(ofile,0xff);" (call_expression "(**(code **)(puVar31 + 0x1756c4))(ofile,0xff)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar31 + 0x1756c4)" * (pointer_expression "*(code **)(puVar31 + 0x1756c4)" * (cast_expression "(code **)(puVar31 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756c4)" ( (binary_expression "puVar31 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(ofile,0xff)" ( identifier , number_literal ))) ;) (expression_statement "(**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);" (call_expression "(**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar31 + 0x1756c4)" * (pointer_expression "*(code **)(puVar31 + 0x1756c4)" * (cast_expression "(code **)(puVar31 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756c4)" ( (binary_expression "puVar31 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(ofile,uVar12 & 0xff)" ( identifier , (binary_expression "uVar12 & 0xff" identifier & number_literal) ))) ;) })) (if_statement "if (uVar12 == 0xe0) {\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc,ofile);\n                      uStack_10a0 = *(undefined4 *)(iVar3 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar3 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar3 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar3 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar3 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar3 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar3 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar13 = jpeg_transfer_1(ifile,ofile);\n                      } while (iVar13 != -1);\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if ((iVar13 != -1) &&\n                         (iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1)) {\n                        iVar22 = iVar13 * 0x100 + -2 + iVar22;\n                        do {\n                          if (iVar22 == 0) break;\n                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                          iVar22 = iVar22 + -1;\n                        } while (iVar13 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc);\n                    }" if (parenthesized_expression "(uVar12 == 0xe0)" ( (binary_expression "uVar12 == 0xe0" identifier == number_literal) )) (compound_statement "{\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc,ofile);\n                      uStack_10a0 = *(undefined4 *)(iVar3 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar3 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar3 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar3 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar3 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar3 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar3 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar13 = jpeg_transfer_1(ifile,ofile);\n                      } while (iVar13 != -1);\n                      (**(code **)(puVar31 + 0x175ba0))(ifile);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,0);\n                      }\n                    }" { (expression_statement "(*(code *)(iVar19 + 0x24b0))(pIStack_10fc,ofile);" (call_expression "(*(code *)(iVar19 + 0x24b0))(pIStack_10fc,ofile)" (parenthesized_expression "(*(code *)(iVar19 + 0x24b0))" ( (pointer_expression "*(code *)(iVar19 + 0x24b0)" * (cast_expression "(code *)(iVar19 + 0x24b0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x24b0)" ( (binary_expression "iVar19 + 0x24b0" identifier + number_literal) )))) )) (argument_list "(pIStack_10fc,ofile)" ( identifier , identifier ))) ;) (expression_statement "uStack_10a0 = *(undefined4 *)(iVar3 + -0x471c);" (assignment_expression "uStack_10a0 = *(undefined4 *)(iVar3 + -0x471c)" identifier = (pointer_expression "*(undefined4 *)(iVar3 + -0x471c)" * (cast_expression "(undefined4 *)(iVar3 + -0x471c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + -0x471c)" ( (binary_expression "iVar3 + -0x471c" identifier + number_literal) ))))) ;) (expression_statement "uStack_109c = *(undefined4 *)(iVar3 + -0x4718);" (assignment_expression "uStack_109c = *(undefined4 *)(iVar3 + -0x4718)" identifier = (pointer_expression "*(undefined4 *)(iVar3 + -0x4718)" * (cast_expression "(undefined4 *)(iVar3 + -0x4718)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + -0x4718)" ( (binary_expression "iVar3 + -0x4718" identifier + number_literal) ))))) ;) (expression_statement "uStack_1098 = *(undefined4 *)(iVar3 + -0x4714);" (assignment_expression "uStack_1098 = *(undefined4 *)(iVar3 + -0x4714)" identifier = (pointer_expression "*(undefined4 *)(iVar3 + -0x4714)" * (cast_expression "(undefined4 *)(iVar3 + -0x4714)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + -0x4714)" ( (binary_expression "iVar3 + -0x4714" identifier + number_literal) ))))) ;) (expression_statement "auStack_1094 = *(undefined1 (*) [4])(iVar3 + -0x4710);" (assignment_expression "auStack_1094 = *(undefined1 (*) [4])(iVar3 + -0x4710)" identifier = (pointer_expression "*(undefined1 (*) [4])(iVar3 + -0x4710)" * (cast_expression "(undefined1 (*) [4])(iVar3 + -0x4710)" ( (type_descriptor "undefined1 (*) [4]" type_identifier (abstract_array_declarator "(*) [4]" (abstract_parenthesized_declarator "(*)" ( (abstract_pointer_declarator "*" *) )) [ number_literal ])) ) (parenthesized_expression "(iVar3 + -0x4710)" ( (binary_expression "iVar3 + -0x4710" identifier + number_literal) ))))) ;) (expression_statement "uStack_1090 = *(undefined4 *)(iVar3 + -0x470c);" (assignment_expression "uStack_1090 = *(undefined4 *)(iVar3 + -0x470c)" identifier = (pointer_expression "*(undefined4 *)(iVar3 + -0x470c)" * (cast_expression "(undefined4 *)(iVar3 + -0x470c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + -0x470c)" ( (binary_expression "iVar3 + -0x470c" identifier + number_literal) ))))) ;) (expression_statement "uStack_108c = *(undefined4 *)(iVar3 + -0x4708);" (assignment_expression "uStack_108c = *(undefined4 *)(iVar3 + -0x4708)" identifier = (pointer_expression "*(undefined4 *)(iVar3 + -0x4708)" * (cast_expression "(undefined4 *)(iVar3 + -0x4708)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + -0x4708)" ( (binary_expression "iVar3 + -0x4708" identifier + number_literal) ))))) ;) (expression_statement "uStack_1088 = *(undefined1 *)(iVar3 + -0x4704);" (assignment_expression "uStack_1088 = *(undefined1 *)(iVar3 + -0x4704)" identifier = (pointer_expression "*(undefined1 *)(iVar3 + -0x4704)" * (cast_expression "(undefined1 *)(iVar3 + -0x4704)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + -0x4704)" ( (binary_expression "iVar3 + -0x4704" identifier + number_literal) ))))) ;) (expression_statement "uStack_10a4 = uVar15;" (assignment_expression "uStack_10a4 = uVar15" identifier = identifier) ;) (expression_statement "(**(code **)(puVar31 + 0x175ba0))(ifile);" (call_expression "(**(code **)(puVar31 + 0x175ba0))(ifile)" (parenthesized_expression "(**(code **)(puVar31 + 0x175ba0))" ( (pointer_expression "**(code **)(puVar31 + 0x175ba0)" * (pointer_expression "*(code **)(puVar31 + 0x175ba0)" * (cast_expression "(code **)(puVar31 + 0x175ba0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175ba0)" ( (binary_expression "puVar31 + 0x175ba0" identifier + number_literal) ))))) )) (argument_list "(ifile)" ( identifier ))) ;) (expression_statement "uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);" (assignment_expression "uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8)" identifier = (call_expression "(undefined1)(extraout_v1_00 + 0x10 >> 8)" (parenthesized_expression "(undefined1)" ( identifier )) (argument_list "(extraout_v1_00 + 0x10 >> 8)" ( (binary_expression "extraout_v1_00 + 0x10 >> 8" (binary_expression "extraout_v1_00 + 0x10" identifier + number_literal) >> number_literal) )))) ;) (expression_statement "uVar12 = extraout_v1_00;" (assignment_expression "uVar12 = extraout_v1_00" identifier = identifier) ;) (if_statement "if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }" if (parenthesized_expression "((extraout_v1_00 & 1) != 0)" ( (binary_expression "(extraout_v1_00 & 1) != 0" (parenthesized_expression "(extraout_v1_00 & 1)" ( (binary_expression "extraout_v1_00 & 1" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }" { (expression_statement "uVar12 = extraout_v1_00 + 1;" (assignment_expression "uVar12 = extraout_v1_00 + 1" identifier = (binary_expression "extraout_v1_00 + 1" identifier + number_literal)) ;) (expression_statement "uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);" (assignment_expression "uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8)" identifier = (call_expression "(undefined1)(extraout_v1_00 + 0x11 >> 8)" (parenthesized_expression "(undefined1)" ( identifier )) (argument_list "(extraout_v1_00 + 0x11 >> 8)" ( (binary_expression "extraout_v1_00 + 0x11 >> 8" (binary_expression "extraout_v1_00 + 0x11" identifier + number_literal) >> number_literal) )))) ;) })) (expression_statement "uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');" (assignment_expression "uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10')" identifier = (call_expression "CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10')" identifier (argument_list "(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10')" ( (call_expression "CONCAT21(uStack_10a4._0_2_,uVar16)" identifier (argument_list "(uStack_10a4._0_2_,uVar16)" ( (field_expression "uStack_10a4._0_2_" identifier . field_identifier) , identifier ))) , (binary_expression "(char)uVar12 + '\x10'" (cast_expression "(char)uVar12" ( (type_descriptor "char" primitive_type) ) identifier) + (char_literal "'\x10'" ' escape_sequence ')) )))) ;) (expression_statement "puVar25 = &uStack_10a4;" (assignment_expression "puVar25 = &uStack_10a4" identifier = (pointer_expression "&uStack_10a4" & identifier)) ;) (do_statement "do {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));" do (compound_statement "{\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      }" { (expression_statement "(**(code **)(puVar31 + 0x1756c4))(ofile,*(undefined1 *)puVar25);" (call_expression "(**(code **)(puVar31 + 0x1756c4))(ofile,*(undefined1 *)puVar25)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar31 + 0x1756c4)" * (pointer_expression "*(code **)(puVar31 + 0x1756c4)" * (cast_expression "(code **)(puVar31 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756c4)" ( (binary_expression "puVar31 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(ofile,*(undefined1 *)puVar25)" ( identifier , (pointer_expression "*(undefined1 *)puVar25" * (cast_expression "(undefined1 *)puVar25" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ))) ;) (expression_statement "puVar25 = (undefined4 *)((int)puVar25 + 1);" (assignment_expression "puVar25 = (undefined4 *)((int)puVar25 + 1)" identifier = (cast_expression "(undefined4 *)((int)puVar25 + 1)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar25 + 1)" ( (binary_expression "(int)puVar25 + 1" (cast_expression "(int)puVar25" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) }) while (parenthesized_expression "(puVar25 != (undefined4 *)(auStack_1094 + 2))" ( (binary_expression "puVar25 != (undefined4 *)(auStack_1094 + 2)" identifier != (cast_expression "(undefined4 *)(auStack_1094 + 2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_1094 + 2)" ( (binary_expression "auStack_1094 + 2" identifier + number_literal) )))) )) ;) (do_statement "do {\n                        iVar13 = jpeg_transfer_1(ifile,ofile);\n                      } while (iVar13 != -1);" do (compound_statement "{\n                        iVar13 = jpeg_transfer_1(ifile,ofile);\n                      }" { (expression_statement "iVar13 = jpeg_transfer_1(ifile,ofile);" (assignment_expression "iVar13 = jpeg_transfer_1(ifile,ofile)" identifier = (call_expression "jpeg_transfer_1(ifile,ofile)" identifier (argument_list "(ifile,ofile)" ( identifier , identifier )))) ;) }) while (parenthesized_expression "(iVar13 != -1)" ( (binary_expression "iVar13 != -1" identifier != number_literal) )) ;) (expression_statement "(**(code **)(puVar31 + 0x175ba0))(ifile);" (call_expression "(**(code **)(puVar31 + 0x175ba0))(ifile)" (parenthesized_expression "(**(code **)(puVar31 + 0x175ba0))" ( (pointer_expression "**(code **)(puVar31 + 0x175ba0)" * (pointer_expression "*(code **)(puVar31 + 0x175ba0)" * (cast_expression "(code **)(puVar31 + 0x175ba0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175ba0)" ( (binary_expression "puVar31 + 0x175ba0" identifier + number_literal) ))))) )) (argument_list "(ifile)" ( identifier ))) ;) (if_statement "if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,0);\n                      }" if (parenthesized_expression "((extraout_v1_01 & 1) != 0)" ( (binary_expression "(extraout_v1_01 & 1) != 0" (parenthesized_expression "(extraout_v1_01 & 1)" ( (binary_expression "extraout_v1_01 & 1" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                        (**(code **)(puVar31 + 0x1756c4))(ofile,0);\n                      }" { (expression_statement "(**(code **)(puVar31 + 0x1756c4))(ofile,0);" (call_expression "(**(code **)(puVar31 + 0x1756c4))(ofile,0)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar31 + 0x1756c4)" * (pointer_expression "*(code **)(puVar31 + 0x1756c4)" * (cast_expression "(code **)(puVar31 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756c4)" ( (binary_expression "puVar31 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(ofile,0)" ( identifier , number_literal ))) ;) })) }) (else_clause "else if (uVar12 == 0xed) {\n                      iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if ((iVar13 != -1) &&\n                         (iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1)) {\n                        iVar22 = iVar13 * 0x100 + -2 + iVar22;\n                        do {\n                          if (iVar22 == 0) break;\n                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                          iVar22 = iVar22 + -1;\n                        } while (iVar13 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc);\n                    }" else (if_statement "if (uVar12 == 0xed) {\n                      iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if ((iVar13 != -1) &&\n                         (iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1)) {\n                        iVar22 = iVar13 * 0x100 + -2 + iVar22;\n                        do {\n                          if (iVar22 == 0) break;\n                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                          iVar22 = iVar22 + -1;\n                        } while (iVar13 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc);\n                    }" if (parenthesized_expression "(uVar12 == 0xed)" ( (binary_expression "uVar12 == 0xed" identifier == number_literal) )) (compound_statement "{\n                      iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                      if ((iVar13 != -1) &&\n                         (iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1)) {\n                        iVar22 = iVar13 * 0x100 + -2 + iVar22;\n                        do {\n                          if (iVar22 == 0) break;\n                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                          iVar22 = iVar22 + -1;\n                        } while (iVar13 != -1);\n                      }\n                    }" { (expression_statement "iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);" (assignment_expression "iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc)" identifier = (call_expression "(**(code **)(puVar31 + 0x175ed8))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175ed8))" ( (pointer_expression "**(code **)(puVar31 + 0x175ed8)" * (pointer_expression "*(code **)(puVar31 + 0x175ed8)" * (cast_expression "(code **)(puVar31 + 0x175ed8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175ed8)" ( (binary_expression "puVar31 + 0x175ed8" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier )))) ;) (if_statement "if ((iVar13 != -1) &&\n                         (iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1)) {\n                        iVar22 = iVar13 * 0x100 + -2 + iVar22;\n                        do {\n                          if (iVar22 == 0) break;\n                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                          iVar22 = iVar22 + -1;\n                        } while (iVar13 != -1);\n                      }" if (parenthesized_expression "((iVar13 != -1) &&\n                         (iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1))" ( (binary_expression "(iVar13 != -1) &&\n                         (iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1)" (parenthesized_expression "(iVar13 != -1)" ( (binary_expression "iVar13 != -1" identifier != number_literal) )) && (parenthesized_expression "(iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1)" ( (comma_expression "iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc), iVar22 != -1" (assignment_expression "iVar22 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc)" identifier = (call_expression "(**(code **)(puVar31 + 0x175ed8))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175ed8))" ( (pointer_expression "**(code **)(puVar31 + 0x175ed8)" * (pointer_expression "*(code **)(puVar31 + 0x175ed8)" * (cast_expression "(code **)(puVar31 + 0x175ed8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175ed8)" ( (binary_expression "puVar31 + 0x175ed8" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier )))) , (binary_expression "iVar22 != -1" identifier != number_literal)) ))) )) (compound_statement "{\n                        iVar22 = iVar13 * 0x100 + -2 + iVar22;\n                        do {\n                          if (iVar22 == 0) break;\n                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                          iVar22 = iVar22 + -1;\n                        } while (iVar13 != -1);\n                      }" { (expression_statement "iVar22 = iVar13 * 0x100 + -2 + iVar22;" (assignment_expression "iVar22 = iVar13 * 0x100 + -2 + iVar22" identifier = (binary_expression "iVar13 * 0x100 + -2 + iVar22" (binary_expression "iVar13 * 0x100 + -2" (binary_expression "iVar13 * 0x100" identifier * number_literal) + number_literal) + identifier)) ;) (do_statement "do {\n                          if (iVar22 == 0) break;\n                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                          iVar22 = iVar22 + -1;\n                        } while (iVar13 != -1);" do (compound_statement "{\n                          if (iVar22 == 0) break;\n                          iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);\n                          iVar22 = iVar22 + -1;\n                        }" { (if_statement "if (iVar22 == 0) break;" if (parenthesized_expression "(iVar22 == 0)" ( (binary_expression "iVar22 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc);" (assignment_expression "iVar13 = (**(code **)(puVar31 + 0x175ed8))(pIStack_10fc)" identifier = (call_expression "(**(code **)(puVar31 + 0x175ed8))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175ed8))" ( (pointer_expression "**(code **)(puVar31 + 0x175ed8)" * (pointer_expression "*(code **)(puVar31 + 0x175ed8)" * (cast_expression "(code **)(puVar31 + 0x175ed8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175ed8)" ( (binary_expression "puVar31 + 0x175ed8" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier )))) ;) (expression_statement "iVar22 = iVar22 + -1;" (assignment_expression "iVar22 = iVar22 + -1" identifier = (binary_expression "iVar22 + -1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar13 != -1)" ( (binary_expression "iVar13 != -1" identifier != number_literal) )) ;) })) }) (else_clause "else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc);\n                    }" else (compound_statement "{\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar19 + 0x24b0))(pIStack_10fc);\n                    }" { (if_statement "if (uVar12 == 0xda) goto LAB_002867c8;" if (parenthesized_expression "(uVar12 == 0xda)" ( (binary_expression "uVar12 == 0xda" identifier == number_literal) )) (goto_statement "goto LAB_002867c8;" goto statement_identifier ;)) (expression_statement "(*(code *)(iVar19 + 0x24b0))(pIStack_10fc);" (call_expression "(*(code *)(iVar19 + 0x24b0))(pIStack_10fc)" (parenthesized_expression "(*(code *)(iVar19 + 0x24b0))" ( (pointer_expression "*(code *)(iVar19 + 0x24b0)" * (cast_expression "(code *)(iVar19 + 0x24b0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x24b0)" ( (binary_expression "iVar19 + 0x24b0" identifier + number_literal) )))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) }))))) }) (else_clause "else {\n                    (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                  }" else (compound_statement "{\n                    (**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);\n                  }" { (expression_statement "(**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff);" (call_expression "(**(code **)(puVar31 + 0x1756c4))(ofile,uVar12 & 0xff)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar31 + 0x1756c4)" * (pointer_expression "*(code **)(puVar31 + 0x1756c4)" * (cast_expression "(code **)(puVar31 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756c4)" ( (binary_expression "puVar31 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(ofile,uVar12 & 0xff)" ( identifier , (binary_expression "uVar12 & 0xff" identifier & number_literal) ))) ;) }))) (goto_statement "goto LAB_002869d4;" goto statement_identifier ;) })) (labeled_statement "LAB_00287dd0:\n                uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);" statement_identifier : (expression_statement "uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);" (assignment_expression "uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob)" identifier = (call_expression "(**(code **)(puVar31 + 0x175e54))(ifile->blob)" (parenthesized_expression "(**(code **)(puVar31 + 0x175e54))" ( (pointer_expression "**(code **)(puVar31 + 0x175e54)" * (pointer_expression "*(code **)(puVar31 + 0x175e54)" * (cast_expression "(code **)(puVar31 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175e54)" ( (binary_expression "puVar31 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(ifile->blob)" ( (field_expression "ifile->blob" identifier -> field_identifier) )))) ;)) (expression_statement "(**(code **)(puVar31 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar31 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar31 + 0x1756a8)" * (pointer_expression "*(code **)(puVar31 + 0x1756a8)" * (cast_expression "(code **)(puVar31 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756a8)" ( (binary_expression "puVar31 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175634))(ifile);" (call_expression "(**(code **)(puVar31 + 0x175634))(ifile)" (parenthesized_expression "(**(code **)(puVar31 + 0x175634))" ( (pointer_expression "**(code **)(puVar31 + 0x175634)" * (pointer_expression "*(code **)(puVar31 + 0x175634)" * (cast_expression "(code **)(puVar31 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175634)" ( (binary_expression "puVar31 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(ifile)" ( identifier ))) ;) (goto_statement "goto LAB_00286b84;" goto statement_identifier ;) })) })) (expression_statement "uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);" (assignment_expression "uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob)" identifier = (call_expression "(**(code **)(puVar31 + 0x175e54))(ifile->blob)" (parenthesized_expression "(**(code **)(puVar31 + 0x175e54))" ( (pointer_expression "**(code **)(puVar31 + 0x175e54)" * (pointer_expression "*(code **)(puVar31 + 0x175e54)" * (cast_expression "(code **)(puVar31 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175e54)" ( (binary_expression "puVar31 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(ifile->blob)" ( (field_expression "ifile->blob" identifier -> field_identifier) )))) ;) (expression_statement "(**(code **)(puVar31 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar31 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar31 + 0x1756a8)" * (pointer_expression "*(code **)(puVar31 + 0x1756a8)" * (cast_expression "(code **)(puVar31 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756a8)" ( (binary_expression "puVar31 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175634))(ifile);" (call_expression "(**(code **)(puVar31 + 0x175634))(ifile)" (parenthesized_expression "(**(code **)(puVar31 + 0x175634))" ( (pointer_expression "**(code **)(puVar31 + 0x175634)" * (pointer_expression "*(code **)(puVar31 + 0x175634)" * (cast_expression "(code **)(puVar31 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175634)" ( (binary_expression "puVar31 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(ifile)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175634))(ofile);" (call_expression "(**(code **)(puVar31 + 0x175634))(ofile)" (parenthesized_expression "(**(code **)(puVar31 + 0x175634))" ( (pointer_expression "**(code **)(puVar31 + 0x175634)" * (pointer_expression "*(code **)(puVar31 + 0x175634)" * (cast_expression "(code **)(puVar31 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175634)" ( (binary_expression "puVar31 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(ofile)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar31 + 0x175020) + -0x4850,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);" (call_expression "(**(code **)(puVar31 + 0x175608))\n                      (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar31 + 0x175020) + -0x4850,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar31 + 0x175608))" ( (pointer_expression "**(code **)(puVar31 + 0x175608)" * (pointer_expression "*(code **)(puVar31 + 0x175608)" * (cast_expression "(code **)(puVar31 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175608)" ( (binary_expression "puVar31 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                       *(int *)(puVar31 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar31 + 0x175020) + -0x4850,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x4850" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pIStack_10fc != (Image *)0x0) {\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }" if (parenthesized_expression "(pIStack_10fc != (Image *)0x0)" ( (binary_expression "pIStack_10fc != (Image *)0x0" identifier != (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n              (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n              pIStack_10fc = (Image *)0x0;\n              goto LAB_00287858;\n            }" { (expression_statement "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175d70))" ( (pointer_expression "**(code **)(puVar31 + 0x175d70)" * (pointer_expression "*(code **)(puVar31 + 0x175d70)" * (cast_expression "(code **)(puVar31 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175d70)" ( (binary_expression "puVar31 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf8)" * (pointer_expression "*(code **)(puVar31 + 0x175bf8)" * (cast_expression "(code **)(puVar31 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf8)" ( (binary_expression "puVar31 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "pIStack_10fc = (Image *)0x0;" (assignment_expression "pIStack_10fc = (Image *)0x0" identifier = (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) }))) }))) }))) }))) (goto_statement "goto LAB_00286534;" goto statement_identifier ;) })) (expression_statement "iVar3 = *(int *)(puVar31 + 0x174fb0);" (assignment_expression "iVar3 = *(int *)(puVar31 + 0x174fb0)" identifier = (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_00284aa4;" goto statement_identifier ;) (labeled_statement "LAB_00286b70:\n  (**(code **)(puVar31 + 0x1756a8))(iVar3);" statement_identifier : (expression_statement "(**(code **)(puVar31 + 0x1756a8))(iVar3);" (call_expression "(**(code **)(puVar31 + 0x1756a8))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar31 + 0x1756a8)" * (pointer_expression "*(code **)(puVar31 + 0x1756a8)" * (cast_expression "(code **)(puVar31 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756a8)" ( (binary_expression "puVar31 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;)) (goto_statement "goto LAB_00286b84;" goto statement_identifier ;) (labeled_statement "LAB_00286f40:\n  (**(code **)(puVar31 + 0x1756a8))(iVar19);" statement_identifier : (expression_statement "(**(code **)(puVar31 + 0x1756a8))(iVar19);" (call_expression "(**(code **)(puVar31 + 0x1756a8))(iVar19)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar31 + 0x1756a8)" * (pointer_expression "*(code **)(puVar31 + 0x1756a8)" * (cast_expression "(code **)(puVar31 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756a8)" ( (binary_expression "puVar31 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;)) (goto_statement "goto LAB_00286f50;" goto statement_identifier ;) (labeled_statement "LAB_00287414:\n  (**(code **)(puVar31 + 0x1756a8))(iVar19);" statement_identifier : (expression_statement "(**(code **)(puVar31 + 0x1756a8))(iVar19);" (call_expression "(**(code **)(puVar31 + 0x1756a8))(iVar19)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar31 + 0x1756a8)" * (pointer_expression "*(code **)(puVar31 + 0x1756a8)" * (cast_expression "(code **)(puVar31 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756a8)" ( (binary_expression "puVar31 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;)) (goto_statement "goto LAB_00287424;" goto statement_identifier ;) (labeled_statement "LAB_00287758:\n  (**(code **)(puVar31 + 0x1756a8))(iVar3);" statement_identifier : (expression_statement "(**(code **)(puVar31 + 0x1756a8))(iVar3);" (call_expression "(**(code **)(puVar31 + 0x1756a8))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar31 + 0x1756a8)" * (pointer_expression "*(code **)(puVar31 + 0x1756a8)" * (cast_expression "(code **)(puVar31 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756a8)" ( (binary_expression "puVar31 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;)) (goto_statement "goto LAB_00287768;" goto statement_identifier ;) (labeled_statement "LAB_002867c8:\n  do {\n    iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n  } while (iVar3 != -1);" statement_identifier : (do_statement "do {\n    iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n  } while (iVar3 != -1);" do (compound_statement "{\n    iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);\n  }" { (expression_statement "iVar3 = jpeg_transfer_1(pIStack_10fc,ofile);" (assignment_expression "iVar3 = jpeg_transfer_1(pIStack_10fc,ofile)" identifier = (call_expression "jpeg_transfer_1(pIStack_10fc,ofile)" identifier (argument_list "(pIStack_10fc,ofile)" ( identifier , identifier )))) ;) }) while (parenthesized_expression "(iVar3 != -1)" ( (binary_expression "iVar3 != -1" identifier != number_literal) )) ;)) (labeled_statement "LAB_002867e4:\n  uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);" statement_identifier : (expression_statement "uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob);" (assignment_expression "uVar15 = (**(code **)(puVar31 + 0x175e54))(ifile->blob)" identifier = (call_expression "(**(code **)(puVar31 + 0x175e54))(ifile->blob)" (parenthesized_expression "(**(code **)(puVar31 + 0x175e54))" ( (pointer_expression "**(code **)(puVar31 + 0x175e54)" * (pointer_expression "*(code **)(puVar31 + 0x175e54)" * (cast_expression "(code **)(puVar31 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175e54)" ( (binary_expression "puVar31 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(ifile->blob)" ( (field_expression "ifile->blob" identifier -> field_identifier) )))) ;)) (expression_statement "(**(code **)(puVar31 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar31 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar31 + 0x1756a8)" * (pointer_expression "*(code **)(puVar31 + 0x1756a8)" * (cast_expression "(code **)(puVar31 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756a8)" ( (binary_expression "puVar31 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175634))(ifile);" (call_expression "(**(code **)(puVar31 + 0x175634))(ifile)" (parenthesized_expression "(**(code **)(puVar31 + 0x175634))" ( (pointer_expression "**(code **)(puVar31 + 0x175634)" * (pointer_expression "*(code **)(puVar31 + 0x175634)" * (cast_expression "(code **)(puVar31 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175634)" ( (binary_expression "puVar31 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(ifile)" ( identifier ))) ;) (labeled_statement "LAB_00286b84:\n  uVar15 = (**(code **)(puVar31 + 0x1754cc))(ofile);" statement_identifier : (expression_statement "uVar15 = (**(code **)(puVar31 + 0x1754cc))(ofile);" (assignment_expression "uVar15 = (**(code **)(puVar31 + 0x1754cc))(ofile)" identifier = (call_expression "(**(code **)(puVar31 + 0x1754cc))(ofile)" (parenthesized_expression "(**(code **)(puVar31 + 0x1754cc))" ( (pointer_expression "**(code **)(puVar31 + 0x1754cc)" * (pointer_expression "*(code **)(puVar31 + 0x1754cc)" * (cast_expression "(code **)(puVar31 + 0x1754cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1754cc)" ( (binary_expression "puVar31 + 0x1754cc" identifier + number_literal) ))))) )) (argument_list "(ofile)" ( identifier )))) ;)) (expression_statement "(**(code **)(puVar31 + 0x175ba0))(ofile);" (call_expression "(**(code **)(puVar31 + 0x175ba0))(ofile)" (parenthesized_expression "(**(code **)(puVar31 + 0x175ba0))" ( (pointer_expression "**(code **)(puVar31 + 0x175ba0)" * (pointer_expression "*(code **)(puVar31 + 0x175ba0)" * (cast_expression "(code **)(puVar31 + 0x175ba0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175ba0)" ( (binary_expression "puVar31 + 0x175ba0" identifier + number_literal) ))))) )) (argument_list "(ofile)" ( identifier ))) ;) (expression_statement "iVar3 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_02);" (assignment_expression "iVar3 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_02)" identifier = (call_expression "(**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_02)" (parenthesized_expression "(**(code **)(puVar31 + 0x175dac))" ( (pointer_expression "**(code **)(puVar31 + 0x175dac)" * (pointer_expression "*(code **)(puVar31 + 0x175dac)" * (cast_expression "(code **)(puVar31 + 0x175dac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175dac)" ( (binary_expression "puVar31 + 0x175dac" identifier + number_literal) ))))) )) (argument_list "(uVar15,extraout_v1_02)" ( identifier , identifier )))) ;) (if_statement "if (iVar3 == 0) {\n    uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n    (**(code **)(puVar31 + 0x1756a8))(uVar15);\n    (**(code **)(puVar31 + 0x175634))(ofile);\n    (**(code **)(puVar31 + 0x175608))\n              (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x535,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78\n               ,iVar20 + 0x2210);\n    if (pIStack_10fc != (Image *)0x0) {\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      pIStack_10fc = (Image *)0x0;\n      goto LAB_00287858;\n    }\n  }\n  else {\n    iVar19 = (**(code **)(puVar31 + 0x175d80))(pIStack_10fc,auStack_1084,iVar3,in_a1);\n    (**(code **)(puVar31 + 0x1754e4))(iVar3);\n    uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n    (**(code **)(puVar31 + 0x1756a8))(uVar15);\n    (**(code **)(puVar31 + 0x175634))(ofile);\n    iVar3 = *(int *)(puVar31 + 0x174fb0);\n    if (iVar19 != 0) {\nLAB_00284aa4:\n      iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar3 + 0x78dc);\n      if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3);\n        (**(code **)(puVar31 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + -0x286c,iVar19,in_a1);\n        (**(code **)(puVar31 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar31 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar31 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }\n      iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar19 + 0x78e0);\n      if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3);\n        (**(code **)(puVar31 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + 0x17f0,iVar19,in_a1);\n        (**(code **)(puVar31 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar31 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar31 + 0x174fb0);\n      }\n      iVar2 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar3 + 0x78d4);\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n        if (iVar2 == 0) {\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar31 + 0x175634))(iVar2);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar31 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar31 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar2);\n        (**(code **)(puVar31 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar2);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb8) + 0x76a8,iVar3,in_a1);\n        (**(code **)(puVar31 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar2);\n      }\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      pIStack_10fc = (Image *)(**(code **)(puVar31 + 0x175b34))(pIStack_10fc);\n      goto LAB_00287858;\n    }\n    (**(code **)(puVar31 + 0x175608))\n              (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x53d,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78\n               ,iVar20 + 0x2210);\n    if (pIStack_10fc != (Image *)0x0) {\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      pIStack_10fc = (Image *)0x0;\n      goto LAB_00287858;\n    }\n  }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n    uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n    (**(code **)(puVar31 + 0x1756a8))(uVar15);\n    (**(code **)(puVar31 + 0x175634))(ofile);\n    (**(code **)(puVar31 + 0x175608))\n              (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x535,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78\n               ,iVar20 + 0x2210);\n    if (pIStack_10fc != (Image *)0x0) {\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      pIStack_10fc = (Image *)0x0;\n      goto LAB_00287858;\n    }\n  }" { (expression_statement "uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);" (assignment_expression "uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob)" identifier = (call_expression "(**(code **)(puVar31 + 0x175e54))(ofile->blob)" (parenthesized_expression "(**(code **)(puVar31 + 0x175e54))" ( (pointer_expression "**(code **)(puVar31 + 0x175e54)" * (pointer_expression "*(code **)(puVar31 + 0x175e54)" * (cast_expression "(code **)(puVar31 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175e54)" ( (binary_expression "puVar31 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(ofile->blob)" ( (field_expression "ofile->blob" identifier -> field_identifier) )))) ;) (expression_statement "(**(code **)(puVar31 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar31 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar31 + 0x1756a8)" * (pointer_expression "*(code **)(puVar31 + 0x1756a8)" * (cast_expression "(code **)(puVar31 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756a8)" ( (binary_expression "puVar31 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175634))(ofile);" (call_expression "(**(code **)(puVar31 + 0x175634))(ofile)" (parenthesized_expression "(**(code **)(puVar31 + 0x175634))" ( (pointer_expression "**(code **)(puVar31 + 0x175634)" * (pointer_expression "*(code **)(puVar31 + 0x175634)" * (cast_expression "(code **)(puVar31 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175634)" ( (binary_expression "puVar31 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(ofile)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175608))\n              (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x535,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78\n               ,iVar20 + 0x2210);" (call_expression "(**(code **)(puVar31 + 0x175608))\n              (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x535,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78\n               ,iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar31 + 0x175608))" ( (pointer_expression "**(code **)(puVar31 + 0x175608)" * (pointer_expression "*(code **)(puVar31 + 0x175608)" * (cast_expression "(code **)(puVar31 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175608)" ( (binary_expression "puVar31 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x535,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78\n               ,iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pIStack_10fc != (Image *)0x0) {\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      pIStack_10fc = (Image *)0x0;\n      goto LAB_00287858;\n    }" if (parenthesized_expression "(pIStack_10fc != (Image *)0x0)" ( (binary_expression "pIStack_10fc != (Image *)0x0" identifier != (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      pIStack_10fc = (Image *)0x0;\n      goto LAB_00287858;\n    }" { (expression_statement "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175d70))" ( (pointer_expression "**(code **)(puVar31 + 0x175d70)" * (pointer_expression "*(code **)(puVar31 + 0x175d70)" * (cast_expression "(code **)(puVar31 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175d70)" ( (binary_expression "puVar31 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf8)" * (pointer_expression "*(code **)(puVar31 + 0x175bf8)" * (cast_expression "(code **)(puVar31 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf8)" ( (binary_expression "puVar31 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "pIStack_10fc = (Image *)0x0;" (assignment_expression "pIStack_10fc = (Image *)0x0" identifier = (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) }) (else_clause "else {\n    iVar19 = (**(code **)(puVar31 + 0x175d80))(pIStack_10fc,auStack_1084,iVar3,in_a1);\n    (**(code **)(puVar31 + 0x1754e4))(iVar3);\n    uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n    (**(code **)(puVar31 + 0x1756a8))(uVar15);\n    (**(code **)(puVar31 + 0x175634))(ofile);\n    iVar3 = *(int *)(puVar31 + 0x174fb0);\n    if (iVar19 != 0) {\nLAB_00284aa4:\n      iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar3 + 0x78dc);\n      if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3);\n        (**(code **)(puVar31 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + -0x286c,iVar19,in_a1);\n        (**(code **)(puVar31 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar31 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar31 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }\n      iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar19 + 0x78e0);\n      if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3);\n        (**(code **)(puVar31 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + 0x17f0,iVar19,in_a1);\n        (**(code **)(puVar31 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar31 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar31 + 0x174fb0);\n      }\n      iVar2 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar3 + 0x78d4);\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n        if (iVar2 == 0) {\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar31 + 0x175634))(iVar2);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar31 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar31 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar2);\n        (**(code **)(puVar31 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar2);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb8) + 0x76a8,iVar3,in_a1);\n        (**(code **)(puVar31 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar2);\n      }\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      pIStack_10fc = (Image *)(**(code **)(puVar31 + 0x175b34))(pIStack_10fc);\n      goto LAB_00287858;\n    }\n    (**(code **)(puVar31 + 0x175608))\n              (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x53d,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78\n               ,iVar20 + 0x2210);\n    if (pIStack_10fc != (Image *)0x0) {\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      pIStack_10fc = (Image *)0x0;\n      goto LAB_00287858;\n    }\n  }" else (compound_statement "{\n    iVar19 = (**(code **)(puVar31 + 0x175d80))(pIStack_10fc,auStack_1084,iVar3,in_a1);\n    (**(code **)(puVar31 + 0x1754e4))(iVar3);\n    uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);\n    (**(code **)(puVar31 + 0x1756a8))(uVar15);\n    (**(code **)(puVar31 + 0x175634))(ofile);\n    iVar3 = *(int *)(puVar31 + 0x174fb0);\n    if (iVar19 != 0) {\nLAB_00284aa4:\n      iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar3 + 0x78dc);\n      if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3);\n        (**(code **)(puVar31 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + -0x286c,iVar19,in_a1);\n        (**(code **)(puVar31 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar31 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar31 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }\n      iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar19 + 0x78e0);\n      if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3);\n        (**(code **)(puVar31 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + 0x17f0,iVar19,in_a1);\n        (**(code **)(puVar31 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar31 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar31 + 0x174fb0);\n      }\n      iVar2 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar3 + 0x78d4);\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n        if (iVar2 == 0) {\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar31 + 0x175634))(iVar2);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar31 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar31 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar2);\n        (**(code **)(puVar31 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar2);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb8) + 0x76a8,iVar3,in_a1);\n        (**(code **)(puVar31 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar2);\n      }\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      pIStack_10fc = (Image *)(**(code **)(puVar31 + 0x175b34))(pIStack_10fc);\n      goto LAB_00287858;\n    }\n    (**(code **)(puVar31 + 0x175608))\n              (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x53d,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78\n               ,iVar20 + 0x2210);\n    if (pIStack_10fc != (Image *)0x0) {\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      pIStack_10fc = (Image *)0x0;\n      goto LAB_00287858;\n    }\n  }" { (expression_statement "iVar19 = (**(code **)(puVar31 + 0x175d80))(pIStack_10fc,auStack_1084,iVar3,in_a1);" (assignment_expression "iVar19 = (**(code **)(puVar31 + 0x175d80))(pIStack_10fc,auStack_1084,iVar3,in_a1)" identifier = (call_expression "(**(code **)(puVar31 + 0x175d80))(pIStack_10fc,auStack_1084,iVar3,in_a1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175d80))" ( (pointer_expression "**(code **)(puVar31 + 0x175d80)" * (pointer_expression "*(code **)(puVar31 + 0x175d80)" * (cast_expression "(code **)(puVar31 + 0x175d80)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175d80)" ( (binary_expression "puVar31 + 0x175d80" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc,auStack_1084,iVar3,in_a1)" ( identifier , identifier , identifier , identifier )))) ;) (expression_statement "(**(code **)(puVar31 + 0x1754e4))(iVar3);" (call_expression "(**(code **)(puVar31 + 0x1754e4))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x1754e4))" ( (pointer_expression "**(code **)(puVar31 + 0x1754e4)" * (pointer_expression "*(code **)(puVar31 + 0x1754e4)" * (cast_expression "(code **)(puVar31 + 0x1754e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1754e4)" ( (binary_expression "puVar31 + 0x1754e4" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob);" (assignment_expression "uVar15 = (**(code **)(puVar31 + 0x175e54))(ofile->blob)" identifier = (call_expression "(**(code **)(puVar31 + 0x175e54))(ofile->blob)" (parenthesized_expression "(**(code **)(puVar31 + 0x175e54))" ( (pointer_expression "**(code **)(puVar31 + 0x175e54)" * (pointer_expression "*(code **)(puVar31 + 0x175e54)" * (cast_expression "(code **)(puVar31 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175e54)" ( (binary_expression "puVar31 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(ofile->blob)" ( (field_expression "ofile->blob" identifier -> field_identifier) )))) ;) (expression_statement "(**(code **)(puVar31 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar31 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar31 + 0x1756a8)" * (pointer_expression "*(code **)(puVar31 + 0x1756a8)" * (cast_expression "(code **)(puVar31 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756a8)" ( (binary_expression "puVar31 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175634))(ofile);" (call_expression "(**(code **)(puVar31 + 0x175634))(ofile)" (parenthesized_expression "(**(code **)(puVar31 + 0x175634))" ( (pointer_expression "**(code **)(puVar31 + 0x175634)" * (pointer_expression "*(code **)(puVar31 + 0x175634)" * (cast_expression "(code **)(puVar31 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175634)" ( (binary_expression "puVar31 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(ofile)" ( identifier ))) ;) (expression_statement "iVar3 = *(int *)(puVar31 + 0x174fb0);" (assignment_expression "iVar3 = *(int *)(puVar31 + 0x174fb0)" identifier = (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) ))))) ;) (if_statement "if (iVar19 != 0) {\nLAB_00284aa4:\n      iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar3 + 0x78dc);\n      if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3);\n        (**(code **)(puVar31 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + -0x286c,iVar19,in_a1);\n        (**(code **)(puVar31 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar31 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar31 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }\n      iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar19 + 0x78e0);\n      if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3);\n        (**(code **)(puVar31 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + 0x17f0,iVar19,in_a1);\n        (**(code **)(puVar31 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar31 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar31 + 0x174fb0);\n      }\n      iVar2 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar3 + 0x78d4);\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n        if (iVar2 == 0) {\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar31 + 0x175634))(iVar2);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar31 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar31 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar2);\n        (**(code **)(puVar31 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar2);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb8) + 0x76a8,iVar3,in_a1);\n        (**(code **)(puVar31 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar2);\n      }\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      pIStack_10fc = (Image *)(**(code **)(puVar31 + 0x175b34))(pIStack_10fc);\n      goto LAB_00287858;\n    }" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (compound_statement "{\nLAB_00284aa4:\n      iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar3 + 0x78dc);\n      if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3);\n        (**(code **)(puVar31 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + -0x286c,iVar19,in_a1);\n        (**(code **)(puVar31 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar31 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar31 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }\n      iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar19 + 0x78e0);\n      if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3);\n        (**(code **)(puVar31 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + 0x17f0,iVar19,in_a1);\n        (**(code **)(puVar31 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar31 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar31 + 0x174fb0);\n      }\n      iVar2 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar3 + 0x78d4);\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n        if (iVar2 == 0) {\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar31 + 0x175634))(iVar2);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar31 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar31 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar2);\n        (**(code **)(puVar31 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar2);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb8) + 0x76a8,iVar3,in_a1);\n        (**(code **)(puVar31 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar2);\n      }\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      pIStack_10fc = (Image *)(**(code **)(puVar31 + 0x175b34))(pIStack_10fc);\n      goto LAB_00287858;\n    }" { (labeled_statement "LAB_00284aa4:\n      iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar3 + 0x78dc);" statement_identifier : (expression_statement "iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar3 + 0x78dc);" (assignment_expression "iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar3 + 0x78dc)" identifier = (call_expression "(**(code **)(puVar31 + 0x1757f8))(iVar2,iVar3 + 0x78dc)" (parenthesized_expression "(**(code **)(puVar31 + 0x1757f8))" ( (pointer_expression "**(code **)(puVar31 + 0x1757f8)" * (pointer_expression "*(code **)(puVar31 + 0x1757f8)" * (cast_expression "(code **)(puVar31 + 0x1757f8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1757f8)" ( (binary_expression "puVar31 + 0x1757f8" identifier + number_literal) ))))) )) (argument_list "(iVar2,iVar3 + 0x78dc)" ( identifier , (binary_expression "iVar3 + 0x78dc" identifier + number_literal) )))) ;)) (if_statement "if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3);\n        (**(code **)(puVar31 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + -0x286c,iVar19,in_a1);\n        (**(code **)(puVar31 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar31 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar31 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3);\n        (**(code **)(puVar31 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + -0x286c,iVar19,in_a1);\n        (**(code **)(puVar31 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar31 + 0x174fb0);\n      }" { (labeled_statement "LAB_00284ae8:\n        iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);" statement_identifier : (expression_statement "iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);" (assignment_expression "iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1)" identifier = (call_expression "(**(code **)(puVar31 + 0x175cf4))(0,in_a1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175cf4))" ( (pointer_expression "**(code **)(puVar31 + 0x175cf4)" * (pointer_expression "*(code **)(puVar31 + 0x175cf4)" * (cast_expression "(code **)(puVar31 + 0x175cf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175cf4)" ( (binary_expression "puVar31 + 0x175cf4" identifier + number_literal) ))))) )) (argument_list "(0,in_a1)" ( number_literal , identifier )))) ;)) (if_statement "if (iVar3 == 0) {\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }" { (expression_statement "(**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar31 + 0x175608))" ( (pointer_expression "**(code **)(puVar31 + 0x175608)" * (pointer_expression "*(code **)(puVar31 + 0x175608)" * (cast_expression "(code **)(puVar31 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175608)" ( (binary_expression "puVar31 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }" if (parenthesized_expression "(pIStack_10fc != (Image *)0x0)" ( (binary_expression "pIStack_10fc != (Image *)0x0" identifier != (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }" { (expression_statement "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175d70))" ( (pointer_expression "**(code **)(puVar31 + 0x175d70)" * (pointer_expression "*(code **)(puVar31 + 0x175d70)" * (cast_expression "(code **)(puVar31 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175d70)" ( (binary_expression "puVar31 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf8)" * (pointer_expression "*(code **)(puVar31 + 0x175bf8)" * (cast_expression "(code **)(puVar31 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf8)" ( (binary_expression "puVar31 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "pIStack_10fc = (Image *)0x0;" (assignment_expression "pIStack_10fc = (Image *)0x0" identifier = (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "iVar19 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);" (assignment_expression "iVar19 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1)" identifier = (call_expression "(**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf4)" * (pointer_expression "*(code **)(puVar31 + 0x175bf4)" * (cast_expression "(code **)(puVar31 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf4)" ( (binary_expression "puVar31 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(uStack_10d4,1)" ( identifier , number_literal )))) ;) (if_statement "if (iVar19 == 0) {\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }" { (expression_statement "(**(code **)(puVar31 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar31 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x175634))" ( (pointer_expression "**(code **)(puVar31 + 0x175634)" * (pointer_expression "*(code **)(puVar31 + 0x175634)" * (cast_expression "(code **)(puVar31 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175634)" ( (binary_expression "puVar31 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar31 + 0x175608))" ( (pointer_expression "**(code **)(puVar31 + 0x175608)" * (pointer_expression "*(code **)(puVar31 + 0x175608)" * (cast_expression "(code **)(puVar31 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175608)" ( (binary_expression "puVar31 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }" if (parenthesized_expression "(pIStack_10fc != (Image *)0x0)" ( (binary_expression "pIStack_10fc != (Image *)0x0" identifier != (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }" { (expression_statement "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175d70))" ( (pointer_expression "**(code **)(puVar31 + 0x175d70)" * (pointer_expression "*(code **)(puVar31 + 0x175d70)" * (cast_expression "(code **)(puVar31 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175d70)" ( (binary_expression "puVar31 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf8)" * (pointer_expression "*(code **)(puVar31 + 0x175bf8)" * (cast_expression "(code **)(puVar31 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf8)" ( (binary_expression "puVar31 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "pIStack_10fc = (Image *)0x0;" (assignment_expression "pIStack_10fc = (Image *)0x0" identifier = (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "(**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);" (call_expression "(**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19)" (parenthesized_expression "(**(code **)(puVar31 + 0x1759b0))" ( (pointer_expression "**(code **)(puVar31 + 0x1759b0)" * (pointer_expression "*(code **)(puVar31 + 0x1759b0)" * (cast_expression "(code **)(puVar31 + 0x1759b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1759b0)" ( (binary_expression "puVar31 + 0x1759b0" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348),iVar19)" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) , identifier ))) ;) (expression_statement "iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);" (assignment_expression "iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1)" identifier = (call_expression "(**(code **)(puVar31 + 0x175bf4))(0x14000,1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf4)" * (pointer_expression "*(code **)(puVar31 + 0x175bf4)" * (cast_expression "(code **)(puVar31 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf4)" ( (binary_expression "puVar31 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(0x14000,1)" ( number_literal , number_literal )))) ;) (if_statement "if (iVar19 != 0) {\n          (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (compound_statement "{\n          (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }" { (expression_statement "(**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);" (call_expression "(**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000)" (parenthesized_expression "(**(code **)(puVar31 + 0x175dbc))" ( (pointer_expression "**(code **)(puVar31 + 0x175dbc)" * (pointer_expression "*(code **)(puVar31 + 0x175dbc)" * (cast_expression "(code **)(puVar31 + 0x175dbc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175dbc)" ( (binary_expression "puVar31 + 0x175dbc" identifier + number_literal) ))))) )) (argument_list "(iVar19,0,0x14000)" ( identifier , number_literal , number_literal ))) ;) (do_statement "do {\n            iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );" do (compound_statement "{\n            iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          }" { (expression_statement "iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);" (assignment_expression "iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19)" identifier = (call_expression "(**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19)" (parenthesized_expression "(**(code **)(puVar31 + 0x175494))" ( (pointer_expression "**(code **)(puVar31 + 0x175494)" * (pointer_expression "*(code **)(puVar31 + 0x175494)" * (cast_expression "(code **)(puVar31 + 0x175494)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175494)" ( (binary_expression "puVar31 + 0x175494" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc,0x14000,iVar19)" ( identifier , number_literal , identifier )))) ;) (if_statement "if (iVar13 == 0) goto LAB_00286f40;" if (parenthesized_expression "(iVar13 == 0)" ( (binary_expression "iVar13 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00286f40;" goto statement_identifier ;)) (expression_statement "iVar22 = 0;" (assignment_expression "iVar22 = 0" identifier = number_literal) ;) (if_statement "if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }" if (parenthesized_expression "(0 < iVar13)" ( (binary_expression "0 < iVar13" number_literal < identifier) )) (compound_statement "{\n              do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }" { (do_statement "do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);" do (compound_statement "{\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              }" { (expression_statement "iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);" (assignment_expression "iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22)" identifier = (call_expression "(**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22)" (parenthesized_expression "(**(code **)(puVar31 + 0x17607c))" ( (pointer_expression "**(code **)(puVar31 + 0x17607c)" * (pointer_expression "*(code **)(puVar31 + 0x17607c)" * (cast_expression "(code **)(puVar31 + 0x17607c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x17607c)" ( (binary_expression "puVar31 + 0x17607c" identifier + number_literal) ))))) )) (argument_list "(iVar3,iVar13 - iVar22,iVar19 + iVar22)" ( identifier , (binary_expression "iVar13 - iVar22" identifier - identifier) , (binary_expression "iVar19 + iVar22" identifier + identifier) )))) ;) (if_statement "if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }" if (parenthesized_expression "(iVar14 < 1)" ( (binary_expression "iVar14 < 1" identifier < number_literal) )) (compound_statement "{\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }" { (if_statement "if (iVar22 < iVar13) goto LAB_00286f40;" if (parenthesized_expression "(iVar22 < iVar13)" ( (binary_expression "iVar22 < iVar13" identifier < identifier) )) (goto_statement "goto LAB_00286f40;" goto statement_identifier ;)) (break_statement "break;" break ;) })) (expression_statement "iVar22 = iVar22 + iVar14;" (assignment_expression "iVar22 = iVar22 + iVar14" identifier = (binary_expression "iVar22 + iVar14" identifier + identifier)) ;) }) while (parenthesized_expression "(iVar22 < iVar13)" ( (binary_expression "iVar22 < iVar13" identifier < identifier) )) ;) })) }) while (parenthesized_expression "( true )" ( true )) ;) })) (labeled_statement "LAB_00286f50:\n        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3);" statement_identifier : (expression_statement "uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3);" (assignment_expression "uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3)" identifier = (call_expression "(**(code **)(puVar31 + 0x1754cc))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x1754cc))" ( (pointer_expression "**(code **)(puVar31 + 0x1754cc)" * (pointer_expression "*(code **)(puVar31 + 0x1754cc)" * (cast_expression "(code **)(puVar31 + 0x1754cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1754cc)" ( (binary_expression "puVar31 + 0x1754cc" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;)) (expression_statement "(**(code **)(puVar31 + 0x175ba0))(iVar3);" (call_expression "(**(code **)(puVar31 + 0x175ba0))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x175ba0))" ( (pointer_expression "**(code **)(puVar31 + 0x175ba0)" * (pointer_expression "*(code **)(puVar31 + 0x175ba0)" * (cast_expression "(code **)(puVar31 + 0x175ba0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175ba0)" ( (binary_expression "puVar31 + 0x175ba0" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "iVar19 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_03);" (assignment_expression "iVar19 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_03)" identifier = (call_expression "(**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_03)" (parenthesized_expression "(**(code **)(puVar31 + 0x175dac))" ( (pointer_expression "**(code **)(puVar31 + 0x175dac)" * (pointer_expression "*(code **)(puVar31 + 0x175dac)" * (cast_expression "(code **)(puVar31 + 0x175dac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175dac)" ( (binary_expression "puVar31 + 0x175dac" identifier + number_literal) ))))) )) (argument_list "(uVar15,extraout_v1_03)" ( identifier , identifier )))) ;) (if_statement "if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }" { (expression_statement "uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" identifier = (call_expression "(**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar31 + 0x175e54))" ( (pointer_expression "**(code **)(puVar31 + 0x175e54)" * (pointer_expression "*(code **)(puVar31 + 0x175e54)" * (cast_expression "(code **)(puVar31 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175e54)" ( (binary_expression "puVar31 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar31 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar31 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar31 + 0x1756a8)" * (pointer_expression "*(code **)(puVar31 + 0x1756a8)" * (cast_expression "(code **)(puVar31 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756a8)" ( (binary_expression "puVar31 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar31 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x175634))" ( (pointer_expression "**(code **)(puVar31 + 0x175634)" * (pointer_expression "*(code **)(puVar31 + 0x175634)" * (cast_expression "(code **)(puVar31 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175634)" ( (binary_expression "puVar31 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar31 + 0x175608))" ( (pointer_expression "**(code **)(puVar31 + 0x175608)" * (pointer_expression "*(code **)(puVar31 + 0x175608)" * (cast_expression "(code **)(puVar31 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175608)" ( (binary_expression "puVar31 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }" if (parenthesized_expression "(pIStack_10fc != (Image *)0x0)" ( (binary_expression "pIStack_10fc != (Image *)0x0" identifier != (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }" { (expression_statement "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175d70))" ( (pointer_expression "**(code **)(puVar31 + 0x175d70)" * (pointer_expression "*(code **)(puVar31 + 0x175d70)" * (cast_expression "(code **)(puVar31 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175d70)" ( (binary_expression "puVar31 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf8)" * (pointer_expression "*(code **)(puVar31 + 0x175bf8)" * (cast_expression "(code **)(puVar31 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf8)" ( (binary_expression "puVar31 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "pIStack_10fc = (Image *)0x0;" (assignment_expression "pIStack_10fc = (Image *)0x0" identifier = (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "(**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + -0x286c,iVar19,in_a1);" (call_expression "(**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + -0x286c,iVar19,in_a1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175d80))" ( (pointer_expression "**(code **)(puVar31 + 0x175d80)" * (pointer_expression "*(code **)(puVar31 + 0x175d80)" * (cast_expression "(code **)(puVar31 + 0x175d80)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175d80)" ( (binary_expression "puVar31 + 0x175d80" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + -0x286c,iVar19,in_a1)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x174fb4) + -0x286c" (pointer_expression "*(int *)(puVar31 + 0x174fb4)" * (cast_expression "(int *)(puVar31 + 0x174fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb4)" ( (binary_expression "puVar31 + 0x174fb4" identifier + number_literal) )))) + number_literal) , identifier , identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x1754e4))(iVar19);" (call_expression "(**(code **)(puVar31 + 0x1754e4))(iVar19)" (parenthesized_expression "(**(code **)(puVar31 + 0x1754e4))" ( (pointer_expression "**(code **)(puVar31 + 0x1754e4)" * (pointer_expression "*(code **)(puVar31 + 0x1754e4)" * (cast_expression "(code **)(puVar31 + 0x1754e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1754e4)" ( (binary_expression "puVar31 + 0x1754e4" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;) (expression_statement "uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" identifier = (call_expression "(**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar31 + 0x175e54))" ( (pointer_expression "**(code **)(puVar31 + 0x175e54)" * (pointer_expression "*(code **)(puVar31 + 0x175e54)" * (cast_expression "(code **)(puVar31 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175e54)" ( (binary_expression "puVar31 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar31 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar31 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar31 + 0x1756a8)" * (pointer_expression "*(code **)(puVar31 + 0x1756a8)" * (cast_expression "(code **)(puVar31 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756a8)" ( (binary_expression "puVar31 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar31 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x175634))" ( (pointer_expression "**(code **)(puVar31 + 0x175634)" * (pointer_expression "*(code **)(puVar31 + 0x175634)" * (cast_expression "(code **)(puVar31 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175634)" ( (binary_expression "puVar31 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "iVar19 = *(int *)(puVar31 + 0x174fb0);" (assignment_expression "iVar19 = *(int *)(puVar31 + 0x174fb0)" identifier = (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) ))))) ;) }) (else_clause "else {\n        iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar31 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }" else (compound_statement "{\n        iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar31 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }" { (expression_statement "iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78d8);" (assignment_expression "iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78d8)" identifier = (call_expression "(**(code **)(puVar31 + 0x1757f8))(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78d8)" (parenthesized_expression "(**(code **)(puVar31 + 0x1757f8))" ( (pointer_expression "**(code **)(puVar31 + 0x1757f8)" * (pointer_expression "*(code **)(puVar31 + 0x1757f8)" * (cast_expression "(code **)(puVar31 + 0x1757f8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1757f8)" ( (binary_expression "puVar31 + 0x1757f8" identifier + number_literal) ))))) )) (argument_list "(iVar2,*(int *)(puVar31 + 0x174fb0) + 0x78d8)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x78d8" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "iVar19 = *(int *)(puVar31 + 0x174fb0);" (assignment_expression "iVar19 = *(int *)(puVar31 + 0x174fb0)" identifier = (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) ))))) ;) (if_statement "if (iVar3 == 0) goto LAB_00284ae8;" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00284ae8;" goto statement_identifier ;)) }))) (expression_statement "iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar19 + 0x78e0);" (assignment_expression "iVar3 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar19 + 0x78e0)" identifier = (call_expression "(**(code **)(puVar31 + 0x1757f8))(iVar2,iVar19 + 0x78e0)" (parenthesized_expression "(**(code **)(puVar31 + 0x1757f8))" ( (pointer_expression "**(code **)(puVar31 + 0x1757f8)" * (pointer_expression "*(code **)(puVar31 + 0x1757f8)" * (cast_expression "(code **)(puVar31 + 0x1757f8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1757f8)" ( (binary_expression "puVar31 + 0x1757f8" identifier + number_literal) ))))) )) (argument_list "(iVar2,iVar19 + 0x78e0)" ( identifier , (binary_expression "iVar19 + 0x78e0" identifier + number_literal) )))) ;) (if_statement "if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3);\n        (**(code **)(puVar31 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + 0x17f0,iVar19,in_a1);\n        (**(code **)(puVar31 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar31 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar31 + 0x174fb0);\n      }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n        iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3);\n        (**(code **)(puVar31 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + 0x17f0,iVar19,in_a1);\n        (**(code **)(puVar31 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar31 + 0x174fb0);\n      }" { (expression_statement "iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);" (assignment_expression "iVar3 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1)" identifier = (call_expression "(**(code **)(puVar31 + 0x175cf4))(0,in_a1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175cf4))" ( (pointer_expression "**(code **)(puVar31 + 0x175cf4)" * (pointer_expression "*(code **)(puVar31 + 0x175cf4)" * (cast_expression "(code **)(puVar31 + 0x175cf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175cf4)" ( (binary_expression "puVar31 + 0x175cf4" identifier + number_literal) ))))) )) (argument_list "(0,in_a1)" ( number_literal , identifier )))) ;) (if_statement "if (iVar3 == 0) {\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }" { (expression_statement "(**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar31 + 0x175608))" ( (pointer_expression "**(code **)(puVar31 + 0x175608)" * (pointer_expression "*(code **)(puVar31 + 0x175608)" * (cast_expression "(code **)(puVar31 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175608)" ( (binary_expression "puVar31 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }" if (parenthesized_expression "(pIStack_10fc != (Image *)0x0)" ( (binary_expression "pIStack_10fc != (Image *)0x0" identifier != (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }" { (expression_statement "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175d70))" ( (pointer_expression "**(code **)(puVar31 + 0x175d70)" * (pointer_expression "*(code **)(puVar31 + 0x175d70)" * (cast_expression "(code **)(puVar31 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175d70)" ( (binary_expression "puVar31 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf8)" * (pointer_expression "*(code **)(puVar31 + 0x175bf8)" * (cast_expression "(code **)(puVar31 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf8)" ( (binary_expression "puVar31 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "pIStack_10fc = (Image *)0x0;" (assignment_expression "pIStack_10fc = (Image *)0x0" identifier = (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "iVar19 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);" (assignment_expression "iVar19 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1)" identifier = (call_expression "(**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf4)" * (pointer_expression "*(code **)(puVar31 + 0x175bf4)" * (cast_expression "(code **)(puVar31 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf4)" ( (binary_expression "puVar31 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(uStack_10d4,1)" ( identifier , number_literal )))) ;) (if_statement "if (iVar19 == 0) {\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }" { (expression_statement "(**(code **)(puVar31 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar31 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x175634))" ( (pointer_expression "**(code **)(puVar31 + 0x175634)" * (pointer_expression "*(code **)(puVar31 + 0x175634)" * (cast_expression "(code **)(puVar31 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175634)" ( (binary_expression "puVar31 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar31 + 0x175608))" ( (pointer_expression "**(code **)(puVar31 + 0x175608)" * (pointer_expression "*(code **)(puVar31 + 0x175608)" * (cast_expression "(code **)(puVar31 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175608)" ( (binary_expression "puVar31 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }" if (parenthesized_expression "(pIStack_10fc != (Image *)0x0)" ( (binary_expression "pIStack_10fc != (Image *)0x0" identifier != (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }" { (expression_statement "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175d70))" ( (pointer_expression "**(code **)(puVar31 + 0x175d70)" * (pointer_expression "*(code **)(puVar31 + 0x175d70)" * (cast_expression "(code **)(puVar31 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175d70)" ( (binary_expression "puVar31 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf8)" * (pointer_expression "*(code **)(puVar31 + 0x175bf8)" * (cast_expression "(code **)(puVar31 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf8)" ( (binary_expression "puVar31 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "pIStack_10fc = (Image *)0x0;" (assignment_expression "pIStack_10fc = (Image *)0x0" identifier = (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "(**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);" (call_expression "(**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19)" (parenthesized_expression "(**(code **)(puVar31 + 0x1759b0))" ( (pointer_expression "**(code **)(puVar31 + 0x1759b0)" * (pointer_expression "*(code **)(puVar31 + 0x1759b0)" * (cast_expression "(code **)(puVar31 + 0x1759b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1759b0)" ( (binary_expression "puVar31 + 0x1759b0" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348),iVar19)" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) , identifier ))) ;) (expression_statement "iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);" (assignment_expression "iVar19 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1)" identifier = (call_expression "(**(code **)(puVar31 + 0x175bf4))(0x14000,1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf4)" * (pointer_expression "*(code **)(puVar31 + 0x175bf4)" * (cast_expression "(code **)(puVar31 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf4)" ( (binary_expression "puVar31 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(0x14000,1)" ( number_literal , number_literal )))) ;) (if_statement "if (iVar19 != 0) {\n          (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (compound_statement "{\n          (**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }" { (expression_statement "(**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000);" (call_expression "(**(code **)(puVar31 + 0x175dbc))(iVar19,0,0x14000)" (parenthesized_expression "(**(code **)(puVar31 + 0x175dbc))" ( (pointer_expression "**(code **)(puVar31 + 0x175dbc)" * (pointer_expression "*(code **)(puVar31 + 0x175dbc)" * (cast_expression "(code **)(puVar31 + 0x175dbc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175dbc)" ( (binary_expression "puVar31 + 0x175dbc" identifier + number_literal) ))))) )) (argument_list "(iVar19,0,0x14000)" ( identifier , number_literal , number_literal ))) ;) (do_statement "do {\n            iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );" do (compound_statement "{\n            iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          }" { (expression_statement "iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19);" (assignment_expression "iVar13 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19)" identifier = (call_expression "(**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar19)" (parenthesized_expression "(**(code **)(puVar31 + 0x175494))" ( (pointer_expression "**(code **)(puVar31 + 0x175494)" * (pointer_expression "*(code **)(puVar31 + 0x175494)" * (cast_expression "(code **)(puVar31 + 0x175494)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175494)" ( (binary_expression "puVar31 + 0x175494" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc,0x14000,iVar19)" ( identifier , number_literal , identifier )))) ;) (if_statement "if (iVar13 == 0) goto LAB_00287414;" if (parenthesized_expression "(iVar13 == 0)" ( (binary_expression "iVar13 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00287414;" goto statement_identifier ;)) (expression_statement "iVar22 = 0;" (assignment_expression "iVar22 = 0" identifier = number_literal) ;) (if_statement "if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }" if (parenthesized_expression "(0 < iVar13)" ( (binary_expression "0 < iVar13" number_literal < identifier) )) (compound_statement "{\n              do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }" { (do_statement "do {\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);" do (compound_statement "{\n                iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              }" { (expression_statement "iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);" (assignment_expression "iVar14 = (**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22)" identifier = (call_expression "(**(code **)(puVar31 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22)" (parenthesized_expression "(**(code **)(puVar31 + 0x17607c))" ( (pointer_expression "**(code **)(puVar31 + 0x17607c)" * (pointer_expression "*(code **)(puVar31 + 0x17607c)" * (cast_expression "(code **)(puVar31 + 0x17607c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x17607c)" ( (binary_expression "puVar31 + 0x17607c" identifier + number_literal) ))))) )) (argument_list "(iVar3,iVar13 - iVar22,iVar19 + iVar22)" ( identifier , (binary_expression "iVar13 - iVar22" identifier - identifier) , (binary_expression "iVar19 + iVar22" identifier + identifier) )))) ;) (if_statement "if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }" if (parenthesized_expression "(iVar14 < 1)" ( (binary_expression "iVar14 < 1" identifier < number_literal) )) (compound_statement "{\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }" { (if_statement "if (iVar22 < iVar13) goto LAB_00287414;" if (parenthesized_expression "(iVar22 < iVar13)" ( (binary_expression "iVar22 < iVar13" identifier < identifier) )) (goto_statement "goto LAB_00287414;" goto statement_identifier ;)) (break_statement "break;" break ;) })) (expression_statement "iVar22 = iVar22 + iVar14;" (assignment_expression "iVar22 = iVar22 + iVar14" identifier = (binary_expression "iVar22 + iVar14" identifier + identifier)) ;) }) while (parenthesized_expression "(iVar22 < iVar13)" ( (binary_expression "iVar22 < iVar13" identifier < identifier) )) ;) })) }) while (parenthesized_expression "( true )" ( true )) ;) })) (labeled_statement "LAB_00287424:\n        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3);" statement_identifier : (expression_statement "uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3);" (assignment_expression "uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar3)" identifier = (call_expression "(**(code **)(puVar31 + 0x1754cc))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x1754cc))" ( (pointer_expression "**(code **)(puVar31 + 0x1754cc)" * (pointer_expression "*(code **)(puVar31 + 0x1754cc)" * (cast_expression "(code **)(puVar31 + 0x1754cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1754cc)" ( (binary_expression "puVar31 + 0x1754cc" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;)) (expression_statement "(**(code **)(puVar31 + 0x175ba0))(iVar3);" (call_expression "(**(code **)(puVar31 + 0x175ba0))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x175ba0))" ( (pointer_expression "**(code **)(puVar31 + 0x175ba0)" * (pointer_expression "*(code **)(puVar31 + 0x175ba0)" * (cast_expression "(code **)(puVar31 + 0x175ba0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175ba0)" ( (binary_expression "puVar31 + 0x175ba0" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "iVar19 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_04);" (assignment_expression "iVar19 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_04)" identifier = (call_expression "(**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_04)" (parenthesized_expression "(**(code **)(puVar31 + 0x175dac))" ( (pointer_expression "**(code **)(puVar31 + 0x175dac)" * (pointer_expression "*(code **)(puVar31 + 0x175dac)" * (cast_expression "(code **)(puVar31 + 0x175dac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175dac)" ( (binary_expression "puVar31 + 0x175dac" identifier + number_literal) ))))) )) (argument_list "(uVar15,extraout_v1_04)" ( identifier , identifier )))) ;) (if_statement "if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar3);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }" { (expression_statement "uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" identifier = (call_expression "(**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar31 + 0x175e54))" ( (pointer_expression "**(code **)(puVar31 + 0x175e54)" * (pointer_expression "*(code **)(puVar31 + 0x175e54)" * (cast_expression "(code **)(puVar31 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175e54)" ( (binary_expression "puVar31 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar31 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar31 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar31 + 0x1756a8)" * (pointer_expression "*(code **)(puVar31 + 0x1756a8)" * (cast_expression "(code **)(puVar31 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756a8)" ( (binary_expression "puVar31 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar31 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x175634))" ( (pointer_expression "**(code **)(puVar31 + 0x175634)" * (pointer_expression "*(code **)(puVar31 + 0x175634)" * (cast_expression "(code **)(puVar31 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175634)" ( (binary_expression "puVar31 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar31 + 0x175608))" ( (pointer_expression "**(code **)(puVar31 + 0x175608)" * (pointer_expression "*(code **)(puVar31 + 0x175608)" * (cast_expression "(code **)(puVar31 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175608)" ( (binary_expression "puVar31 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }" if (parenthesized_expression "(pIStack_10fc != (Image *)0x0)" ( (binary_expression "pIStack_10fc != (Image *)0x0" identifier != (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }" { (expression_statement "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175d70))" ( (pointer_expression "**(code **)(puVar31 + 0x175d70)" * (pointer_expression "*(code **)(puVar31 + 0x175d70)" * (cast_expression "(code **)(puVar31 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175d70)" ( (binary_expression "puVar31 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf8)" * (pointer_expression "*(code **)(puVar31 + 0x175bf8)" * (cast_expression "(code **)(puVar31 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf8)" ( (binary_expression "puVar31 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "pIStack_10fc = (Image *)0x0;" (assignment_expression "pIStack_10fc = (Image *)0x0" identifier = (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "(**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + 0x17f0,iVar19,in_a1);" (call_expression "(**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + 0x17f0,iVar19,in_a1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175d80))" ( (pointer_expression "**(code **)(puVar31 + 0x175d80)" * (pointer_expression "*(code **)(puVar31 + 0x175d80)" * (cast_expression "(code **)(puVar31 + 0x175d80)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175d80)" ( (binary_expression "puVar31 + 0x175d80" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc,*(int *)(puVar31 + 0x174fb4) + 0x17f0,iVar19,in_a1)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x174fb4) + 0x17f0" (pointer_expression "*(int *)(puVar31 + 0x174fb4)" * (cast_expression "(int *)(puVar31 + 0x174fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb4)" ( (binary_expression "puVar31 + 0x174fb4" identifier + number_literal) )))) + number_literal) , identifier , identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x1754e4))(iVar19);" (call_expression "(**(code **)(puVar31 + 0x1754e4))(iVar19)" (parenthesized_expression "(**(code **)(puVar31 + 0x1754e4))" ( (pointer_expression "**(code **)(puVar31 + 0x1754e4)" * (pointer_expression "*(code **)(puVar31 + 0x1754e4)" * (cast_expression "(code **)(puVar31 + 0x1754e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1754e4)" ( (binary_expression "puVar31 + 0x1754e4" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;) (expression_statement "uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" identifier = (call_expression "(**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar31 + 0x175e54))" ( (pointer_expression "**(code **)(puVar31 + 0x175e54)" * (pointer_expression "*(code **)(puVar31 + 0x175e54)" * (cast_expression "(code **)(puVar31 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175e54)" ( (binary_expression "puVar31 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar31 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar31 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar31 + 0x1756a8)" * (pointer_expression "*(code **)(puVar31 + 0x1756a8)" * (cast_expression "(code **)(puVar31 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756a8)" ( (binary_expression "puVar31 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar31 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x175634))" ( (pointer_expression "**(code **)(puVar31 + 0x175634)" * (pointer_expression "*(code **)(puVar31 + 0x175634)" * (cast_expression "(code **)(puVar31 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175634)" ( (binary_expression "puVar31 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "iVar3 = *(int *)(puVar31 + 0x174fb0);" (assignment_expression "iVar3 = *(int *)(puVar31 + 0x174fb0)" identifier = (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) ))))) ;) }) (else_clause "else {\n        iVar3 = *(int *)(puVar31 + 0x174fb0);\n      }" else (compound_statement "{\n        iVar3 = *(int *)(puVar31 + 0x174fb0);\n      }" { (expression_statement "iVar3 = *(int *)(puVar31 + 0x174fb0);" (assignment_expression "iVar3 = *(int *)(puVar31 + 0x174fb0)" identifier = (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) ))))) ;) }))) (expression_statement "iVar2 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar3 + 0x78d4);" (assignment_expression "iVar2 = (**(code **)(puVar31 + 0x1757f8))(iVar2,iVar3 + 0x78d4)" identifier = (call_expression "(**(code **)(puVar31 + 0x1757f8))(iVar2,iVar3 + 0x78d4)" (parenthesized_expression "(**(code **)(puVar31 + 0x1757f8))" ( (pointer_expression "**(code **)(puVar31 + 0x1757f8)" * (pointer_expression "*(code **)(puVar31 + 0x1757f8)" * (cast_expression "(code **)(puVar31 + 0x1757f8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1757f8)" ( (binary_expression "puVar31 + 0x1757f8" identifier + number_literal) ))))) )) (argument_list "(iVar2,iVar3 + 0x78d4)" ( identifier , (binary_expression "iVar3 + 0x78d4" identifier + number_literal) )))) ;) (if_statement "if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n        if (iVar2 == 0) {\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar31 + 0x175634))(iVar2);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar31 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar31 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar2);\n        (**(code **)(puVar31 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar2);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb8) + 0x76a8,iVar3,in_a1);\n        (**(code **)(puVar31 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar2);\n      }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n        iVar2 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);\n        if (iVar2 == 0) {\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar31 + 0x175634))(iVar2);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar31 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar31 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar2);\n        (**(code **)(puVar31 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar2);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb8) + 0x76a8,iVar3,in_a1);\n        (**(code **)(puVar31 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar31 + 0x1756a8))(uVar15);\n        (**(code **)(puVar31 + 0x175634))(iVar2);\n      }" { (expression_statement "iVar2 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1);" (assignment_expression "iVar2 = (**(code **)(puVar31 + 0x175cf4))(0,in_a1)" identifier = (call_expression "(**(code **)(puVar31 + 0x175cf4))(0,in_a1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175cf4))" ( (pointer_expression "**(code **)(puVar31 + 0x175cf4)" * (pointer_expression "*(code **)(puVar31 + 0x175cf4)" * (cast_expression "(code **)(puVar31 + 0x175cf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175cf4)" ( (binary_expression "puVar31 + 0x175cf4" identifier + number_literal) ))))) )) (argument_list "(0,in_a1)" ( number_literal , identifier )))) ;) (if_statement "if (iVar2 == 0) {\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }" { (expression_statement "(**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar31 + 0x175608))" ( (pointer_expression "**(code **)(puVar31 + 0x175608)" * (pointer_expression "*(code **)(puVar31 + 0x175608)" * (cast_expression "(code **)(puVar31 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175608)" ( (binary_expression "puVar31 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }" if (parenthesized_expression "(pIStack_10fc != (Image *)0x0)" ( (binary_expression "pIStack_10fc != (Image *)0x0" identifier != (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }" { (expression_statement "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175d70))" ( (pointer_expression "**(code **)(puVar31 + 0x175d70)" * (pointer_expression "*(code **)(puVar31 + 0x175d70)" * (cast_expression "(code **)(puVar31 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175d70)" ( (binary_expression "puVar31 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf8)" * (pointer_expression "*(code **)(puVar31 + 0x175bf8)" * (cast_expression "(code **)(puVar31 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf8)" ( (binary_expression "puVar31 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "pIStack_10fc = (Image *)0x0;" (assignment_expression "pIStack_10fc = (Image *)0x0" identifier = (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "iVar3 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1);" (assignment_expression "iVar3 = (**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1)" identifier = (call_expression "(**(code **)(puVar31 + 0x175bf4))(uStack_10d4,1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf4)" * (pointer_expression "*(code **)(puVar31 + 0x175bf4)" * (cast_expression "(code **)(puVar31 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf4)" ( (binary_expression "puVar31 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(uStack_10d4,1)" ( identifier , number_literal )))) ;) (if_statement "if (iVar3 == 0) {\n          (**(code **)(puVar31 + 0x175634))(iVar2);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n          (**(code **)(puVar31 + 0x175634))(iVar2);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }" { (expression_statement "(**(code **)(puVar31 + 0x175634))(iVar2);" (call_expression "(**(code **)(puVar31 + 0x175634))(iVar2)" (parenthesized_expression "(**(code **)(puVar31 + 0x175634))" ( (pointer_expression "**(code **)(puVar31 + 0x175634)" * (pointer_expression "*(code **)(puVar31 + 0x175634)" * (cast_expression "(code **)(puVar31 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175634)" ( (binary_expression "puVar31 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar2)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar31 + 0x175608))" ( (pointer_expression "**(code **)(puVar31 + 0x175608)" * (pointer_expression "*(code **)(puVar31 + 0x175608)" * (cast_expression "(code **)(puVar31 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175608)" ( (binary_expression "puVar31 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }" if (parenthesized_expression "(pIStack_10fc != (Image *)0x0)" ( (binary_expression "pIStack_10fc != (Image *)0x0" identifier != (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }" { (expression_statement "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175d70))" ( (pointer_expression "**(code **)(puVar31 + 0x175d70)" * (pointer_expression "*(code **)(puVar31 + 0x175d70)" * (cast_expression "(code **)(puVar31 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175d70)" ( (binary_expression "puVar31 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf8)" * (pointer_expression "*(code **)(puVar31 + 0x175bf8)" * (cast_expression "(code **)(puVar31 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf8)" ( (binary_expression "puVar31 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "pIStack_10fc = (Image *)0x0;" (assignment_expression "pIStack_10fc = (Image *)0x0" identifier = (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "(**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);" (call_expression "(**(code **)(puVar31 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x1759b0))" ( (pointer_expression "**(code **)(puVar31 + 0x1759b0)" * (pointer_expression "*(code **)(puVar31 + 0x1759b0)" * (cast_expression "(code **)(puVar31 + 0x1759b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1759b0)" ( (binary_expression "puVar31 + 0x1759b0" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar2 + 0x3348),iVar3)" ( (pointer_expression "*(undefined4 *)(iVar2 + 0x3348)" * (cast_expression "(undefined4 *)(iVar2 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x3348)" ( (binary_expression "iVar2 + 0x3348" identifier + number_literal) )))) , identifier ))) ;) (expression_statement "iVar3 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1);" (assignment_expression "iVar3 = (**(code **)(puVar31 + 0x175bf4))(0x14000,1)" identifier = (call_expression "(**(code **)(puVar31 + 0x175bf4))(0x14000,1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf4)" * (pointer_expression "*(code **)(puVar31 + 0x175bf4)" * (cast_expression "(code **)(puVar31 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf4)" ( (binary_expression "puVar31 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(0x14000,1)" ( number_literal , number_literal )))) ;) (if_statement "if (iVar3 != 0) {\n          (**(code **)(puVar31 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar31 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }" if (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (compound_statement "{\n          (**(code **)(puVar31 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar31 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }" { (expression_statement "(**(code **)(puVar31 + 0x175dbc))(iVar3,0,0x14000);" (call_expression "(**(code **)(puVar31 + 0x175dbc))(iVar3,0,0x14000)" (parenthesized_expression "(**(code **)(puVar31 + 0x175dbc))" ( (pointer_expression "**(code **)(puVar31 + 0x175dbc)" * (pointer_expression "*(code **)(puVar31 + 0x175dbc)" * (cast_expression "(code **)(puVar31 + 0x175dbc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175dbc)" ( (binary_expression "puVar31 + 0x175dbc" identifier + number_literal) ))))) )) (argument_list "(iVar3,0,0x14000)" ( identifier , number_literal , number_literal ))) ;) (do_statement "do {\n            iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar31 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );" do (compound_statement "{\n            iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar31 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          }" { (expression_statement "iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3);" (assignment_expression "iVar19 = (**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3)" identifier = (call_expression "(**(code **)(puVar31 + 0x175494))(pIStack_10fc,0x14000,iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x175494))" ( (pointer_expression "**(code **)(puVar31 + 0x175494)" * (pointer_expression "*(code **)(puVar31 + 0x175494)" * (cast_expression "(code **)(puVar31 + 0x175494)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175494)" ( (binary_expression "puVar31 + 0x175494" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc,0x14000,iVar3)" ( identifier , number_literal , identifier )))) ;) (if_statement "if (iVar19 == 0) goto LAB_00287758;" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00287758;" goto statement_identifier ;)) (expression_statement "iVar13 = 0;" (assignment_expression "iVar13 = 0" identifier = number_literal) ;) (if_statement "if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar31 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }" if (parenthesized_expression "(0 < iVar19)" ( (binary_expression "0 < iVar19" number_literal < identifier) )) (compound_statement "{\n              do {\n                iVar22 = (**(code **)(puVar31 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }" { (do_statement "do {\n                iVar22 = (**(code **)(puVar31 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);" do (compound_statement "{\n                iVar22 = (**(code **)(puVar31 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              }" { (expression_statement "iVar22 = (**(code **)(puVar31 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);" (assignment_expression "iVar22 = (**(code **)(puVar31 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13)" identifier = (call_expression "(**(code **)(puVar31 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13)" (parenthesized_expression "(**(code **)(puVar31 + 0x17607c))" ( (pointer_expression "**(code **)(puVar31 + 0x17607c)" * (pointer_expression "*(code **)(puVar31 + 0x17607c)" * (cast_expression "(code **)(puVar31 + 0x17607c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x17607c)" ( (binary_expression "puVar31 + 0x17607c" identifier + number_literal) ))))) )) (argument_list "(iVar2,iVar19 - iVar13,iVar3 + iVar13)" ( identifier , (binary_expression "iVar19 - iVar13" identifier - identifier) , (binary_expression "iVar3 + iVar13" identifier + identifier) )))) ;) (if_statement "if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }" if (parenthesized_expression "(iVar22 < 1)" ( (binary_expression "iVar22 < 1" identifier < number_literal) )) (compound_statement "{\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }" { (if_statement "if (iVar13 < iVar19) goto LAB_00287758;" if (parenthesized_expression "(iVar13 < iVar19)" ( (binary_expression "iVar13 < iVar19" identifier < identifier) )) (goto_statement "goto LAB_00287758;" goto statement_identifier ;)) (break_statement "break;" break ;) })) (expression_statement "iVar13 = iVar13 + iVar22;" (assignment_expression "iVar13 = iVar13 + iVar22" identifier = (binary_expression "iVar13 + iVar22" identifier + identifier)) ;) }) while (parenthesized_expression "(iVar13 < iVar19)" ( (binary_expression "iVar13 < iVar19" identifier < identifier) )) ;) })) }) while (parenthesized_expression "( true )" ( true )) ;) })) (labeled_statement "LAB_00287768:\n        uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar2);" statement_identifier : (expression_statement "uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar2);" (assignment_expression "uVar15 = (**(code **)(puVar31 + 0x1754cc))(iVar2)" identifier = (call_expression "(**(code **)(puVar31 + 0x1754cc))(iVar2)" (parenthesized_expression "(**(code **)(puVar31 + 0x1754cc))" ( (pointer_expression "**(code **)(puVar31 + 0x1754cc)" * (pointer_expression "*(code **)(puVar31 + 0x1754cc)" * (cast_expression "(code **)(puVar31 + 0x1754cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1754cc)" ( (binary_expression "puVar31 + 0x1754cc" identifier + number_literal) ))))) )) (argument_list "(iVar2)" ( identifier )))) ;)) (expression_statement "(**(code **)(puVar31 + 0x175ba0))(iVar2);" (call_expression "(**(code **)(puVar31 + 0x175ba0))(iVar2)" (parenthesized_expression "(**(code **)(puVar31 + 0x175ba0))" ( (pointer_expression "**(code **)(puVar31 + 0x175ba0)" * (pointer_expression "*(code **)(puVar31 + 0x175ba0)" * (cast_expression "(code **)(puVar31 + 0x175ba0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175ba0)" ( (binary_expression "puVar31 + 0x175ba0" identifier + number_literal) ))))) )) (argument_list "(iVar2)" ( identifier ))) ;) (expression_statement "iVar3 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_05);" (assignment_expression "iVar3 = (**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_05)" identifier = (call_expression "(**(code **)(puVar31 + 0x175dac))(uVar15,extraout_v1_05)" (parenthesized_expression "(**(code **)(puVar31 + 0x175dac))" ( (pointer_expression "**(code **)(puVar31 + 0x175dac)" * (pointer_expression "*(code **)(puVar31 + 0x175dac)" * (cast_expression "(code **)(puVar31 + 0x175dac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175dac)" ( (binary_expression "puVar31 + 0x175dac" identifier + number_literal) ))))) )) (argument_list "(uVar15,extraout_v1_05)" ( identifier , identifier )))) ;) (if_statement "if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar2);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n          uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar31 + 0x1756a8))(uVar15);\n          (**(code **)(puVar31 + 0x175634))(iVar2);\n          (**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }\n          goto LAB_00287858;\n        }" { (expression_statement "uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348))" identifier = (call_expression "(**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348))" (parenthesized_expression "(**(code **)(puVar31 + 0x175e54))" ( (pointer_expression "**(code **)(puVar31 + 0x175e54)" * (pointer_expression "*(code **)(puVar31 + 0x175e54)" * (cast_expression "(code **)(puVar31 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175e54)" ( (binary_expression "puVar31 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar2 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar2 + 0x3348)" * (cast_expression "(undefined4 *)(iVar2 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x3348)" ( (binary_expression "iVar2 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar31 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar31 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar31 + 0x1756a8)" * (pointer_expression "*(code **)(puVar31 + 0x1756a8)" * (cast_expression "(code **)(puVar31 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756a8)" ( (binary_expression "puVar31 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175634))(iVar2);" (call_expression "(**(code **)(puVar31 + 0x175634))(iVar2)" (parenthesized_expression "(**(code **)(puVar31 + 0x175634))" ( (pointer_expression "**(code **)(puVar31 + 0x175634)" * (pointer_expression "*(code **)(puVar31 + 0x175634)" * (cast_expression "(code **)(puVar31 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175634)" ( (binary_expression "puVar31 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar2)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar31 + 0x175608))\n                    (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar31 + 0x175608))" ( (pointer_expression "**(code **)(puVar31 + 0x175608)" * (pointer_expression "*(code **)(puVar31 + 0x175608)" * (cast_expression "(code **)(puVar31 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175608)" ( (binary_expression "puVar31 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,\n                     *(int *)(puVar31 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pIStack_10fc != (Image *)0x0) {\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }" if (parenthesized_expression "(pIStack_10fc != (Image *)0x0)" ( (binary_expression "pIStack_10fc != (Image *)0x0" identifier != (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n            (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n            pIStack_10fc = (Image *)0x0;\n          }" { (expression_statement "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175d70))" ( (pointer_expression "**(code **)(puVar31 + 0x175d70)" * (pointer_expression "*(code **)(puVar31 + 0x175d70)" * (cast_expression "(code **)(puVar31 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175d70)" ( (binary_expression "puVar31 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf8)" * (pointer_expression "*(code **)(puVar31 + 0x175bf8)" * (cast_expression "(code **)(puVar31 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf8)" ( (binary_expression "puVar31 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "pIStack_10fc = (Image *)0x0;" (assignment_expression "pIStack_10fc = (Image *)0x0" identifier = (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "(**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb8) + 0x76a8,iVar3,in_a1);" (call_expression "(**(code **)(puVar31 + 0x175d80))\n                  (pIStack_10fc,*(int *)(puVar31 + 0x174fb8) + 0x76a8,iVar3,in_a1)" (parenthesized_expression "(**(code **)(puVar31 + 0x175d80))" ( (pointer_expression "**(code **)(puVar31 + 0x175d80)" * (pointer_expression "*(code **)(puVar31 + 0x175d80)" * (cast_expression "(code **)(puVar31 + 0x175d80)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175d80)" ( (binary_expression "puVar31 + 0x175d80" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc,*(int *)(puVar31 + 0x174fb8) + 0x76a8,iVar3,in_a1)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x174fb8) + 0x76a8" (pointer_expression "*(int *)(puVar31 + 0x174fb8)" * (cast_expression "(int *)(puVar31 + 0x174fb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb8)" ( (binary_expression "puVar31 + 0x174fb8" identifier + number_literal) )))) + number_literal) , identifier , identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x1754e4))(iVar3);" (call_expression "(**(code **)(puVar31 + 0x1754e4))(iVar3)" (parenthesized_expression "(**(code **)(puVar31 + 0x1754e4))" ( (pointer_expression "**(code **)(puVar31 + 0x1754e4)" * (pointer_expression "*(code **)(puVar31 + 0x1754e4)" * (cast_expression "(code **)(puVar31 + 0x1754e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1754e4)" ( (binary_expression "puVar31 + 0x1754e4" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348))" identifier = (call_expression "(**(code **)(puVar31 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348))" (parenthesized_expression "(**(code **)(puVar31 + 0x175e54))" ( (pointer_expression "**(code **)(puVar31 + 0x175e54)" * (pointer_expression "*(code **)(puVar31 + 0x175e54)" * (cast_expression "(code **)(puVar31 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175e54)" ( (binary_expression "puVar31 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar2 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar2 + 0x3348)" * (cast_expression "(undefined4 *)(iVar2 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x3348)" ( (binary_expression "iVar2 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar31 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar31 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar31 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar31 + 0x1756a8)" * (pointer_expression "*(code **)(puVar31 + 0x1756a8)" * (cast_expression "(code **)(puVar31 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x1756a8)" ( (binary_expression "puVar31 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175634))(iVar2);" (call_expression "(**(code **)(puVar31 + 0x175634))(iVar2)" (parenthesized_expression "(**(code **)(puVar31 + 0x175634))" ( (pointer_expression "**(code **)(puVar31 + 0x175634)" * (pointer_expression "*(code **)(puVar31 + 0x175634)" * (cast_expression "(code **)(puVar31 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175634)" ( (binary_expression "puVar31 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar2)" ( identifier ))) ;) })) (expression_statement "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175d70))" ( (pointer_expression "**(code **)(puVar31 + 0x175d70)" * (pointer_expression "*(code **)(puVar31 + 0x175d70)" * (cast_expression "(code **)(puVar31 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175d70)" ( (binary_expression "puVar31 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "pIStack_10fc = (Image *)(**(code **)(puVar31 + 0x175b34))(pIStack_10fc);" (assignment_expression "pIStack_10fc = (Image *)(**(code **)(puVar31 + 0x175b34))(pIStack_10fc)" identifier = (cast_expression "(Image *)(**(code **)(puVar31 + 0x175b34))(pIStack_10fc)" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar31 + 0x175b34))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175b34))" ( (pointer_expression "**(code **)(puVar31 + 0x175b34)" * (pointer_expression "*(code **)(puVar31 + 0x175b34)" * (cast_expression "(code **)(puVar31 + 0x175b34)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175b34)" ( (binary_expression "puVar31 + 0x175b34" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))))) ;) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "(**(code **)(puVar31 + 0x175608))\n              (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x53d,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78\n               ,iVar20 + 0x2210);" (call_expression "(**(code **)(puVar31 + 0x175608))\n              (in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x53d,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78\n               ,iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar31 + 0x175608))" ( (pointer_expression "**(code **)(puVar31 + 0x175608)" * (pointer_expression "*(code **)(puVar31 + 0x175608)" * (cast_expression "(code **)(puVar31 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175608)" ( (binary_expression "puVar31 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(in_a1,*(int *)(puVar31 + 0x175020) + -0x48cc,*(int *)(puVar31 + 0x175020) + -0x4700,\n               0x53d,400,*(int *)(puVar31 + 0x174fb0) + 0x46c8,*(int *)(puVar31 + 0x174fb0) + 0x6e78\n               ,iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar31 + 0x175020)" * (cast_expression "(int *)(puVar31 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x175020)" ( (binary_expression "puVar31 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar31 + 0x174fb0)" * (cast_expression "(int *)(puVar31 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + 0x174fb0)" ( (binary_expression "puVar31 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pIStack_10fc != (Image *)0x0) {\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      pIStack_10fc = (Image *)0x0;\n      goto LAB_00287858;\n    }" if (parenthesized_expression "(pIStack_10fc != (Image *)0x0)" ( (binary_expression "pIStack_10fc != (Image *)0x0" identifier != (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      (**(code **)(puVar31 + 0x175d70))(pIStack_10fc);\n      (**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);\n      pIStack_10fc = (Image *)0x0;\n      goto LAB_00287858;\n    }" { (expression_statement "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175d70))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175d70))" ( (pointer_expression "**(code **)(puVar31 + 0x175d70)" * (pointer_expression "*(code **)(puVar31 + 0x175d70)" * (cast_expression "(code **)(puVar31 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175d70)" ( (binary_expression "puVar31 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc);" (call_expression "(**(code **)(puVar31 + 0x175bf8))(pIStack_10fc)" (parenthesized_expression "(**(code **)(puVar31 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar31 + 0x175bf8)" * (pointer_expression "*(code **)(puVar31 + 0x175bf8)" * (cast_expression "(code **)(puVar31 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175bf8)" ( (binary_expression "puVar31 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pIStack_10fc)" ( identifier ))) ;) (expression_statement "pIStack_10fc = (Image *)0x0;" (assignment_expression "pIStack_10fc = (Image *)0x0" identifier = (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) }))) (labeled_statement "LAB_00286534:\n  pIStack_10fc = (Image *)0x0;" statement_identifier : (expression_statement "pIStack_10fc = (Image *)0x0;" (assignment_expression "pIStack_10fc = (Image *)0x0" identifier = (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (labeled_statement "LAB_00287858:\n  if (iStack_84 != **(int **)(puVar31 + 0x175918)) {\n    pcVar32 = *(code **)(puVar31 + 0x17574c);\n    (*pcVar32)();\n    iVar19 = *(int *)(pcVar32 + 0x171abc);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x483c);\n    iVar3 = *(int *)(pcVar32 + 0x171dbc) + 0x4930;\n    *(int *)(iVar20 + 0x18) = iVar3;\n    iVar2 = *(int *)(pcVar32 + 0x171dbc) + 0x3578;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4820);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4800);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x47dc);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x47c0);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x47a8);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4788);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar32 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78d8,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78dc,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4760);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar32 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78e8,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78f4,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    return 0x810;\n  }" statement_identifier : (if_statement "if (iStack_84 != **(int **)(puVar31 + 0x175918)) {\n    pcVar32 = *(code **)(puVar31 + 0x17574c);\n    (*pcVar32)();\n    iVar19 = *(int *)(pcVar32 + 0x171abc);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x483c);\n    iVar3 = *(int *)(pcVar32 + 0x171dbc) + 0x4930;\n    *(int *)(iVar20 + 0x18) = iVar3;\n    iVar2 = *(int *)(pcVar32 + 0x171dbc) + 0x3578;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4820);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4800);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x47dc);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x47c0);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x47a8);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4788);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar32 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78d8,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78dc,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4760);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar32 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78e8,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78f4,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    return 0x810;\n  }" if (parenthesized_expression "(iStack_84 != **(int **)(puVar31 + 0x175918))" ( (binary_expression "iStack_84 != **(int **)(puVar31 + 0x175918)" identifier != (pointer_expression "**(int **)(puVar31 + 0x175918)" * (pointer_expression "*(int **)(puVar31 + 0x175918)" * (cast_expression "(int **)(puVar31 + 0x175918)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x175918)" ( (binary_expression "puVar31 + 0x175918" identifier + number_literal) )))))) )) (compound_statement "{\n    pcVar32 = *(code **)(puVar31 + 0x17574c);\n    (*pcVar32)();\n    iVar19 = *(int *)(pcVar32 + 0x171abc);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x483c);\n    iVar3 = *(int *)(pcVar32 + 0x171dbc) + 0x4930;\n    *(int *)(iVar20 + 0x18) = iVar3;\n    iVar2 = *(int *)(pcVar32 + 0x171dbc) + 0x3578;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4820);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4800);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x47dc);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x47c0);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x47a8);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4788);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar32 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78d8,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78dc,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4760);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar32 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78e8,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78f4,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar32 + 0x1720b0))(iVar20);\n    return 0x810;\n  }" { (expression_statement "pcVar32 = *(code **)(puVar31 + 0x17574c);" (assignment_expression "pcVar32 = *(code **)(puVar31 + 0x17574c)" identifier = (pointer_expression "*(code **)(puVar31 + 0x17574c)" * (cast_expression "(code **)(puVar31 + 0x17574c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + 0x17574c)" ( (binary_expression "puVar31 + 0x17574c" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar32)();" (call_expression "(*pcVar32)()" (parenthesized_expression "(*pcVar32)" ( (pointer_expression "*pcVar32" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "iVar19 = *(int *)(pcVar32 + 0x171abc);" (assignment_expression "iVar19 = *(int *)(pcVar32 + 0x171abc)" identifier = (pointer_expression "*(int *)(pcVar32 + 0x171abc)" * (cast_expression "(int *)(pcVar32 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0x171abc)" ( (binary_expression "pcVar32 + 0x171abc" identifier + number_literal) ))))) ;) (expression_statement "iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x483c);" (assignment_expression "iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x483c)" identifier = (call_expression "(**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x483c)" (parenthesized_expression "(**(code **)(pcVar32 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar32 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar32 + 0x1727d0)" * (cast_expression "(code **)(pcVar32 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0x1727d0)" ( (binary_expression "pcVar32 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x483c)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar32 + 0x171abc) + 0x7890" (pointer_expression "*(int *)(pcVar32 + 0x171abc)" * (cast_expression "(int *)(pcVar32 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0x171abc)" ( (binary_expression "pcVar32 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar32 + 0x171b2c) + -0x483c" (pointer_expression "*(int *)(pcVar32 + 0x171b2c)" * (cast_expression "(int *)(pcVar32 + 0x171b2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0x171b2c)" ( (binary_expression "pcVar32 + 0x171b2c" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "iVar3 = *(int *)(pcVar32 + 0x171dbc) + 0x4930;" (assignment_expression "iVar3 = *(int *)(pcVar32 + 0x171dbc) + 0x4930" identifier = (binary_expression "*(int *)(pcVar32 + 0x171dbc) + 0x4930" (pointer_expression "*(int *)(pcVar32 + 0x171dbc)" * (cast_expression "(int *)(pcVar32 + 0x171dbc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0x171dbc)" ( (binary_expression "pcVar32 + 0x171dbc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar2 = *(int *)(pcVar32 + 0x171dbc) + 0x3578;" (assignment_expression "iVar2 = *(int *)(pcVar32 + 0x171dbc) + 0x3578" identifier = (binary_expression "*(int *)(pcVar32 + 0x171dbc) + 0x3578" (pointer_expression "*(int *)(pcVar32 + 0x171dbc)" * (cast_expression "(int *)(pcVar32 + 0x171dbc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0x171dbc)" ( (binary_expression "pcVar32 + 0x171dbc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar32 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar32 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar32 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar32 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar32 + 0x1720b0)" * (cast_expression "(code **)(pcVar32 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0x1720b0)" ( (binary_expression "pcVar32 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (expression_statement "iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4820);" (assignment_expression "iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4820)" identifier = (call_expression "(**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4820)" (parenthesized_expression "(**(code **)(pcVar32 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar32 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar32 + 0x1727d0)" * (cast_expression "(code **)(pcVar32 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0x1727d0)" ( (binary_expression "pcVar32 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4820)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar32 + 0x171abc) + 0x78a0" (pointer_expression "*(int *)(pcVar32 + 0x171abc)" * (cast_expression "(int *)(pcVar32 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0x171abc)" ( (binary_expression "pcVar32 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar32 + 0x171b2c) + -0x4820" (pointer_expression "*(int *)(pcVar32 + 0x171b2c)" * (cast_expression "(int *)(pcVar32 + 0x171b2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0x171b2c)" ( (binary_expression "pcVar32 + 0x171b2c" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar32 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar32 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar32 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar32 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar32 + 0x1720b0)" * (cast_expression "(code **)(pcVar32 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0x1720b0)" ( (binary_expression "pcVar32 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (expression_statement "iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4800);" (assignment_expression "iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4800)" identifier = (call_expression "(**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4800)" (parenthesized_expression "(**(code **)(pcVar32 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar32 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar32 + 0x1727d0)" * (cast_expression "(code **)(pcVar32 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0x1727d0)" ( (binary_expression "pcVar32 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4800)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar32 + 0x171abc) + 0x78ac" (pointer_expression "*(int *)(pcVar32 + 0x171abc)" * (cast_expression "(int *)(pcVar32 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0x171abc)" ( (binary_expression "pcVar32 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar32 + 0x171b2c) + -0x4800" (pointer_expression "*(int *)(pcVar32 + 0x171b2c)" * (cast_expression "(int *)(pcVar32 + 0x171b2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0x171b2c)" ( (binary_expression "pcVar32 + 0x171b2c" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar32 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar32 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar32 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar32 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar32 + 0x1720b0)" * (cast_expression "(code **)(pcVar32 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0x1720b0)" ( (binary_expression "pcVar32 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (expression_statement "iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x47dc);" (assignment_expression "iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x47dc)" identifier = (call_expression "(**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x47dc)" (parenthesized_expression "(**(code **)(pcVar32 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar32 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar32 + 0x1727d0)" * (cast_expression "(code **)(pcVar32 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0x1727d0)" ( (binary_expression "pcVar32 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x47dc)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar32 + 0x171abc) + 0x78b8" (pointer_expression "*(int *)(pcVar32 + 0x171abc)" * (cast_expression "(int *)(pcVar32 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0x171abc)" ( (binary_expression "pcVar32 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar32 + 0x171b2c) + -0x47dc" (pointer_expression "*(int *)(pcVar32 + 0x171b2c)" * (cast_expression "(int *)(pcVar32 + 0x171b2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0x171b2c)" ( (binary_expression "pcVar32 + 0x171b2c" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar32 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar32 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar32 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar32 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar32 + 0x1720b0)" * (cast_expression "(code **)(pcVar32 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0x1720b0)" ( (binary_expression "pcVar32 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (expression_statement "iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x47c0);" (assignment_expression "iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x47c0)" identifier = (call_expression "(**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x47c0)" (parenthesized_expression "(**(code **)(pcVar32 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar32 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar32 + 0x1727d0)" * (cast_expression "(code **)(pcVar32 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0x1727d0)" ( (binary_expression "pcVar32 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x47c0)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar32 + 0x171abc) + 0x78c0" (pointer_expression "*(int *)(pcVar32 + 0x171abc)" * (cast_expression "(int *)(pcVar32 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0x171abc)" ( (binary_expression "pcVar32 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar32 + 0x171b2c) + -0x47c0" (pointer_expression "*(int *)(pcVar32 + 0x171b2c)" * (cast_expression "(int *)(pcVar32 + 0x171b2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0x171b2c)" ( (binary_expression "pcVar32 + 0x171b2c" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar32 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar32 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar32 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar32 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar32 + 0x1720b0)" * (cast_expression "(code **)(pcVar32 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0x1720b0)" ( (binary_expression "pcVar32 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (expression_statement "iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x47a8);" (assignment_expression "iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x47a8)" identifier = (call_expression "(**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x47a8)" (parenthesized_expression "(**(code **)(pcVar32 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar32 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar32 + 0x1727d0)" * (cast_expression "(code **)(pcVar32 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0x1727d0)" ( (binary_expression "pcVar32 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x47a8)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar32 + 0x171abc) + 0x78cc" (pointer_expression "*(int *)(pcVar32 + 0x171abc)" * (cast_expression "(int *)(pcVar32 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0x171abc)" ( (binary_expression "pcVar32 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar32 + 0x171b2c) + -0x47a8" (pointer_expression "*(int *)(pcVar32 + 0x171b2c)" * (cast_expression "(int *)(pcVar32 + 0x171b2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0x171b2c)" ( (binary_expression "pcVar32 + 0x171b2c" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar32 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar32 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar32 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar32 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar32 + 0x1720b0)" * (cast_expression "(code **)(pcVar32 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0x1720b0)" ( (binary_expression "pcVar32 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (expression_statement "iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4788);" (assignment_expression "iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4788)" identifier = (call_expression "(**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4788)" (parenthesized_expression "(**(code **)(pcVar32 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar32 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar32 + 0x1727d0)" * (cast_expression "(code **)(pcVar32 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0x1727d0)" ( (binary_expression "pcVar32 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4788)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar32 + 0x171abc) + 0x78d4" (pointer_expression "*(int *)(pcVar32 + 0x171abc)" * (cast_expression "(int *)(pcVar32 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0x171abc)" ( (binary_expression "pcVar32 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar32 + 0x171b2c) + -0x4788" (pointer_expression "*(int *)(pcVar32 + 0x171b2c)" * (cast_expression "(int *)(pcVar32 + 0x171b2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0x171b2c)" ( (binary_expression "pcVar32 + 0x171b2c" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar32 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar32 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar32 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar32 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar32 + 0x1720b0)" * (cast_expression "(code **)(pcVar32 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0x1720b0)" ( (binary_expression "pcVar32 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (expression_statement "iVar13 = *(int *)(pcVar32 + 0x171b2c);" (assignment_expression "iVar13 = *(int *)(pcVar32 + 0x171b2c)" identifier = (pointer_expression "*(int *)(pcVar32 + 0x171b2c)" * (cast_expression "(int *)(pcVar32 + 0x171b2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0x171b2c)" ( (binary_expression "pcVar32 + 0x171b2c" identifier + number_literal) ))))) ;) (expression_statement "iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78d8,iVar13 + -0x4774);" (assignment_expression "iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78d8,iVar13 + -0x4774)" identifier = (call_expression "(**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78d8,iVar13 + -0x4774)" (parenthesized_expression "(**(code **)(pcVar32 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar32 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar32 + 0x1727d0)" * (cast_expression "(code **)(pcVar32 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0x1727d0)" ( (binary_expression "pcVar32 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78d8,iVar13 + -0x4774)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar32 + 0x171abc) + 0x78d8" (pointer_expression "*(int *)(pcVar32 + 0x171abc)" * (cast_expression "(int *)(pcVar32 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0x171abc)" ( (binary_expression "pcVar32 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar13 + -0x4774" identifier + number_literal) )))) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar32 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar32 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar32 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar32 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar32 + 0x1720b0)" * (cast_expression "(code **)(pcVar32 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0x1720b0)" ( (binary_expression "pcVar32 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (expression_statement "iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78dc,iVar13 + -0x4774);" (assignment_expression "iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78dc,iVar13 + -0x4774)" identifier = (call_expression "(**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78dc,iVar13 + -0x4774)" (parenthesized_expression "(**(code **)(pcVar32 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar32 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar32 + 0x1727d0)" * (cast_expression "(code **)(pcVar32 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0x1727d0)" ( (binary_expression "pcVar32 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78dc,iVar13 + -0x4774)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar32 + 0x171abc) + 0x78dc" (pointer_expression "*(int *)(pcVar32 + 0x171abc)" * (cast_expression "(int *)(pcVar32 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0x171abc)" ( (binary_expression "pcVar32 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar13 + -0x4774" identifier + number_literal) )))) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar32 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar32 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar32 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar32 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar32 + 0x1720b0)" * (cast_expression "(code **)(pcVar32 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0x1720b0)" ( (binary_expression "pcVar32 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (expression_statement "iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4760);" (assignment_expression "iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4760)" identifier = (call_expression "(**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4760)" (parenthesized_expression "(**(code **)(pcVar32 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar32 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar32 + 0x1727d0)" * (cast_expression "(code **)(pcVar32 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0x1727d0)" ( (binary_expression "pcVar32 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar32 + 0x171b2c) + -0x4760)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar32 + 0x171abc) + 0x78e0" (pointer_expression "*(int *)(pcVar32 + 0x171abc)" * (cast_expression "(int *)(pcVar32 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0x171abc)" ( (binary_expression "pcVar32 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar32 + 0x171b2c) + -0x4760" (pointer_expression "*(int *)(pcVar32 + 0x171b2c)" * (cast_expression "(int *)(pcVar32 + 0x171b2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0x171b2c)" ( (binary_expression "pcVar32 + 0x171b2c" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar32 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar32 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar32 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar32 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar32 + 0x1720b0)" * (cast_expression "(code **)(pcVar32 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0x1720b0)" ( (binary_expression "pcVar32 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (expression_statement "iVar13 = *(int *)(pcVar32 + 0x171b2c);" (assignment_expression "iVar13 = *(int *)(pcVar32 + 0x171b2c)" identifier = (pointer_expression "*(int *)(pcVar32 + 0x171b2c)" * (cast_expression "(int *)(pcVar32 + 0x171b2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0x171b2c)" ( (binary_expression "pcVar32 + 0x171b2c" identifier + number_literal) ))))) ;) (expression_statement "iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78e8,iVar13 + -0x4750);" (assignment_expression "iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78e8,iVar13 + -0x4750)" identifier = (call_expression "(**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78e8,iVar13 + -0x4750)" (parenthesized_expression "(**(code **)(pcVar32 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar32 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar32 + 0x1727d0)" * (cast_expression "(code **)(pcVar32 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0x1727d0)" ( (binary_expression "pcVar32 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78e8,iVar13 + -0x4750)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar32 + 0x171abc) + 0x78e8" (pointer_expression "*(int *)(pcVar32 + 0x171abc)" * (cast_expression "(int *)(pcVar32 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0x171abc)" ( (binary_expression "pcVar32 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar13 + -0x4750" identifier + number_literal) )))) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar32 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar32 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar32 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar32 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar32 + 0x1720b0)" * (cast_expression "(code **)(pcVar32 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0x1720b0)" ( (binary_expression "pcVar32 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (expression_statement "iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78f4,iVar13 + -0x4750);" (assignment_expression "iVar20 = (**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78f4,iVar13 + -0x4750)" identifier = (call_expression "(**(code **)(pcVar32 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78f4,iVar13 + -0x4750)" (parenthesized_expression "(**(code **)(pcVar32 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar32 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar32 + 0x1727d0)" * (cast_expression "(code **)(pcVar32 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0x1727d0)" ( (binary_expression "pcVar32 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar32 + 0x171abc) + 0x78f4,iVar13 + -0x4750)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar32 + 0x171abc) + 0x78f4" (pointer_expression "*(int *)(pcVar32 + 0x171abc)" * (cast_expression "(int *)(pcVar32 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0x171abc)" ( (binary_expression "pcVar32 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar13 + -0x4750" identifier + number_literal) )))) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar32 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar32 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar32 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar32 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar32 + 0x1720b0)" * (cast_expression "(code **)(pcVar32 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0x1720b0)" ( (binary_expression "pcVar32 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (return_statement "return 0x810;" return number_literal ;) }))) (return_statement "return (size_t)pIStack_10fc;" return (cast_expression "(size_t)pIStack_10fc" ( (type_descriptor "size_t" primitive_type) ) identifier) ;) })))
(translation_unit "char * FUN_0028458c(char *param_1,char *param_2)\n\n{\n  undefined1 uVar16;\n  char *pcVar1;\n  int iVar2;\n  int iVar3;\n  undefined1 *puVar4;\n  char cVar17;\n  int iVar5;\n  int iVar6;\n  byte bVar18;\n  int iVar7;\n  int iVar8;\n  int iVar9;\n  undefined4 uVar10;\n  int iVar11;\n  uint uVar12;\n  int iVar13;\n  int iVar14;\n  undefined4 uVar15;\n  undefined4 extraout_v1;\n  uint extraout_v1_00;\n  uint extraout_v1_01;\n  undefined4 extraout_v1_02;\n  undefined4 extraout_v1_03;\n  undefined4 extraout_v1_04;\n  undefined4 extraout_v1_05;\n  int iVar19;\n  int iVar20;\n  undefined1 *puVar21;\n  int iVar22;\n  char *unaff_s1;\n  char *pcVar23;\n  char *unaff_s2;\n  int iVar24;\n  int unaff_s3;\n  undefined4 *puVar25;\n  char *unaff_s4;\n  undefined4 uVar26;\n  char *unaff_s5;\n  char *pcVar27;\n  int unaff_s6;\n  int iVar28;\n  uint uVar29;\n  int unaff_s7;\n  undefined *puVar30;\n  int *unaff_s8;\n  code *pcVar31;\n  char *pcStack_10fc;\n  undefined1 *puStack_10ec;\n  uint uStack_10e4;\n  undefined1 *puStack_10dc;\n  uint uStack_10d4;\n  int iStack_10cc;\n  uint uStack_10c8;\n  undefined1 uStack_10b0;\n  undefined1 uStack_10af;\n  char cStack_10ae;\n  undefined1 uStack_10ad;\n  undefined4 uStack_10ac;\n  int iStack_10a8;\n  undefined4 uStack_10a4;\n  undefined4 uStack_10a0;\n  undefined4 uStack_109c;\n  undefined4 uStack_1098;\n  undefined1 auStack_1094 [4];\n  undefined4 uStack_1090;\n  undefined4 uStack_108c;\n  undefined1 uStack_1088;\n  undefined1 auStack_1084 [4096];\n  int iStack_84;\n  char *pcStack_80;\n  char *pcStack_7c;\n  char *pcStack_78;\n  int iStack_74;\n  char *pcStack_70;\n  char *pcStack_6c;\n  int iStack_68;\n  int iStack_64;\n  int *piStack_60;\n  code *pcStack_5c;\n  undefined1 local_30 [3];\n  char cStack_2d;\n  int local_2c;\n  \n  puVar30 = PTR_s__003f9950;\n  local_2c = *(int *)PTR___stack_chk_guard_003fa248;\n  if (*param_1 == '\0') {\n    pcVar1 = (char *)0x0;\n  }\n  else {\n    unaff_s2 = param_1;\n    if (*param_1 == ';') {\n      pcVar1 = (char *)0x1;\nLAB_0028466c:\n      if (param_1 == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar1 = param_1 + 1;\n      iVar20 = 1;\n      param_2 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }\n  }\nLAB_00284620:\n  if (local_2c == *(int *)PTR___stack_chk_guard_003fa248) {\n    return pcVar1;\n  }\n  pcVar31 = FUN_00284930;\n  iVar20 = local_2c;\n  puVar30 = PTR___stack_chk_fail_003fa07c;\n  (*(code *)PTR___stack_chk_fail_003fa07c)();\n  iStack_84 = **(int **)(puVar30 + 0x175918);\n  pcStack_80 = pcVar1;\n  pcStack_7c = unaff_s1;\n  pcStack_78 = unaff_s2;\n  iStack_74 = unaff_s3;\n  pcStack_70 = unaff_s4;\n  pcStack_6c = unaff_s5;\n  iStack_68 = unaff_s6;\n  iStack_64 = unaff_s7;\n  piStack_60 = unaff_s8;\n  pcStack_5c = pcVar31;\n  if (iVar20 == 0) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d48,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a5,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }\n  if (*(int *)(iVar20 + 0x3214) != -0x54535255) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d70,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a6,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }\n  if (*(int *)(iVar20 + 0x3210) != 0) {\n    (**(code **)(puVar30 + 0x1758c8))\n              (0x8000,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700,\n               0x4a8,*(int *)(puVar30 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210);\n  }\n  if (param_2 == (char *)0x0) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x4c80,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4aa,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }\n  if (*(int *)(param_2 + 0x1c) != -0x54535255) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x595c,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4ab,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }\n  pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175cf4))(iVar20,param_2);\n  iVar2 = (**(code **)(puVar30 + 0x175934))(iVar20,pcStack_10fc,2,param_2);\n  if (iVar2 == 0) {\n    (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n    pcStack_10fc = (char *)0x0;\n    goto LAB_00287858;\n  }\n  pcStack_10fc[0x18] = '\0';\n  pcStack_10fc[0x19] = '\0';\n  pcStack_10fc[0x1a] = '\0';\n  pcStack_10fc[0x1b] = '\x01';\n  pcStack_10fc[0x1c] = '\0';\n  pcStack_10fc[0x1d] = '\0';\n  pcStack_10fc[0x1e] = '\0';\n  pcStack_10fc[0x1f] = '\x01';\n  iVar2 = (**(code **)(puVar30 + 0x175578))(pcStack_10fc,param_2);\n  if (iVar2 == 0) {\n    (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n    pcStack_10fc = (char *)0x0;\n    goto LAB_00287858;\n  }\n  iVar2 = iVar20 + 0x210;\n  iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x7890,4);\n  if (iVar3 == 0) {\n    iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n    if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c2,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(1,1);\n    if (puVar4 == (undefined1 *)0x0) {\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c7,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    *puVar4 = 0;\n    (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),puVar4);\n    iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78a0);\n    if (iVar19 != 0) {\n      iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac);\n      if (iVar19 == 0) {\n        puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n        if (puVar4 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar11 = 0;\n          iVar13 = *(int *)(puVar30 + 0x175020);\n          iVar22 = *(int *)(puVar30 + 0x1752b0);\n          iVar14 = *(int *)(puVar30 + 0x174fb8);\n          puVar21 = puVar4;\nLAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }\n      uStack_10d4 = 1;\n      goto LAB_00286050;\n    }\n    puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n    if (puVar4 == (undefined1 *)0x0) {\nLAB_0028544c:\n      uStack_10d4 = 0xffffffff;\n    }\n    else {\n      uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n      iStack_10cc = 0x1000;\n      uStack_10d4 = 0;\n      uStack_10c8 = 0;\n      uStack_10e4 = 0;\n      cVar17 = '\0';\n      puStack_10dc = (undefined1 *)0x0;\n      iVar19 = 0;\n      iVar11 = 0;\n      iVar13 = *(int *)(puVar30 + 0x175020);\n      iVar22 = *(int *)(puVar30 + 0x1752b0);\n      iVar14 = *(int *)(puVar30 + 0x174fb8);\n      puVar21 = puVar4;\n      while( true ) {\n        while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar11 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar9 = *(int *)(puVar30 + 0x174fc8);\n        iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n        iVar8 = 0;\n        while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0) {\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }\n        iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n        iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n        puVar21 = puVar4;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }\n      }\nLAB_0028573c:\n      (**(code **)(puVar30 + 0x175450))(uVar15);\n      if (iVar11 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar30 + 0x17575c))(iVar11);\n      }\nLAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x17575c))(iVar19);\n      }\n      if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n      }\n      (**(code **)(puVar30 + 0x17575c))(puVar4);\n      if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }\nLAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }\n        goto LAB_00287858;\n      }\n      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n    }\n    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n    goto LAB_00286050;\n  }\n  uStack_10d4 = 1;\n  goto LAB_00284a7c;\nLAB_00286038:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);\n  uStack_10d4 = 1;\n  goto LAB_00286050;\nLAB_00285f24:\n  (**(code **)(puVar30 + 0x175450))(uVar15);\n  if (iVar11 != 0) {\nLAB_00287be8:\n    (**(code **)(puVar30 + 0x17575c))(iVar11);\n  }\nLAB_00287bf8:\n  if (iVar19 != 0) {\n    (**(code **)(puVar30 + 0x17575c))(iVar19);\n  }\n  if (puStack_10ec != (undefined1 *)0x0) {\n    (**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n  }\n  (**(code **)(puVar30 + 0x17575c))(puVar4);\n  if ((int)uStack_10c8 < 1) {\nLAB_00287cd8:\n    if (uStack_10d4 == 0) {\n      uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n      (**(code **)(puVar30 + 0x1756a8))(uVar15);\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,\n                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n  }\n  else {\n    iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n    if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n      (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n      iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n      if (-1 < iVar19) goto LAB_00287cd8;\n    }\nLAB_00287db0:\n    uStack_10d4 = 0xffffffff;\n  }\n  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\nLAB_00286050:\n  uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n  (**(code **)(puVar30 + 0x175ba0))(iVar3);\n  iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1);\n  if (iVar19 == 0) {\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4ee,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }\n    goto LAB_00287858;\n  }\n  iVar13 = (**(code **)(puVar30 + 0x175d80))\n                     (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f8,iVar19,param_2);\n  (**(code **)(puVar30 + 0x1754e4))(iVar19);\n  uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n  (**(code **)(puVar30 + 0x1756a8))(uVar15);\n  (**(code **)(puVar30 + 0x175634))(iVar3);\n  if (iVar13 == 0) {\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4f6,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }\n    goto LAB_00287858;\n  }\nLAB_00284a7c:\n  iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78b8,4);\n  if (iVar3 == 0) {\n    (**(code **)(puVar30 + 0x175464))(auStack_1084,0x1000,*(int *)(puVar30 + 0x175020) + -0x4858,1);\n    iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n    if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x500,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      }\n    }\n    else {\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n      if (iVar19 == 0) {\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);\n        if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }\n    }\n    goto LAB_00286534;\n  }\n  iVar3 = *(int *)(puVar30 + 0x174fb0);\n  goto LAB_00284aa4;\nLAB_00286b70:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);\n  goto LAB_00286b84;\nLAB_00286f40:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);\n  goto LAB_00286f50;\nLAB_00287414:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);\n  goto LAB_00287424;\nLAB_00287758:\n  (**(code **)(puVar30 + 0x1756a8))(iVar3);\n  goto LAB_00287768;\nLAB_002867c8:\n  do {\n    iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n  } while (iVar13 != -1);\nLAB_002867e4:\n  uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n  (**(code **)(puVar30 + 0x1756a8))(uVar15);\n  (**(code **)(puVar30 + 0x175634))(iVar19);\nLAB_00286b84:\n  uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n  (**(code **)(puVar30 + 0x175ba0))(iVar3);\n  iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_02);\n  if (iVar19 == 0) {\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x535,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }\n  }\n  else {\n    iVar13 = (**(code **)(puVar30 + 0x175d80))(pcStack_10fc,auStack_1084,iVar19,param_2);\n    (**(code **)(puVar30 + 0x1754e4))(iVar19);\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    iVar3 = *(int *)(puVar30 + 0x174fb0);\n    if (iVar13 != 0) {\nLAB_00284aa4:\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc);\n      if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0);\n      if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      iVar2 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4);\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar2 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);\n        (**(code **)(puVar30 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar2);\n      }\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc);\n      goto LAB_00287858;\n    }\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x53d,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }\n  }\nLAB_00286534:\n  pcStack_10fc = (char *)0x0;\nLAB_00287858:\n  if (iStack_84 != **(int **)(puVar30 + 0x175918)) {\n    pcVar31 = *(code **)(puVar30 + 0x17574c);\n    (*pcVar31)();\n    iVar19 = *(int *)(pcVar31 + 0x171abc);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x483c);\n    iVar3 = *(int *)(pcVar31 + 0x171dbc) + 0x4930;\n    *(int *)(iVar20 + 0x18) = iVar3;\n    iVar2 = *(int *)(pcVar31 + 0x171dbc) + 0x3578;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4820);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4800);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47dc);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47c0);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47a8);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4788);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d8,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78dc,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4760);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e8,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78f4,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    return (char *)0x810;\n  }\n  return pcStack_10fc;\n}\n\n" (function_definition "char * FUN_0028458c(char *param_1,char *param_2)\n\n{\n  undefined1 uVar16;\n  char *pcVar1;\n  int iVar2;\n  int iVar3;\n  undefined1 *puVar4;\n  char cVar17;\n  int iVar5;\n  int iVar6;\n  byte bVar18;\n  int iVar7;\n  int iVar8;\n  int iVar9;\n  undefined4 uVar10;\n  int iVar11;\n  uint uVar12;\n  int iVar13;\n  int iVar14;\n  undefined4 uVar15;\n  undefined4 extraout_v1;\n  uint extraout_v1_00;\n  uint extraout_v1_01;\n  undefined4 extraout_v1_02;\n  undefined4 extraout_v1_03;\n  undefined4 extraout_v1_04;\n  undefined4 extraout_v1_05;\n  int iVar19;\n  int iVar20;\n  undefined1 *puVar21;\n  int iVar22;\n  char *unaff_s1;\n  char *pcVar23;\n  char *unaff_s2;\n  int iVar24;\n  int unaff_s3;\n  undefined4 *puVar25;\n  char *unaff_s4;\n  undefined4 uVar26;\n  char *unaff_s5;\n  char *pcVar27;\n  int unaff_s6;\n  int iVar28;\n  uint uVar29;\n  int unaff_s7;\n  undefined *puVar30;\n  int *unaff_s8;\n  code *pcVar31;\n  char *pcStack_10fc;\n  undefined1 *puStack_10ec;\n  uint uStack_10e4;\n  undefined1 *puStack_10dc;\n  uint uStack_10d4;\n  int iStack_10cc;\n  uint uStack_10c8;\n  undefined1 uStack_10b0;\n  undefined1 uStack_10af;\n  char cStack_10ae;\n  undefined1 uStack_10ad;\n  undefined4 uStack_10ac;\n  int iStack_10a8;\n  undefined4 uStack_10a4;\n  undefined4 uStack_10a0;\n  undefined4 uStack_109c;\n  undefined4 uStack_1098;\n  undefined1 auStack_1094 [4];\n  undefined4 uStack_1090;\n  undefined4 uStack_108c;\n  undefined1 uStack_1088;\n  undefined1 auStack_1084 [4096];\n  int iStack_84;\n  char *pcStack_80;\n  char *pcStack_7c;\n  char *pcStack_78;\n  int iStack_74;\n  char *pcStack_70;\n  char *pcStack_6c;\n  int iStack_68;\n  int iStack_64;\n  int *piStack_60;\n  code *pcStack_5c;\n  undefined1 local_30 [3];\n  char cStack_2d;\n  int local_2c;\n  \n  puVar30 = PTR_s__003f9950;\n  local_2c = *(int *)PTR___stack_chk_guard_003fa248;\n  if (*param_1 == '\0') {\n    pcVar1 = (char *)0x0;\n  }\n  else {\n    unaff_s2 = param_1;\n    if (*param_1 == ';') {\n      pcVar1 = (char *)0x1;\nLAB_0028466c:\n      if (param_1 == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar1 = param_1 + 1;\n      iVar20 = 1;\n      param_2 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }\n  }\nLAB_00284620:\n  if (local_2c == *(int *)PTR___stack_chk_guard_003fa248) {\n    return pcVar1;\n  }\n  pcVar31 = FUN_00284930;\n  iVar20 = local_2c;\n  puVar30 = PTR___stack_chk_fail_003fa07c;\n  (*(code *)PTR___stack_chk_fail_003fa07c)();\n  iStack_84 = **(int **)(puVar30 + 0x175918);\n  pcStack_80 = pcVar1;\n  pcStack_7c = unaff_s1;\n  pcStack_78 = unaff_s2;\n  iStack_74 = unaff_s3;\n  pcStack_70 = unaff_s4;\n  pcStack_6c = unaff_s5;\n  iStack_68 = unaff_s6;\n  iStack_64 = unaff_s7;\n  piStack_60 = unaff_s8;\n  pcStack_5c = pcVar31;\n  if (iVar20 == 0) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d48,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a5,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }\n  if (*(int *)(iVar20 + 0x3214) != -0x54535255) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d70,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a6,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }\n  if (*(int *)(iVar20 + 0x3210) != 0) {\n    (**(code **)(puVar30 + 0x1758c8))\n              (0x8000,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700,\n               0x4a8,*(int *)(puVar30 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210);\n  }\n  if (param_2 == (char *)0x0) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x4c80,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4aa,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }\n  if (*(int *)(param_2 + 0x1c) != -0x54535255) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x595c,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4ab,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }\n  pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175cf4))(iVar20,param_2);\n  iVar2 = (**(code **)(puVar30 + 0x175934))(iVar20,pcStack_10fc,2,param_2);\n  if (iVar2 == 0) {\n    (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n    pcStack_10fc = (char *)0x0;\n    goto LAB_00287858;\n  }\n  pcStack_10fc[0x18] = '\0';\n  pcStack_10fc[0x19] = '\0';\n  pcStack_10fc[0x1a] = '\0';\n  pcStack_10fc[0x1b] = '\x01';\n  pcStack_10fc[0x1c] = '\0';\n  pcStack_10fc[0x1d] = '\0';\n  pcStack_10fc[0x1e] = '\0';\n  pcStack_10fc[0x1f] = '\x01';\n  iVar2 = (**(code **)(puVar30 + 0x175578))(pcStack_10fc,param_2);\n  if (iVar2 == 0) {\n    (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n    pcStack_10fc = (char *)0x0;\n    goto LAB_00287858;\n  }\n  iVar2 = iVar20 + 0x210;\n  iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x7890,4);\n  if (iVar3 == 0) {\n    iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n    if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c2,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(1,1);\n    if (puVar4 == (undefined1 *)0x0) {\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c7,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    *puVar4 = 0;\n    (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),puVar4);\n    iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78a0);\n    if (iVar19 != 0) {\n      iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac);\n      if (iVar19 == 0) {\n        puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n        if (puVar4 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar11 = 0;\n          iVar13 = *(int *)(puVar30 + 0x175020);\n          iVar22 = *(int *)(puVar30 + 0x1752b0);\n          iVar14 = *(int *)(puVar30 + 0x174fb8);\n          puVar21 = puVar4;\nLAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }\n      uStack_10d4 = 1;\n      goto LAB_00286050;\n    }\n    puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n    if (puVar4 == (undefined1 *)0x0) {\nLAB_0028544c:\n      uStack_10d4 = 0xffffffff;\n    }\n    else {\n      uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n      iStack_10cc = 0x1000;\n      uStack_10d4 = 0;\n      uStack_10c8 = 0;\n      uStack_10e4 = 0;\n      cVar17 = '\0';\n      puStack_10dc = (undefined1 *)0x0;\n      iVar19 = 0;\n      iVar11 = 0;\n      iVar13 = *(int *)(puVar30 + 0x175020);\n      iVar22 = *(int *)(puVar30 + 0x1752b0);\n      iVar14 = *(int *)(puVar30 + 0x174fb8);\n      puVar21 = puVar4;\n      while( true ) {\n        while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar11 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar9 = *(int *)(puVar30 + 0x174fc8);\n        iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n        iVar8 = 0;\n        while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0) {\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }\n        iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n        iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n        puVar21 = puVar4;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }\n      }\nLAB_0028573c:\n      (**(code **)(puVar30 + 0x175450))(uVar15);\n      if (iVar11 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar30 + 0x17575c))(iVar11);\n      }\nLAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x17575c))(iVar19);\n      }\n      if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n      }\n      (**(code **)(puVar30 + 0x17575c))(puVar4);\n      if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }\nLAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }\n        goto LAB_00287858;\n      }\n      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n    }\n    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n    goto LAB_00286050;\n  }\n  uStack_10d4 = 1;\n  goto LAB_00284a7c;\nLAB_00286038:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);\n  uStack_10d4 = 1;\n  goto LAB_00286050;\nLAB_00285f24:\n  (**(code **)(puVar30 + 0x175450))(uVar15);\n  if (iVar11 != 0) {\nLAB_00287be8:\n    (**(code **)(puVar30 + 0x17575c))(iVar11);\n  }\nLAB_00287bf8:\n  if (iVar19 != 0) {\n    (**(code **)(puVar30 + 0x17575c))(iVar19);\n  }\n  if (puStack_10ec != (undefined1 *)0x0) {\n    (**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n  }\n  (**(code **)(puVar30 + 0x17575c))(puVar4);\n  if ((int)uStack_10c8 < 1) {\nLAB_00287cd8:\n    if (uStack_10d4 == 0) {\n      uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n      (**(code **)(puVar30 + 0x1756a8))(uVar15);\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,\n                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n  }\n  else {\n    iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n    if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n      (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n      iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n      if (-1 < iVar19) goto LAB_00287cd8;\n    }\nLAB_00287db0:\n    uStack_10d4 = 0xffffffff;\n  }\n  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\nLAB_00286050:\n  uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n  (**(code **)(puVar30 + 0x175ba0))(iVar3);\n  iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1);\n  if (iVar19 == 0) {\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4ee,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }\n    goto LAB_00287858;\n  }\n  iVar13 = (**(code **)(puVar30 + 0x175d80))\n                     (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f8,iVar19,param_2);\n  (**(code **)(puVar30 + 0x1754e4))(iVar19);\n  uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n  (**(code **)(puVar30 + 0x1756a8))(uVar15);\n  (**(code **)(puVar30 + 0x175634))(iVar3);\n  if (iVar13 == 0) {\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4f6,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }\n    goto LAB_00287858;\n  }\nLAB_00284a7c:\n  iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78b8,4);\n  if (iVar3 == 0) {\n    (**(code **)(puVar30 + 0x175464))(auStack_1084,0x1000,*(int *)(puVar30 + 0x175020) + -0x4858,1);\n    iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n    if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x500,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      }\n    }\n    else {\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n      if (iVar19 == 0) {\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);\n        if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }\n    }\n    goto LAB_00286534;\n  }\n  iVar3 = *(int *)(puVar30 + 0x174fb0);\n  goto LAB_00284aa4;\nLAB_00286b70:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);\n  goto LAB_00286b84;\nLAB_00286f40:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);\n  goto LAB_00286f50;\nLAB_00287414:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);\n  goto LAB_00287424;\nLAB_00287758:\n  (**(code **)(puVar30 + 0x1756a8))(iVar3);\n  goto LAB_00287768;\nLAB_002867c8:\n  do {\n    iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n  } while (iVar13 != -1);\nLAB_002867e4:\n  uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n  (**(code **)(puVar30 + 0x1756a8))(uVar15);\n  (**(code **)(puVar30 + 0x175634))(iVar19);\nLAB_00286b84:\n  uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n  (**(code **)(puVar30 + 0x175ba0))(iVar3);\n  iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_02);\n  if (iVar19 == 0) {\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x535,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }\n  }\n  else {\n    iVar13 = (**(code **)(puVar30 + 0x175d80))(pcStack_10fc,auStack_1084,iVar19,param_2);\n    (**(code **)(puVar30 + 0x1754e4))(iVar19);\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    iVar3 = *(int *)(puVar30 + 0x174fb0);\n    if (iVar13 != 0) {\nLAB_00284aa4:\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc);\n      if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0);\n      if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      iVar2 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4);\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar2 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);\n        (**(code **)(puVar30 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar2);\n      }\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc);\n      goto LAB_00287858;\n    }\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x53d,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }\n  }\nLAB_00286534:\n  pcStack_10fc = (char *)0x0;\nLAB_00287858:\n  if (iStack_84 != **(int **)(puVar30 + 0x175918)) {\n    pcVar31 = *(code **)(puVar30 + 0x17574c);\n    (*pcVar31)();\n    iVar19 = *(int *)(pcVar31 + 0x171abc);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x483c);\n    iVar3 = *(int *)(pcVar31 + 0x171dbc) + 0x4930;\n    *(int *)(iVar20 + 0x18) = iVar3;\n    iVar2 = *(int *)(pcVar31 + 0x171dbc) + 0x3578;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4820);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4800);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47dc);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47c0);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47a8);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4788);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d8,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78dc,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4760);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e8,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78f4,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    return (char *)0x810;\n  }\n  return pcStack_10fc;\n}" primitive_type (pointer_declarator "* FUN_0028458c(char *param_1,char *param_2)" * (function_declarator "FUN_0028458c(char *param_1,char *param_2)" identifier (parameter_list "(char *param_1,char *param_2)" ( (parameter_declaration "char *param_1" primitive_type (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "char *param_2" primitive_type (pointer_declarator "*param_2" * identifier)) )))) (compound_statement "{\n  undefined1 uVar16;\n  char *pcVar1;\n  int iVar2;\n  int iVar3;\n  undefined1 *puVar4;\n  char cVar17;\n  int iVar5;\n  int iVar6;\n  byte bVar18;\n  int iVar7;\n  int iVar8;\n  int iVar9;\n  undefined4 uVar10;\n  int iVar11;\n  uint uVar12;\n  int iVar13;\n  int iVar14;\n  undefined4 uVar15;\n  undefined4 extraout_v1;\n  uint extraout_v1_00;\n  uint extraout_v1_01;\n  undefined4 extraout_v1_02;\n  undefined4 extraout_v1_03;\n  undefined4 extraout_v1_04;\n  undefined4 extraout_v1_05;\n  int iVar19;\n  int iVar20;\n  undefined1 *puVar21;\n  int iVar22;\n  char *unaff_s1;\n  char *pcVar23;\n  char *unaff_s2;\n  int iVar24;\n  int unaff_s3;\n  undefined4 *puVar25;\n  char *unaff_s4;\n  undefined4 uVar26;\n  char *unaff_s5;\n  char *pcVar27;\n  int unaff_s6;\n  int iVar28;\n  uint uVar29;\n  int unaff_s7;\n  undefined *puVar30;\n  int *unaff_s8;\n  code *pcVar31;\n  char *pcStack_10fc;\n  undefined1 *puStack_10ec;\n  uint uStack_10e4;\n  undefined1 *puStack_10dc;\n  uint uStack_10d4;\n  int iStack_10cc;\n  uint uStack_10c8;\n  undefined1 uStack_10b0;\n  undefined1 uStack_10af;\n  char cStack_10ae;\n  undefined1 uStack_10ad;\n  undefined4 uStack_10ac;\n  int iStack_10a8;\n  undefined4 uStack_10a4;\n  undefined4 uStack_10a0;\n  undefined4 uStack_109c;\n  undefined4 uStack_1098;\n  undefined1 auStack_1094 [4];\n  undefined4 uStack_1090;\n  undefined4 uStack_108c;\n  undefined1 uStack_1088;\n  undefined1 auStack_1084 [4096];\n  int iStack_84;\n  char *pcStack_80;\n  char *pcStack_7c;\n  char *pcStack_78;\n  int iStack_74;\n  char *pcStack_70;\n  char *pcStack_6c;\n  int iStack_68;\n  int iStack_64;\n  int *piStack_60;\n  code *pcStack_5c;\n  undefined1 local_30 [3];\n  char cStack_2d;\n  int local_2c;\n  \n  puVar30 = PTR_s__003f9950;\n  local_2c = *(int *)PTR___stack_chk_guard_003fa248;\n  if (*param_1 == '\0') {\n    pcVar1 = (char *)0x0;\n  }\n  else {\n    unaff_s2 = param_1;\n    if (*param_1 == ';') {\n      pcVar1 = (char *)0x1;\nLAB_0028466c:\n      if (param_1 == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar1 = param_1 + 1;\n      iVar20 = 1;\n      param_2 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }\n  }\nLAB_00284620:\n  if (local_2c == *(int *)PTR___stack_chk_guard_003fa248) {\n    return pcVar1;\n  }\n  pcVar31 = FUN_00284930;\n  iVar20 = local_2c;\n  puVar30 = PTR___stack_chk_fail_003fa07c;\n  (*(code *)PTR___stack_chk_fail_003fa07c)();\n  iStack_84 = **(int **)(puVar30 + 0x175918);\n  pcStack_80 = pcVar1;\n  pcStack_7c = unaff_s1;\n  pcStack_78 = unaff_s2;\n  iStack_74 = unaff_s3;\n  pcStack_70 = unaff_s4;\n  pcStack_6c = unaff_s5;\n  iStack_68 = unaff_s6;\n  iStack_64 = unaff_s7;\n  piStack_60 = unaff_s8;\n  pcStack_5c = pcVar31;\n  if (iVar20 == 0) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d48,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a5,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }\n  if (*(int *)(iVar20 + 0x3214) != -0x54535255) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d70,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a6,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }\n  if (*(int *)(iVar20 + 0x3210) != 0) {\n    (**(code **)(puVar30 + 0x1758c8))\n              (0x8000,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700,\n               0x4a8,*(int *)(puVar30 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210);\n  }\n  if (param_2 == (char *)0x0) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x4c80,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4aa,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }\n  if (*(int *)(param_2 + 0x1c) != -0x54535255) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x595c,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4ab,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }\n  pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175cf4))(iVar20,param_2);\n  iVar2 = (**(code **)(puVar30 + 0x175934))(iVar20,pcStack_10fc,2,param_2);\n  if (iVar2 == 0) {\n    (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n    pcStack_10fc = (char *)0x0;\n    goto LAB_00287858;\n  }\n  pcStack_10fc[0x18] = '\0';\n  pcStack_10fc[0x19] = '\0';\n  pcStack_10fc[0x1a] = '\0';\n  pcStack_10fc[0x1b] = '\x01';\n  pcStack_10fc[0x1c] = '\0';\n  pcStack_10fc[0x1d] = '\0';\n  pcStack_10fc[0x1e] = '\0';\n  pcStack_10fc[0x1f] = '\x01';\n  iVar2 = (**(code **)(puVar30 + 0x175578))(pcStack_10fc,param_2);\n  if (iVar2 == 0) {\n    (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n    pcStack_10fc = (char *)0x0;\n    goto LAB_00287858;\n  }\n  iVar2 = iVar20 + 0x210;\n  iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x7890,4);\n  if (iVar3 == 0) {\n    iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n    if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c2,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(1,1);\n    if (puVar4 == (undefined1 *)0x0) {\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c7,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    *puVar4 = 0;\n    (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),puVar4);\n    iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78a0);\n    if (iVar19 != 0) {\n      iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac);\n      if (iVar19 == 0) {\n        puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n        if (puVar4 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar11 = 0;\n          iVar13 = *(int *)(puVar30 + 0x175020);\n          iVar22 = *(int *)(puVar30 + 0x1752b0);\n          iVar14 = *(int *)(puVar30 + 0x174fb8);\n          puVar21 = puVar4;\nLAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }\n      uStack_10d4 = 1;\n      goto LAB_00286050;\n    }\n    puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n    if (puVar4 == (undefined1 *)0x0) {\nLAB_0028544c:\n      uStack_10d4 = 0xffffffff;\n    }\n    else {\n      uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n      iStack_10cc = 0x1000;\n      uStack_10d4 = 0;\n      uStack_10c8 = 0;\n      uStack_10e4 = 0;\n      cVar17 = '\0';\n      puStack_10dc = (undefined1 *)0x0;\n      iVar19 = 0;\n      iVar11 = 0;\n      iVar13 = *(int *)(puVar30 + 0x175020);\n      iVar22 = *(int *)(puVar30 + 0x1752b0);\n      iVar14 = *(int *)(puVar30 + 0x174fb8);\n      puVar21 = puVar4;\n      while( true ) {\n        while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar11 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar9 = *(int *)(puVar30 + 0x174fc8);\n        iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n        iVar8 = 0;\n        while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0) {\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }\n        iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n        iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n        puVar21 = puVar4;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }\n      }\nLAB_0028573c:\n      (**(code **)(puVar30 + 0x175450))(uVar15);\n      if (iVar11 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar30 + 0x17575c))(iVar11);\n      }\nLAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x17575c))(iVar19);\n      }\n      if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n      }\n      (**(code **)(puVar30 + 0x17575c))(puVar4);\n      if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }\nLAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }\n        goto LAB_00287858;\n      }\n      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n    }\n    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n    goto LAB_00286050;\n  }\n  uStack_10d4 = 1;\n  goto LAB_00284a7c;\nLAB_00286038:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);\n  uStack_10d4 = 1;\n  goto LAB_00286050;\nLAB_00285f24:\n  (**(code **)(puVar30 + 0x175450))(uVar15);\n  if (iVar11 != 0) {\nLAB_00287be8:\n    (**(code **)(puVar30 + 0x17575c))(iVar11);\n  }\nLAB_00287bf8:\n  if (iVar19 != 0) {\n    (**(code **)(puVar30 + 0x17575c))(iVar19);\n  }\n  if (puStack_10ec != (undefined1 *)0x0) {\n    (**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n  }\n  (**(code **)(puVar30 + 0x17575c))(puVar4);\n  if ((int)uStack_10c8 < 1) {\nLAB_00287cd8:\n    if (uStack_10d4 == 0) {\n      uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n      (**(code **)(puVar30 + 0x1756a8))(uVar15);\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,\n                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n  }\n  else {\n    iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n    if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n      (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n      iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n      if (-1 < iVar19) goto LAB_00287cd8;\n    }\nLAB_00287db0:\n    uStack_10d4 = 0xffffffff;\n  }\n  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\nLAB_00286050:\n  uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n  (**(code **)(puVar30 + 0x175ba0))(iVar3);\n  iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1);\n  if (iVar19 == 0) {\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4ee,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }\n    goto LAB_00287858;\n  }\n  iVar13 = (**(code **)(puVar30 + 0x175d80))\n                     (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f8,iVar19,param_2);\n  (**(code **)(puVar30 + 0x1754e4))(iVar19);\n  uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n  (**(code **)(puVar30 + 0x1756a8))(uVar15);\n  (**(code **)(puVar30 + 0x175634))(iVar3);\n  if (iVar13 == 0) {\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4f6,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }\n    goto LAB_00287858;\n  }\nLAB_00284a7c:\n  iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78b8,4);\n  if (iVar3 == 0) {\n    (**(code **)(puVar30 + 0x175464))(auStack_1084,0x1000,*(int *)(puVar30 + 0x175020) + -0x4858,1);\n    iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n    if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x500,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      }\n    }\n    else {\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n      if (iVar19 == 0) {\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);\n        if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }\n    }\n    goto LAB_00286534;\n  }\n  iVar3 = *(int *)(puVar30 + 0x174fb0);\n  goto LAB_00284aa4;\nLAB_00286b70:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);\n  goto LAB_00286b84;\nLAB_00286f40:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);\n  goto LAB_00286f50;\nLAB_00287414:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);\n  goto LAB_00287424;\nLAB_00287758:\n  (**(code **)(puVar30 + 0x1756a8))(iVar3);\n  goto LAB_00287768;\nLAB_002867c8:\n  do {\n    iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n  } while (iVar13 != -1);\nLAB_002867e4:\n  uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n  (**(code **)(puVar30 + 0x1756a8))(uVar15);\n  (**(code **)(puVar30 + 0x175634))(iVar19);\nLAB_00286b84:\n  uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n  (**(code **)(puVar30 + 0x175ba0))(iVar3);\n  iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_02);\n  if (iVar19 == 0) {\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x535,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }\n  }\n  else {\n    iVar13 = (**(code **)(puVar30 + 0x175d80))(pcStack_10fc,auStack_1084,iVar19,param_2);\n    (**(code **)(puVar30 + 0x1754e4))(iVar19);\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    iVar3 = *(int *)(puVar30 + 0x174fb0);\n    if (iVar13 != 0) {\nLAB_00284aa4:\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc);\n      if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0);\n      if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      iVar2 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4);\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar2 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);\n        (**(code **)(puVar30 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar2);\n      }\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc);\n      goto LAB_00287858;\n    }\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x53d,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }\n  }\nLAB_00286534:\n  pcStack_10fc = (char *)0x0;\nLAB_00287858:\n  if (iStack_84 != **(int **)(puVar30 + 0x175918)) {\n    pcVar31 = *(code **)(puVar30 + 0x17574c);\n    (*pcVar31)();\n    iVar19 = *(int *)(pcVar31 + 0x171abc);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x483c);\n    iVar3 = *(int *)(pcVar31 + 0x171dbc) + 0x4930;\n    *(int *)(iVar20 + 0x18) = iVar3;\n    iVar2 = *(int *)(pcVar31 + 0x171dbc) + 0x3578;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4820);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4800);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47dc);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47c0);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47a8);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4788);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d8,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78dc,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4760);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e8,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78f4,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    return (char *)0x810;\n  }\n  return pcStack_10fc;\n}" { (declaration "undefined1 uVar16;" type_identifier identifier ;) (declaration "char *pcVar1;" primitive_type (pointer_declarator "*pcVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "undefined1 *puVar4;" type_identifier (pointer_declarator "*puVar4" * identifier) ;) (declaration "char cVar17;" primitive_type identifier ;) (declaration "int iVar5;" primitive_type identifier ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "byte bVar18;" type_identifier identifier ;) (declaration "int iVar7;" primitive_type identifier ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "int iVar9;" primitive_type identifier ;) (declaration "undefined4 uVar10;" type_identifier identifier ;) (declaration "int iVar11;" primitive_type identifier ;) (declaration "uint uVar12;" type_identifier identifier ;) (declaration "int iVar13;" primitive_type identifier ;) (declaration "int iVar14;" primitive_type identifier ;) (declaration "undefined4 uVar15;" type_identifier identifier ;) (declaration "undefined4 extraout_v1;" type_identifier identifier ;) (declaration "uint extraout_v1_00;" type_identifier identifier ;) (declaration "uint extraout_v1_01;" type_identifier identifier ;) (declaration "undefined4 extraout_v1_02;" type_identifier identifier ;) (declaration "undefined4 extraout_v1_03;" type_identifier identifier ;) (declaration "undefined4 extraout_v1_04;" type_identifier identifier ;) (declaration "undefined4 extraout_v1_05;" type_identifier identifier ;) (declaration "int iVar19;" primitive_type identifier ;) (declaration "int iVar20;" primitive_type identifier ;) (declaration "undefined1 *puVar21;" type_identifier (pointer_declarator "*puVar21" * identifier) ;) (declaration "int iVar22;" primitive_type identifier ;) (declaration "char *unaff_s1;" primitive_type (pointer_declarator "*unaff_s1" * identifier) ;) (declaration "char *pcVar23;" primitive_type (pointer_declarator "*pcVar23" * identifier) ;) (declaration "char *unaff_s2;" primitive_type (pointer_declarator "*unaff_s2" * identifier) ;) (declaration "int iVar24;" primitive_type identifier ;) (declaration "int unaff_s3;" primitive_type identifier ;) (declaration "undefined4 *puVar25;" type_identifier (pointer_declarator "*puVar25" * identifier) ;) (declaration "char *unaff_s4;" primitive_type (pointer_declarator "*unaff_s4" * identifier) ;) (declaration "undefined4 uVar26;" type_identifier identifier ;) (declaration "char *unaff_s5;" primitive_type (pointer_declarator "*unaff_s5" * identifier) ;) (declaration "char *pcVar27;" primitive_type (pointer_declarator "*pcVar27" * identifier) ;) (declaration "int unaff_s6;" primitive_type identifier ;) (declaration "int iVar28;" primitive_type identifier ;) (declaration "uint uVar29;" type_identifier identifier ;) (declaration "int unaff_s7;" primitive_type identifier ;) (declaration "undefined *puVar30;" type_identifier (pointer_declarator "*puVar30" * identifier) ;) (declaration "int *unaff_s8;" primitive_type (pointer_declarator "*unaff_s8" * identifier) ;) (declaration "code *pcVar31;" type_identifier (pointer_declarator "*pcVar31" * identifier) ;) (declaration "char *pcStack_10fc;" primitive_type (pointer_declarator "*pcStack_10fc" * identifier) ;) (declaration "undefined1 *puStack_10ec;" type_identifier (pointer_declarator "*puStack_10ec" * identifier) ;) (declaration "uint uStack_10e4;" type_identifier identifier ;) (declaration "undefined1 *puStack_10dc;" type_identifier (pointer_declarator "*puStack_10dc" * identifier) ;) (declaration "uint uStack_10d4;" type_identifier identifier ;) (declaration "int iStack_10cc;" primitive_type identifier ;) (declaration "uint uStack_10c8;" type_identifier identifier ;) (declaration "undefined1 uStack_10b0;" type_identifier identifier ;) (declaration "undefined1 uStack_10af;" type_identifier identifier ;) (declaration "char cStack_10ae;" primitive_type identifier ;) (declaration "undefined1 uStack_10ad;" type_identifier identifier ;) (declaration "undefined4 uStack_10ac;" type_identifier identifier ;) (declaration "int iStack_10a8;" primitive_type identifier ;) (declaration "undefined4 uStack_10a4;" type_identifier identifier ;) (declaration "undefined4 uStack_10a0;" type_identifier identifier ;) (declaration "undefined4 uStack_109c;" type_identifier identifier ;) (declaration "undefined4 uStack_1098;" type_identifier identifier ;) (declaration "undefined1 auStack_1094 [4];" type_identifier (array_declarator "auStack_1094 [4]" identifier [ number_literal ]) ;) (declaration "undefined4 uStack_1090;" type_identifier identifier ;) (declaration "undefined4 uStack_108c;" type_identifier identifier ;) (declaration "undefined1 uStack_1088;" type_identifier identifier ;) (declaration "undefined1 auStack_1084 [4096];" type_identifier (array_declarator "auStack_1084 [4096]" identifier [ number_literal ]) ;) (declaration "int iStack_84;" primitive_type identifier ;) (declaration "char *pcStack_80;" primitive_type (pointer_declarator "*pcStack_80" * identifier) ;) (declaration "char *pcStack_7c;" primitive_type (pointer_declarator "*pcStack_7c" * identifier) ;) (declaration "char *pcStack_78;" primitive_type (pointer_declarator "*pcStack_78" * identifier) ;) (declaration "int iStack_74;" primitive_type identifier ;) (declaration "char *pcStack_70;" primitive_type (pointer_declarator "*pcStack_70" * identifier) ;) (declaration "char *pcStack_6c;" primitive_type (pointer_declarator "*pcStack_6c" * identifier) ;) (declaration "int iStack_68;" primitive_type identifier ;) (declaration "int iStack_64;" primitive_type identifier ;) (declaration "int *piStack_60;" primitive_type (pointer_declarator "*piStack_60" * identifier) ;) (declaration "code *pcStack_5c;" type_identifier (pointer_declarator "*pcStack_5c" * identifier) ;) (declaration "undefined1 local_30 [3];" type_identifier (array_declarator "local_30 [3]" identifier [ number_literal ]) ;) (declaration "char cStack_2d;" primitive_type identifier ;) (declaration "int local_2c;" primitive_type identifier ;) (expression_statement "puVar30 = PTR_s__003f9950;" (assignment_expression "puVar30 = PTR_s__003f9950" identifier = identifier) ;) (expression_statement "local_2c = *(int *)PTR___stack_chk_guard_003fa248;" (assignment_expression "local_2c = *(int *)PTR___stack_chk_guard_003fa248" identifier = (pointer_expression "*(int *)PTR___stack_chk_guard_003fa248" * (cast_expression "(int *)PTR___stack_chk_guard_003fa248" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (if_statement "if (*param_1 == '\0') {\n    pcVar1 = (char *)0x0;\n  }\n  else {\n    unaff_s2 = param_1;\n    if (*param_1 == ';') {\n      pcVar1 = (char *)0x1;\nLAB_0028466c:\n      if (param_1 == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar1 = param_1 + 1;\n      iVar20 = 1;\n      param_2 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }\n  }" if (parenthesized_expression "(*param_1 == '\0')" ( (binary_expression "*param_1 == '\0'" (pointer_expression "*param_1" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    pcVar1 = (char *)0x0;\n  }" { (expression_statement "pcVar1 = (char *)0x0;" (assignment_expression "pcVar1 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else {\n    unaff_s2 = param_1;\n    if (*param_1 == ';') {\n      pcVar1 = (char *)0x1;\nLAB_0028466c:\n      if (param_1 == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar1 = param_1 + 1;\n      iVar20 = 1;\n      param_2 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }\n  }" else (compound_statement "{\n    unaff_s2 = param_1;\n    if (*param_1 == ';') {\n      pcVar1 = (char *)0x1;\nLAB_0028466c:\n      if (param_1 == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar1 = param_1 + 1;\n      iVar20 = 1;\n      param_2 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }\n  }" { (expression_statement "unaff_s2 = param_1;" (assignment_expression "unaff_s2 = param_1" identifier = identifier) ;) (if_statement "if (*param_1 == ';') {\n      pcVar1 = (char *)0x1;\nLAB_0028466c:\n      if (param_1 == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar1 = param_1 + 1;\n      iVar20 = 1;\n      param_2 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }" if (parenthesized_expression "(*param_1 == ';')" ( (binary_expression "*param_1 == ';'" (pointer_expression "*param_1" * identifier) == (char_literal "';'" ' character ')) )) (compound_statement "{\n      pcVar1 = (char *)0x1;\nLAB_0028466c:\n      if (param_1 == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }\n    }" { (expression_statement "pcVar1 = (char *)0x1;" (assignment_expression "pcVar1 = (char *)0x1" identifier = (cast_expression "(char *)0x1" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_0028466c:\n      if (param_1 == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }" statement_identifier : (if_statement "if (param_1 == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }" if (parenthesized_expression "(param_1 == (char *)0x0)" ( (binary_expression "param_1 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        pcVar1 = (char *)0x0;\n      }" { (expression_statement "pcVar1 = (char *)0x0;" (assignment_expression "pcVar1 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else {\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }" else (compound_statement "{\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }" { (if_statement "if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }" if (parenthesized_expression "(((char *)0x3 < pcVar1) && (param_1[1] == '#'))" ( (binary_expression "((char *)0x3 < pcVar1) && (param_1[1] == '#')" (parenthesized_expression "((char *)0x3 < pcVar1)" ( (binary_expression "(char *)0x3 < pcVar1" (cast_expression "(char *)0x3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) < identifier) )) && (parenthesized_expression "(param_1[1] == '#')" ( (binary_expression "param_1[1] == '#'" (subscript_expression "param_1[1]" identifier [ number_literal ]) == (char_literal "'#'" ' character ')) ))) )) (compound_statement "{\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }" { (expression_statement "param_2 = PTR_s__003f9950 + -0x4900;" (assignment_expression "param_2 = PTR_s__003f9950 + -0x4900" identifier = (binary_expression "PTR_s__003f9950 + -0x4900" identifier + number_literal)) ;) (expression_statement "iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);" (assignment_expression "iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30)" identifier = (call_expression "(*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30)" (parenthesized_expression "(*(code *)PTR_sscanf_003f9e4c)" ( (pointer_expression "*(code *)PTR_sscanf_003f9e4c" * (cast_expression "(code *)PTR_sscanf_003f9e4c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,param_2,local_30)" ( identifier , identifier , identifier )))) ;) (expression_statement "unaff_s4 = puVar30 + -0x46bf;" (assignment_expression "unaff_s4 = puVar30 + -0x46bf" identifier = (binary_expression "puVar30 + -0x46bf" identifier + number_literal)) ;) (if_statement "if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }" if (parenthesized_expression "(iVar20 == 1)" ( (binary_expression "iVar20 == 1" identifier == number_literal) )) (compound_statement "{\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }" { (if_statement "if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }" if (parenthesized_expression "(param_1[3] == ';')" ( (binary_expression "param_1[3] == ';'" (subscript_expression "param_1[3]" identifier [ number_literal ]) == (char_literal "';'" ' character ')) )) (compound_statement "{\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }" { (expression_statement "pcVar1 = (char *)0x3;" (assignment_expression "pcVar1 = (char *)0x3" identifier = (cast_expression "(char *)0x3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);" statement_identifier : (expression_statement "unaff_s1 = param_1 + (int)(pcVar1 + 1);" (assignment_expression "unaff_s1 = param_1 + (int)(pcVar1 + 1)" identifier = (binary_expression "param_1 + (int)(pcVar1 + 1)" identifier + (cast_expression "(int)(pcVar1 + 1)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(pcVar1 + 1)" ( (binary_expression "pcVar1 + 1" identifier + number_literal) ))))) ;)) (expression_statement "iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);" (assignment_expression "iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1)" identifier = (call_expression "(*(code *)PTR_strlen_003fa350)(unaff_s1)" (parenthesized_expression "(*(code *)PTR_strlen_003fa350)" ( (pointer_expression "*(code *)PTR_strlen_003fa350" * (cast_expression "(code *)PTR_strlen_003fa350" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s1)" ( identifier )))) ;) (expression_statement "param_2 = unaff_s1;" (assignment_expression "param_2 = unaff_s1" identifier = identifier) ;) (expression_statement "(*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);" (call_expression "(*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1)" (parenthesized_expression "(*(code *)PTR_memmove_003f9f68)" ( (pointer_expression "*(code *)PTR_memmove_003f9f68" * (cast_expression "(code *)PTR_memmove_003f9f68" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1 + 1,unaff_s1,iVar20 + 1)" ( (binary_expression "param_1 + 1" identifier + number_literal) , identifier , (binary_expression "iVar20 + 1" identifier + number_literal) ))) ;) }) (else_clause "else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }" else (compound_statement "{\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }" { (if_statement "if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }" if (parenthesized_expression "(param_1[4] == ';')" ( (binary_expression "param_1[4] == ';'" (subscript_expression "param_1[4]" identifier [ number_literal ]) == (char_literal "';'" ' character ')) )) (compound_statement "{\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }" { (expression_statement "pcVar1 = &DAT_00000004;" (assignment_expression "pcVar1 = &DAT_00000004" identifier = (pointer_expression "&DAT_00000004" & identifier)) ;) (goto_statement "goto LAB_002848d4;" goto statement_identifier ;) })) (if_statement "if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }" if (parenthesized_expression "(param_1[5] == ';')" ( (binary_expression "param_1[5] == ';'" (subscript_expression "param_1[5]" identifier [ number_literal ]) == (char_literal "';'" ' character ')) )) (compound_statement "{\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }" { (expression_statement "pcVar1 = &DAT_00000005;" (assignment_expression "pcVar1 = &DAT_00000005" identifier = (pointer_expression "&DAT_00000005" & identifier)) ;) (goto_statement "goto LAB_002848d4;" goto statement_identifier ;) })) (expression_statement "pcVar1 = &DAT_00000006;" (assignment_expression "pcVar1 = &DAT_00000006" identifier = (pointer_expression "&DAT_00000006" & identifier)) ;) }))) (expression_statement "*param_1 = cStack_2d;" (assignment_expression "*param_1 = cStack_2d" (pointer_expression "*param_1" * identifier) = identifier) ;) (goto_statement "goto LAB_00284620;" goto statement_identifier ;) })) })) (expression_statement "unaff_s4 = puVar30 + -0x46bf;" (assignment_expression "unaff_s4 = puVar30 + -0x46bf" identifier = (binary_expression "puVar30 + -0x46bf" identifier + number_literal)) ;) (expression_statement "unaff_s6 = 0;" (assignment_expression "unaff_s6 = 0" identifier = number_literal) ;) (do_statement "do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);" do (compound_statement "{\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        }" { (expression_statement "pcVar27 = (char *)(uint)(byte)unaff_s4[-1];" (assignment_expression "pcVar27 = (char *)(uint)(byte)unaff_s4[-1]" identifier = (cast_expression "(char *)(uint)(byte)unaff_s4[-1]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (cast_expression "(uint)(byte)unaff_s4[-1]" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(byte)unaff_s4[-1]" ( (type_descriptor "byte" type_identifier) ) (subscript_expression "unaff_s4[-1]" identifier [ number_literal ]))))) ;) (expression_statement "unaff_s1 = unaff_s4;" (assignment_expression "unaff_s1 = unaff_s4" identifier = identifier) ;) (expression_statement "unaff_s5 = pcVar27;" (assignment_expression "unaff_s5 = pcVar27" identifier = identifier) ;) (if_statement "if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }" if (parenthesized_expression "((int)pcVar27 <= (int)pcVar1)" ( (binary_expression "(int)pcVar27 <= (int)pcVar1" (cast_expression "(int)pcVar27" ( (type_descriptor "int" primitive_type) ) identifier) <= (cast_expression "(int)pcVar1" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }" { (if_statement "if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }" if (parenthesized_expression "(param_1 != unaff_s4)" ( (binary_expression "param_1 != unaff_s4" identifier != identifier) )) (compound_statement "{\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }" { (expression_statement "iVar20 = (int)*param_1;" (assignment_expression "iVar20 = (int)*param_1" identifier = (cast_expression "(int)*param_1" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*param_1" * identifier))) ;) (expression_statement "unaff_s5 = param_1;" (assignment_expression "unaff_s5 = param_1" identifier = identifier) ;) (if_statement "if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }" if (parenthesized_expression "((iVar20 != 0) && (*unaff_s4 != '\0'))" ( (binary_expression "(iVar20 != 0) && (*unaff_s4 != '\0')" (parenthesized_expression "(iVar20 != 0)" ( (binary_expression "iVar20 != 0" identifier != number_literal) )) && (parenthesized_expression "(*unaff_s4 != '\0')" ( (binary_expression "*unaff_s4 != '\0'" (pointer_expression "*unaff_s4" * identifier) != (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }" { (expression_statement "unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();" (assignment_expression "unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)()" identifier = (cast_expression "(int *)(*(code *)PTR___ctype_b_loc_003fa44c)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___ctype_b_loc_003fa44c)()" (parenthesized_expression "(*(code *)PTR___ctype_b_loc_003fa44c)" ( (pointer_expression "*(code *)PTR___ctype_b_loc_003fa44c" * (cast_expression "(code *)PTR___ctype_b_loc_003fa44c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "pcVar23 = unaff_s4;" (assignment_expression "pcVar23 = unaff_s4" identifier = identifier) ;) (while_statement "while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }" { (expression_statement "unaff_s7 = iVar20;" (assignment_expression "unaff_s7 = iVar20" identifier = identifier) ;) (if_statement "if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }" if (parenthesized_expression "((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0)" ( (binary_expression "(*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0" (parenthesized_expression "(*(ushort *)(*unaff_s8 + iVar20 * 2) & 2)" ( (binary_expression "*(ushort *)(*unaff_s8 + iVar20 * 2) & 2" (pointer_expression "*(ushort *)(*unaff_s8 + iVar20 * 2)" * (cast_expression "(ushort *)(*unaff_s8 + iVar20 * 2)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*unaff_s8 + iVar20 * 2)" ( (binary_expression "*unaff_s8 + iVar20 * 2" (pointer_expression "*unaff_s8" * identifier) + (binary_expression "iVar20 * 2" identifier * number_literal)) )))) & number_literal) )) != number_literal) )) (compound_statement "{\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }" { (expression_statement "unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);" (assignment_expression "unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20)" identifier = (call_expression "(*(code *)PTR_LocaleUppercase_003fa768)(iVar20)" (parenthesized_expression "(*(code *)PTR_LocaleUppercase_003fa768)" ( (pointer_expression "*(code *)PTR_LocaleUppercase_003fa768" * (cast_expression "(code *)PTR_LocaleUppercase_003fa768" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar20)" ( identifier )))) ;) })) (expression_statement "iVar20 = (int)*pcVar23;" (assignment_expression "iVar20 = (int)*pcVar23" identifier = (cast_expression "(int)*pcVar23" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*pcVar23" * identifier))) ;) (if_statement "if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }" if (parenthesized_expression "((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0)" ( (binary_expression "(*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0" (parenthesized_expression "(*(ushort *)(*unaff_s8 + iVar20 * 2) & 2)" ( (binary_expression "*(ushort *)(*unaff_s8 + iVar20 * 2) & 2" (pointer_expression "*(ushort *)(*unaff_s8 + iVar20 * 2)" * (cast_expression "(ushort *)(*unaff_s8 + iVar20 * 2)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*unaff_s8 + iVar20 * 2)" ( (binary_expression "*unaff_s8 + iVar20 * 2" (pointer_expression "*unaff_s8" * identifier) + (binary_expression "iVar20 * 2" identifier * number_literal)) )))) & number_literal) )) != number_literal) )) (compound_statement "{\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }" { (expression_statement "iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);" (assignment_expression "iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20)" identifier = (call_expression "(*(code *)PTR_LocaleUppercase_003fa768)(iVar20)" (parenthesized_expression "(*(code *)PTR_LocaleUppercase_003fa768)" ( (pointer_expression "*(code *)PTR_LocaleUppercase_003fa768" * (cast_expression "(code *)PTR_LocaleUppercase_003fa768" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar20)" ( identifier )))) ;) })) (expression_statement "unaff_s1 = pcVar23;" (assignment_expression "unaff_s1 = pcVar23" identifier = identifier) ;) (if_statement "if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;" if (parenthesized_expression "((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23))" ( (binary_expression "(unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)" (parenthesized_expression "(unaff_s7 != iVar20)" ( (binary_expression "unaff_s7 != iVar20" identifier != identifier) )) || (parenthesized_expression "(unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)" ( (comma_expression "unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23" (assignment_expression "unaff_s1 = unaff_s4 + (int)(pcVar27 + -1)" identifier = (binary_expression "unaff_s4 + (int)(pcVar27 + -1)" identifier + (cast_expression "(int)(pcVar27 + -1)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(pcVar27 + -1)" ( (binary_expression "pcVar27 + -1" identifier + number_literal) ))))) , (binary_expression "unaff_s4 + (int)(pcVar27 + -1) == pcVar23" (binary_expression "unaff_s4 + (int)(pcVar27 + -1)" identifier + (cast_expression "(int)(pcVar27 + -1)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(pcVar27 + -1)" ( (binary_expression "pcVar27 + -1" identifier + number_literal) )))) == identifier)) ))) )) (break_statement "break;" break ;)) (expression_statement "unaff_s5 = unaff_s5 + 1;" (assignment_expression "unaff_s5 = unaff_s5 + 1" identifier = (binary_expression "unaff_s5 + 1" identifier + number_literal)) ;) (expression_statement "iVar20 = (int)*unaff_s5;" (assignment_expression "iVar20 = (int)*unaff_s5" identifier = (cast_expression "(int)*unaff_s5" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*unaff_s5" * identifier))) ;) (expression_statement "pcVar23 = pcVar23 + 1;" (assignment_expression "pcVar23 = pcVar23 + 1" identifier = (binary_expression "pcVar23 + 1" identifier + number_literal)) ;) (expression_statement "unaff_s1 = pcVar23;" (assignment_expression "unaff_s1 = pcVar23" identifier = identifier) ;) (if_statement "if ((iVar20 == 0) || (*pcVar23 == '\0')) break;" if (parenthesized_expression "((iVar20 == 0) || (*pcVar23 == '\0'))" ( (binary_expression "(iVar20 == 0) || (*pcVar23 == '\0')" (parenthesized_expression "(iVar20 == 0)" ( (binary_expression "iVar20 == 0" identifier == number_literal) )) || (parenthesized_expression "(*pcVar23 == '\0')" ( (binary_expression "*pcVar23 == '\0'" (pointer_expression "*pcVar23" * identifier) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (break_statement "break;" break ;)) })) })) (expression_statement "unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);" (assignment_expression "unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5)" identifier = (call_expression "(*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5)" (parenthesized_expression "(*(code *)PTR_LocaleUppercase_003fa768)" ( (pointer_expression "*(code *)PTR_LocaleUppercase_003fa768" * (cast_expression "(code *)PTR_LocaleUppercase_003fa768" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "((int)*unaff_s5)" ( (cast_expression "(int)*unaff_s5" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*unaff_s5" * identifier)) )))) ;) (expression_statement "iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);" (assignment_expression "iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1)" identifier = (call_expression "(*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1)" (parenthesized_expression "(*(code *)PTR_LocaleUppercase_003fa768)" ( (pointer_expression "*(code *)PTR_LocaleUppercase_003fa768" * (cast_expression "(code *)PTR_LocaleUppercase_003fa768" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "((int)*unaff_s1)" ( (cast_expression "(int)*unaff_s1" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*unaff_s1" * identifier)) )))) ;) (if_statement "if (unaff_s3 != iVar20) goto LAB_002847f0;" if (parenthesized_expression "(unaff_s3 != iVar20)" ( (binary_expression "unaff_s3 != iVar20" identifier != identifier) )) (goto_statement "goto LAB_002847f0;" goto statement_identifier ;)) })) (expression_statement "param_2 = param_1 + (int)pcVar27;" (assignment_expression "param_2 = param_1 + (int)pcVar27" identifier = (binary_expression "param_1 + (int)pcVar27" identifier + (cast_expression "(int)pcVar27" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);" (assignment_expression "iVar20 = (*(code *)PTR_strlen_003fa350)(param_2)" identifier = (call_expression "(*(code *)PTR_strlen_003fa350)(param_2)" (parenthesized_expression "(*(code *)PTR_strlen_003fa350)" ( (pointer_expression "*(code *)PTR_strlen_003fa350" * (cast_expression "(code *)PTR_strlen_003fa350" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_2)" ( identifier )))) ;) (expression_statement "(*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);" (call_expression "(*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1)" (parenthesized_expression "(*(code *)PTR_memmove_003f9f68)" ( (pointer_expression "*(code *)PTR_memmove_003f9f68" * (cast_expression "(code *)PTR_memmove_003f9f68" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1 + 1,param_2,iVar20 + 1)" ( (binary_expression "param_1 + 1" identifier + number_literal) , identifier , (binary_expression "iVar20 + 1" identifier + number_literal) ))) ;) (expression_statement "*param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];" (assignment_expression "*param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8]" (pointer_expression "*param_1" * identifier) = (subscript_expression "PTR_s__003f9950[unaff_s6 * 9 + -0x46b8]" identifier [ (binary_expression "unaff_s6 * 9 + -0x46b8" (binary_expression "unaff_s6 * 9" identifier * number_literal) + number_literal) ])) ;) (expression_statement "pcVar1 = pcVar27 + -1;" (assignment_expression "pcVar1 = pcVar27 + -1" identifier = (binary_expression "pcVar27 + -1" identifier + number_literal)) ;) (goto_statement "goto LAB_00284620;" goto statement_identifier ;) })) (labeled_statement "LAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;" statement_identifier : (expression_statement "unaff_s6 = unaff_s6 + 1;" (assignment_expression "unaff_s6 = unaff_s6 + 1" identifier = (binary_expression "unaff_s6 + 1" identifier + number_literal)) ;)) (expression_statement "unaff_s4 = unaff_s4 + 9;" (assignment_expression "unaff_s4 = unaff_s4 + 9" identifier = (binary_expression "unaff_s4 + 9" identifier + number_literal)) ;) }) while (parenthesized_expression "(unaff_s6 != 3)" ( (binary_expression "unaff_s6 != 3" identifier != number_literal) )) ;) (expression_statement "pcVar1 = (char *)0x0;" (assignment_expression "pcVar1 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })))) }) (else_clause "else {\n      pcVar1 = param_1 + 1;\n      iVar20 = 1;\n      param_2 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }" else (compound_statement "{\n      pcVar1 = param_1 + 1;\n      iVar20 = 1;\n      param_2 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }" { (expression_statement "pcVar1 = param_1 + 1;" (assignment_expression "pcVar1 = param_1 + 1" identifier = (binary_expression "param_1 + 1" identifier + number_literal)) ;) (expression_statement "iVar20 = 1;" (assignment_expression "iVar20 = 1" identifier = number_literal) ;) (expression_statement "param_2 = &DAT_00000007;" (assignment_expression "param_2 = &DAT_00000007" identifier = (pointer_expression "&DAT_00000007" & identifier)) ;) (do_statement "do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);" do (compound_statement "{\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      }" { (if_statement "if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }" if (parenthesized_expression "(*pcVar1 == '\0')" ( (binary_expression "*pcVar1 == '\0'" (pointer_expression "*pcVar1" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }" { (expression_statement "pcVar1 = (char *)0x0;" (assignment_expression "pcVar1 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_00284620;" goto statement_identifier ;) })) (if_statement "if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }" if (parenthesized_expression "(*pcVar1 == ';')" ( (binary_expression "*pcVar1 == ';'" (pointer_expression "*pcVar1" * identifier) == (char_literal "';'" ' character ')) )) (compound_statement "{\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }" { (expression_statement "pcVar1 = (char *)(iVar20 + 1);" (assignment_expression "pcVar1 = (char *)(iVar20 + 1)" identifier = (cast_expression "(char *)(iVar20 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 1)" ( (binary_expression "iVar20 + 1" identifier + number_literal) )))) ;) (if_statement "if (pcVar1 == (char *)0x0) goto LAB_00284620;" if (parenthesized_expression "(pcVar1 == (char *)0x0)" ( (binary_expression "pcVar1 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00284620;" goto statement_identifier ;)) (goto_statement "goto LAB_0028466c;" goto statement_identifier ;) })) (expression_statement "iVar20 = iVar20 + 1;" (assignment_expression "iVar20 = iVar20 + 1" identifier = (binary_expression "iVar20 + 1" identifier + number_literal)) ;) (expression_statement "pcVar1 = pcVar1 + 1;" (assignment_expression "pcVar1 = pcVar1 + 1" identifier = (binary_expression "pcVar1 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar20 != 7)" ( (binary_expression "iVar20 != 7" identifier != number_literal) )) ;) (expression_statement "pcVar1 = (char *)0x0;" (assignment_expression "pcVar1 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }))) }))) (labeled_statement "LAB_00284620:\n  if (local_2c == *(int *)PTR___stack_chk_guard_003fa248) {\n    return pcVar1;\n  }" statement_identifier : (if_statement "if (local_2c == *(int *)PTR___stack_chk_guard_003fa248) {\n    return pcVar1;\n  }" if (parenthesized_expression "(local_2c == *(int *)PTR___stack_chk_guard_003fa248)" ( (binary_expression "local_2c == *(int *)PTR___stack_chk_guard_003fa248" identifier == (pointer_expression "*(int *)PTR___stack_chk_guard_003fa248" * (cast_expression "(int *)PTR___stack_chk_guard_003fa248" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) )) (compound_statement "{\n    return pcVar1;\n  }" { (return_statement "return pcVar1;" return identifier ;) }))) (expression_statement "pcVar31 = FUN_00284930;" (assignment_expression "pcVar31 = FUN_00284930" identifier = identifier) ;) (expression_statement "iVar20 = local_2c;" (assignment_expression "iVar20 = local_2c" identifier = identifier) ;) (expression_statement "puVar30 = PTR___stack_chk_fail_003fa07c;" (assignment_expression "puVar30 = PTR___stack_chk_fail_003fa07c" identifier = identifier) ;) (expression_statement "(*(code *)PTR___stack_chk_fail_003fa07c)();" (call_expression "(*(code *)PTR___stack_chk_fail_003fa07c)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_003fa07c)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_003fa07c" * (cast_expression "(code *)PTR___stack_chk_fail_003fa07c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "iStack_84 = **(int **)(puVar30 + 0x175918);" (assignment_expression "iStack_84 = **(int **)(puVar30 + 0x175918)" identifier = (pointer_expression "**(int **)(puVar30 + 0x175918)" * (pointer_expression "*(int **)(puVar30 + 0x175918)" * (cast_expression "(int **)(puVar30 + 0x175918)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175918)" ( (binary_expression "puVar30 + 0x175918" identifier + number_literal) )))))) ;) (expression_statement "pcStack_80 = pcVar1;" (assignment_expression "pcStack_80 = pcVar1" identifier = identifier) ;) (expression_statement "pcStack_7c = unaff_s1;" (assignment_expression "pcStack_7c = unaff_s1" identifier = identifier) ;) (expression_statement "pcStack_78 = unaff_s2;" (assignment_expression "pcStack_78 = unaff_s2" identifier = identifier) ;) (expression_statement "iStack_74 = unaff_s3;" (assignment_expression "iStack_74 = unaff_s3" identifier = identifier) ;) (expression_statement "pcStack_70 = unaff_s4;" (assignment_expression "pcStack_70 = unaff_s4" identifier = identifier) ;) (expression_statement "pcStack_6c = unaff_s5;" (assignment_expression "pcStack_6c = unaff_s5" identifier = identifier) ;) (expression_statement "iStack_68 = unaff_s6;" (assignment_expression "iStack_68 = unaff_s6" identifier = identifier) ;) (expression_statement "iStack_64 = unaff_s7;" (assignment_expression "iStack_64 = unaff_s7" identifier = identifier) ;) (expression_statement "piStack_60 = unaff_s8;" (assignment_expression "piStack_60 = unaff_s8" identifier = identifier) ;) (expression_statement "pcStack_5c = pcVar31;" (assignment_expression "pcStack_5c = pcVar31" identifier = identifier) ;) (if_statement "if (iVar20 == 0) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d48,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a5,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }" if (parenthesized_expression "(iVar20 == 0)" ( (binary_expression "iVar20 == 0" identifier == number_literal) )) (compound_statement "{\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d48,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a5,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }" { (expression_statement "pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d48,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a5,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);" (assignment_expression "pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d48,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a5,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" identifier = (cast_expression "(char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d48,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a5,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d48,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a5,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" (parenthesized_expression "(**(code **)(puVar30 + 0x175cf0))" ( (pointer_expression "**(code **)(puVar30 + 0x175cf0)" * (pointer_expression "*(code **)(puVar30 + 0x175cf0)" * (cast_expression "(code **)(puVar30 + 0x175cf0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175cf0)" ( (binary_expression "puVar30 + 0x175cf0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar30 + 0x174fb0) + 0x3d48,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a5,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" ( (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x3d48" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x46f0" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) ))))) ;) (return_statement "return pcVar1;" return identifier ;) })) (if_statement "if (*(int *)(iVar20 + 0x3214) != -0x54535255) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d70,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a6,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }" if (parenthesized_expression "(*(int *)(iVar20 + 0x3214) != -0x54535255)" ( (binary_expression "*(int *)(iVar20 + 0x3214) != -0x54535255" (pointer_expression "*(int *)(iVar20 + 0x3214)" * (cast_expression "(int *)(iVar20 + 0x3214)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x3214)" ( (binary_expression "iVar20 + 0x3214" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d70,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a6,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }" { (expression_statement "pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d70,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a6,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);" (assignment_expression "pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d70,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a6,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" identifier = (cast_expression "(char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d70,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a6,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d70,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a6,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" (parenthesized_expression "(**(code **)(puVar30 + 0x175cf0))" ( (pointer_expression "**(code **)(puVar30 + 0x175cf0)" * (pointer_expression "*(code **)(puVar30 + 0x175cf0)" * (cast_expression "(code **)(puVar30 + 0x175cf0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175cf0)" ( (binary_expression "puVar30 + 0x175cf0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar30 + 0x174fb0) + 0x3d70,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a6,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" ( (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x3d70" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x46f0" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) ))))) ;) (return_statement "return pcVar1;" return identifier ;) })) (if_statement "if (*(int *)(iVar20 + 0x3210) != 0) {\n    (**(code **)(puVar30 + 0x1758c8))\n              (0x8000,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700,\n               0x4a8,*(int *)(puVar30 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210);\n  }" if (parenthesized_expression "(*(int *)(iVar20 + 0x3210) != 0)" ( (binary_expression "*(int *)(iVar20 + 0x3210) != 0" (pointer_expression "*(int *)(iVar20 + 0x3210)" * (cast_expression "(int *)(iVar20 + 0x3210)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x3210)" ( (binary_expression "iVar20 + 0x3210" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    (**(code **)(puVar30 + 0x1758c8))\n              (0x8000,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700,\n               0x4a8,*(int *)(puVar30 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210);\n  }" { (expression_statement "(**(code **)(puVar30 + 0x1758c8))\n              (0x8000,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700,\n               0x4a8,*(int *)(puVar30 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x1758c8))\n              (0x8000,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700,\n               0x4a8,*(int *)(puVar30 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x1758c8))" ( (pointer_expression "**(code **)(puVar30 + 0x1758c8)" * (pointer_expression "*(code **)(puVar30 + 0x1758c8)" * (cast_expression "(code **)(puVar30 + 0x1758c8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1758c8)" ( (binary_expression "puVar30 + 0x1758c8" identifier + number_literal) ))))) )) (argument_list "(0x8000,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700,\n               0x4a8,*(int *)(puVar30 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210)" ( number_literal , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb8) + -0x2f6c" (pointer_expression "*(int *)(puVar30 + 0x174fb8)" * (cast_expression "(int *)(puVar30 + 0x174fb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb8)" ( (binary_expression "puVar30 + 0x174fb8" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) })) (if_statement "if (param_2 == (char *)0x0) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x4c80,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4aa,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }" if (parenthesized_expression "(param_2 == (char *)0x0)" ( (binary_expression "param_2 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x4c80,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4aa,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }" { (expression_statement "pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x4c80,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4aa,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);" (assignment_expression "pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x4c80,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4aa,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" identifier = (cast_expression "(char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x4c80,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4aa,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x4c80,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4aa,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" (parenthesized_expression "(**(code **)(puVar30 + 0x175cf0))" ( (pointer_expression "**(code **)(puVar30 + 0x175cf0)" * (pointer_expression "*(code **)(puVar30 + 0x175cf0)" * (cast_expression "(code **)(puVar30 + 0x175cf0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175cf0)" ( (binary_expression "puVar30 + 0x175cf0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar30 + 0x174fb0) + 0x4c80,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4aa,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" ( (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x4c80" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x46f0" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) ))))) ;) (return_statement "return pcVar1;" return identifier ;) })) (if_statement "if (*(int *)(param_2 + 0x1c) != -0x54535255) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x595c,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4ab,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }" if (parenthesized_expression "(*(int *)(param_2 + 0x1c) != -0x54535255)" ( (binary_expression "*(int *)(param_2 + 0x1c) != -0x54535255" (pointer_expression "*(int *)(param_2 + 0x1c)" * (cast_expression "(int *)(param_2 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x1c)" ( (binary_expression "param_2 + 0x1c" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x595c,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4ab,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }" { (expression_statement "pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x595c,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4ab,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);" (assignment_expression "pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x595c,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4ab,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" identifier = (cast_expression "(char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x595c,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4ab,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x595c,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4ab,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" (parenthesized_expression "(**(code **)(puVar30 + 0x175cf0))" ( (pointer_expression "**(code **)(puVar30 + 0x175cf0)" * (pointer_expression "*(code **)(puVar30 + 0x175cf0)" * (cast_expression "(code **)(puVar30 + 0x175cf0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175cf0)" ( (binary_expression "puVar30 + 0x175cf0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar30 + 0x174fb0) + 0x595c,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4ab,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" ( (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x595c" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x46f0" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) ))))) ;) (return_statement "return pcVar1;" return identifier ;) })) (expression_statement "pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175cf4))(iVar20,param_2);" (assignment_expression "pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175cf4))(iVar20,param_2)" identifier = (cast_expression "(char *)(**(code **)(puVar30 + 0x175cf4))(iVar20,param_2)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar30 + 0x175cf4))(iVar20,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175cf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175cf4)" * (pointer_expression "*(code **)(puVar30 + 0x175cf4)" * (cast_expression "(code **)(puVar30 + 0x175cf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175cf4)" ( (binary_expression "puVar30 + 0x175cf4" identifier + number_literal) ))))) )) (argument_list "(iVar20,param_2)" ( identifier , identifier ))))) ;) (expression_statement "iVar2 = (**(code **)(puVar30 + 0x175934))(iVar20,pcStack_10fc,2,param_2);" (assignment_expression "iVar2 = (**(code **)(puVar30 + 0x175934))(iVar20,pcStack_10fc,2,param_2)" identifier = (call_expression "(**(code **)(puVar30 + 0x175934))(iVar20,pcStack_10fc,2,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175934))" ( (pointer_expression "**(code **)(puVar30 + 0x175934)" * (pointer_expression "*(code **)(puVar30 + 0x175934)" * (cast_expression "(code **)(puVar30 + 0x175934)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175934)" ( (binary_expression "puVar30 + 0x175934" identifier + number_literal) ))))) )) (argument_list "(iVar20,pcStack_10fc,2,param_2)" ( identifier , identifier , number_literal , identifier )))) ;) (if_statement "if (iVar2 == 0) {\n    (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n    pcStack_10fc = (char *)0x0;\n    goto LAB_00287858;\n  }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n    (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n    pcStack_10fc = (char *)0x0;\n    goto LAB_00287858;\n  }" { (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "pcStack_10fc[0x18] = '\0';" (assignment_expression "pcStack_10fc[0x18] = '\0'" (subscript_expression "pcStack_10fc[0x18]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcStack_10fc[0x19] = '\0';" (assignment_expression "pcStack_10fc[0x19] = '\0'" (subscript_expression "pcStack_10fc[0x19]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcStack_10fc[0x1a] = '\0';" (assignment_expression "pcStack_10fc[0x1a] = '\0'" (subscript_expression "pcStack_10fc[0x1a]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcStack_10fc[0x1b] = '\x01';" (assignment_expression "pcStack_10fc[0x1b] = '\x01'" (subscript_expression "pcStack_10fc[0x1b]" identifier [ number_literal ]) = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "pcStack_10fc[0x1c] = '\0';" (assignment_expression "pcStack_10fc[0x1c] = '\0'" (subscript_expression "pcStack_10fc[0x1c]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcStack_10fc[0x1d] = '\0';" (assignment_expression "pcStack_10fc[0x1d] = '\0'" (subscript_expression "pcStack_10fc[0x1d]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcStack_10fc[0x1e] = '\0';" (assignment_expression "pcStack_10fc[0x1e] = '\0'" (subscript_expression "pcStack_10fc[0x1e]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcStack_10fc[0x1f] = '\x01';" (assignment_expression "pcStack_10fc[0x1f] = '\x01'" (subscript_expression "pcStack_10fc[0x1f]" identifier [ number_literal ]) = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "iVar2 = (**(code **)(puVar30 + 0x175578))(pcStack_10fc,param_2);" (assignment_expression "iVar2 = (**(code **)(puVar30 + 0x175578))(pcStack_10fc,param_2)" identifier = (call_expression "(**(code **)(puVar30 + 0x175578))(pcStack_10fc,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175578))" ( (pointer_expression "**(code **)(puVar30 + 0x175578)" * (pointer_expression "*(code **)(puVar30 + 0x175578)" * (cast_expression "(code **)(puVar30 + 0x175578)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175578)" ( (binary_expression "puVar30 + 0x175578" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc,param_2)" ( identifier , identifier )))) ;) (if_statement "if (iVar2 == 0) {\n    (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n    pcStack_10fc = (char *)0x0;\n    goto LAB_00287858;\n  }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n    (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n    pcStack_10fc = (char *)0x0;\n    goto LAB_00287858;\n  }" { (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "iVar2 = iVar20 + 0x210;" (assignment_expression "iVar2 = iVar20 + 0x210" identifier = (binary_expression "iVar20 + 0x210" identifier + number_literal)) ;) (expression_statement "iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x7890,4);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x7890,4)" identifier = (call_expression "(**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x7890,4)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d04))" ( (pointer_expression "**(code **)(puVar30 + 0x175d04)" * (pointer_expression "*(code **)(puVar30 + 0x175d04)" * (cast_expression "(code **)(puVar30 + 0x175d04)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d04)" ( (binary_expression "puVar30 + 0x175d04" identifier + number_literal) ))))) )) (argument_list "(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x7890,4)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x7890" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , number_literal )))) ;) (if_statement "if (iVar3 == 0) {\n    iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n    if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c2,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(1,1);\n    if (puVar4 == (undefined1 *)0x0) {\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c7,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    *puVar4 = 0;\n    (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),puVar4);\n    iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78a0);\n    if (iVar19 != 0) {\n      iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac);\n      if (iVar19 == 0) {\n        puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n        if (puVar4 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar11 = 0;\n          iVar13 = *(int *)(puVar30 + 0x175020);\n          iVar22 = *(int *)(puVar30 + 0x1752b0);\n          iVar14 = *(int *)(puVar30 + 0x174fb8);\n          puVar21 = puVar4;\nLAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }\n      uStack_10d4 = 1;\n      goto LAB_00286050;\n    }\n    puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n    if (puVar4 == (undefined1 *)0x0) {\nLAB_0028544c:\n      uStack_10d4 = 0xffffffff;\n    }\n    else {\n      uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n      iStack_10cc = 0x1000;\n      uStack_10d4 = 0;\n      uStack_10c8 = 0;\n      uStack_10e4 = 0;\n      cVar17 = '\0';\n      puStack_10dc = (undefined1 *)0x0;\n      iVar19 = 0;\n      iVar11 = 0;\n      iVar13 = *(int *)(puVar30 + 0x175020);\n      iVar22 = *(int *)(puVar30 + 0x1752b0);\n      iVar14 = *(int *)(puVar30 + 0x174fb8);\n      puVar21 = puVar4;\n      while( true ) {\n        while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar11 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar9 = *(int *)(puVar30 + 0x174fc8);\n        iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n        iVar8 = 0;\n        while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0) {\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }\n        iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n        iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n        puVar21 = puVar4;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }\n      }\nLAB_0028573c:\n      (**(code **)(puVar30 + 0x175450))(uVar15);\n      if (iVar11 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar30 + 0x17575c))(iVar11);\n      }\nLAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x17575c))(iVar19);\n      }\n      if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n      }\n      (**(code **)(puVar30 + 0x17575c))(puVar4);\n      if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }\nLAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }\n        goto LAB_00287858;\n      }\n      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n    }\n    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n    goto LAB_00286050;\n  }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n    iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n    if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c2,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(1,1);\n    if (puVar4 == (undefined1 *)0x0) {\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c7,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    *puVar4 = 0;\n    (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),puVar4);\n    iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78a0);\n    if (iVar19 != 0) {\n      iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac);\n      if (iVar19 == 0) {\n        puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n        if (puVar4 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar11 = 0;\n          iVar13 = *(int *)(puVar30 + 0x175020);\n          iVar22 = *(int *)(puVar30 + 0x1752b0);\n          iVar14 = *(int *)(puVar30 + 0x174fb8);\n          puVar21 = puVar4;\nLAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }\n      uStack_10d4 = 1;\n      goto LAB_00286050;\n    }\n    puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n    if (puVar4 == (undefined1 *)0x0) {\nLAB_0028544c:\n      uStack_10d4 = 0xffffffff;\n    }\n    else {\n      uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n      iStack_10cc = 0x1000;\n      uStack_10d4 = 0;\n      uStack_10c8 = 0;\n      uStack_10e4 = 0;\n      cVar17 = '\0';\n      puStack_10dc = (undefined1 *)0x0;\n      iVar19 = 0;\n      iVar11 = 0;\n      iVar13 = *(int *)(puVar30 + 0x175020);\n      iVar22 = *(int *)(puVar30 + 0x1752b0);\n      iVar14 = *(int *)(puVar30 + 0x174fb8);\n      puVar21 = puVar4;\n      while( true ) {\n        while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar11 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar9 = *(int *)(puVar30 + 0x174fc8);\n        iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n        iVar8 = 0;\n        while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0) {\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }\n        iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n        iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n        puVar21 = puVar4;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }\n      }\nLAB_0028573c:\n      (**(code **)(puVar30 + 0x175450))(uVar15);\n      if (iVar11 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar30 + 0x17575c))(iVar11);\n      }\nLAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x17575c))(iVar19);\n      }\n      if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n      }\n      (**(code **)(puVar30 + 0x17575c))(puVar4);\n      if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }\nLAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }\n        goto LAB_00287858;\n      }\n      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n    }\n    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n    goto LAB_00286050;\n  }" { (expression_statement "iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2)" identifier = (call_expression "(**(code **)(puVar30 + 0x175cf4))(0,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175cf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175cf4)" * (pointer_expression "*(code **)(puVar30 + 0x175cf4)" * (cast_expression "(code **)(puVar30 + 0x175cf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175cf4)" ( (binary_expression "puVar30 + 0x175cf4" identifier + number_literal) ))))) )) (argument_list "(0,param_2)" ( number_literal , identifier )))) ;) (if_statement "if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c2,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c2,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }" { (expression_statement "(**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c2,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c2,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c2,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(1,1);" (assignment_expression "puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(1,1)" identifier = (cast_expression "(undefined1 *)(**(code **)(puVar30 + 0x175bf4))(1,1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar30 + 0x175bf4))(1,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(1,1)" ( number_literal , number_literal ))))) ;) (if_statement "if (puVar4 == (undefined1 *)0x0) {\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c7,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }" if (parenthesized_expression "(puVar4 == (undefined1 *)0x0)" ( (binary_expression "puVar4 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c7,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }" { (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c7,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c7,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c7,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "*puVar4 = 0;" (assignment_expression "*puVar4 = 0" (pointer_expression "*puVar4" * identifier) = number_literal) ;) (expression_statement "(**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),puVar4);" (call_expression "(**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),puVar4)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759b0))" ( (pointer_expression "**(code **)(puVar30 + 0x1759b0)" * (pointer_expression "*(code **)(puVar30 + 0x1759b0)" * (cast_expression "(code **)(puVar30 + 0x1759b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1759b0)" ( (binary_expression "puVar30 + 0x1759b0" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348),puVar4)" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) , identifier ))) ;) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78a0);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78a0)" identifier = (call_expression "(**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78a0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1757f8))" ( (pointer_expression "**(code **)(puVar30 + 0x1757f8)" * (pointer_expression "*(code **)(puVar30 + 0x1757f8)" * (cast_expression "(code **)(puVar30 + 0x1757f8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1757f8)" ( (binary_expression "puVar30 + 0x1757f8" identifier + number_literal) ))))) )) (argument_list "(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78a0)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x78a0" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) )))) ;) (if_statement "if (iVar19 != 0) {\n      iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac);\n      if (iVar19 == 0) {\n        puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n        if (puVar4 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar11 = 0;\n          iVar13 = *(int *)(puVar30 + 0x175020);\n          iVar22 = *(int *)(puVar30 + 0x1752b0);\n          iVar14 = *(int *)(puVar30 + 0x174fb8);\n          puVar21 = puVar4;\nLAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }\n      uStack_10d4 = 1;\n      goto LAB_00286050;\n    }" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (compound_statement "{\n      iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac);\n      if (iVar19 == 0) {\n        puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n        if (puVar4 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar11 = 0;\n          iVar13 = *(int *)(puVar30 + 0x175020);\n          iVar22 = *(int *)(puVar30 + 0x1752b0);\n          iVar14 = *(int *)(puVar30 + 0x174fb8);\n          puVar21 = puVar4;\nLAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }\n      uStack_10d4 = 1;\n      goto LAB_00286050;\n    }" { (expression_statement "iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac)" identifier = (call_expression "(**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac)" (parenthesized_expression "(**(code **)(puVar30 + 0x1757f8))" ( (pointer_expression "**(code **)(puVar30 + 0x1757f8)" * (pointer_expression "*(code **)(puVar30 + 0x1757f8)" * (cast_expression "(code **)(puVar30 + 0x1757f8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1757f8)" ( (binary_expression "puVar30 + 0x1757f8" identifier + number_literal) ))))) )) (argument_list "(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x78ac" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) )))) ;) (if_statement "if (iVar19 == 0) {\n        puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n        if (puVar4 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar11 = 0;\n          iVar13 = *(int *)(puVar30 + 0x175020);\n          iVar22 = *(int *)(puVar30 + 0x1752b0);\n          iVar14 = *(int *)(puVar30 + 0x174fb8);\n          puVar21 = puVar4;\nLAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n        puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n        if (puVar4 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar11 = 0;\n          iVar13 = *(int *)(puVar30 + 0x175020);\n          iVar22 = *(int *)(puVar30 + 0x1752b0);\n          iVar14 = *(int *)(puVar30 + 0x174fb8);\n          puVar21 = puVar4;\nLAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }" { (expression_statement "puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);" (assignment_expression "puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1)" identifier = (cast_expression "(undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar30 + 0x175bf4))(0x1000,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(0x1000,1)" ( number_literal , number_literal ))))) ;) (if_statement "if (puVar4 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar11 = 0;\n          iVar13 = *(int *)(puVar30 + 0x175020);\n          iVar22 = *(int *)(puVar30 + 0x1752b0);\n          iVar14 = *(int *)(puVar30 + 0x174fb8);\n          puVar21 = puVar4;\nLAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }" if (parenthesized_expression "(puVar4 != (undefined1 *)0x0)" ( (binary_expression "puVar4 != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar11 = 0;\n          iVar13 = *(int *)(puVar30 + 0x175020);\n          iVar22 = *(int *)(puVar30 + 0x1752b0);\n          iVar14 = *(int *)(puVar30 + 0x174fb8);\n          puVar21 = puVar4;\nLAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }" { (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175bdc))();" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175bdc))()" identifier = (call_expression "(**(code **)(puVar30 + 0x175bdc))()" (parenthesized_expression "(**(code **)(puVar30 + 0x175bdc))" ( (pointer_expression "**(code **)(puVar30 + 0x175bdc)" * (pointer_expression "*(code **)(puVar30 + 0x175bdc)" * (cast_expression "(code **)(puVar30 + 0x175bdc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bdc)" ( (binary_expression "puVar30 + 0x175bdc" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (expression_statement "iStack_10cc = 0x1000;" (assignment_expression "iStack_10cc = 0x1000" identifier = number_literal) ;) (expression_statement "uStack_10d4 = 0;" (assignment_expression "uStack_10d4 = 0" identifier = number_literal) ;) (expression_statement "uStack_10c8 = 0;" (assignment_expression "uStack_10c8 = 0" identifier = number_literal) ;) (expression_statement "puStack_10dc = (undefined1 *)0x0;" (assignment_expression "puStack_10dc = (undefined1 *)0x0" identifier = (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "cVar17 = '\0';" (assignment_expression "cVar17 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "puStack_10ec = (undefined1 *)0x0;" (assignment_expression "puStack_10ec = (undefined1 *)0x0" identifier = (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iVar19 = 0;" (assignment_expression "iVar19 = 0" identifier = number_literal) ;) (expression_statement "iVar11 = 0;" (assignment_expression "iVar11 = 0" identifier = number_literal) ;) (expression_statement "iVar13 = *(int *)(puVar30 + 0x175020);" (assignment_expression "iVar13 = *(int *)(puVar30 + 0x175020)" identifier = (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) ))))) ;) (expression_statement "iVar22 = *(int *)(puVar30 + 0x1752b0);" (assignment_expression "iVar22 = *(int *)(puVar30 + 0x1752b0)" identifier = (pointer_expression "*(int *)(puVar30 + 0x1752b0)" * (cast_expression "(int *)(puVar30 + 0x1752b0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x1752b0)" ( (binary_expression "puVar30 + 0x1752b0" identifier + number_literal) ))))) ;) (expression_statement "iVar14 = *(int *)(puVar30 + 0x174fb8);" (assignment_expression "iVar14 = *(int *)(puVar30 + 0x174fb8)" identifier = (pointer_expression "*(int *)(puVar30 + 0x174fb8)" * (cast_expression "(int *)(puVar30 + 0x174fb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb8)" ( (binary_expression "puVar30 + 0x174fb8" identifier + number_literal) ))))) ;) (expression_statement "puVar21 = puVar4;" (assignment_expression "puVar21 = puVar4" identifier = identifier) ;) (labeled_statement "LAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );" statement_identifier : (do_statement "do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );" do (compound_statement "{\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          }" { (expression_statement "iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);" (assignment_expression "iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a78))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a78))" ( (pointer_expression "**(code **)(puVar30 + 0x175a78)" * (pointer_expression "*(code **)(puVar30 + 0x175a78)" * (cast_expression "(code **)(puVar30 + 0x175a78)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a78)" ( (binary_expression "puVar30 + 0x175a78" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier )))) ;) (if_statement "if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }" if (parenthesized_expression "((iVar8 != -1) && (iVar8 != 10))" ( (binary_expression "(iVar8 != -1) && (iVar8 != 10)" (parenthesized_expression "(iVar8 != -1)" ( (binary_expression "iVar8 != -1" identifier != number_literal) )) && (parenthesized_expression "(iVar8 != 10)" ( (binary_expression "iVar8 != 10" identifier != number_literal) ))) )) (compound_statement "{\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }" { (expression_statement "iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);" (assignment_expression "iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc)" identifier = (call_expression "(**(code **)(puVar30 + 0x175e30))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175e30))" ( (pointer_expression "**(code **)(puVar30 + 0x175e30)" * (pointer_expression "*(code **)(puVar30 + 0x175e30)" * (cast_expression "(code **)(puVar30 + 0x175e30)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e30)" ( (binary_expression "puVar30 + 0x175e30" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier )))) ;) (expression_statement "iVar24 = (int)puVar21 - (int)puVar4;" (assignment_expression "iVar24 = (int)puVar21 - (int)puVar4" identifier = (binary_expression "(int)puVar21 - (int)puVar4" (cast_expression "(int)puVar21" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)puVar4" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }" { (if_statement "if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }" if (parenthesized_expression "(iStack_10cc <= iVar24 + 1)" ( (binary_expression "iStack_10cc <= iVar24 + 1" identifier <= (binary_expression "iVar24 + 1" identifier + number_literal)) )) (compound_statement "{\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }" { (expression_statement "iStack_10cc = iStack_10cc * 2;" (assignment_expression "iStack_10cc = iStack_10cc * 2" identifier = (binary_expression "iStack_10cc * 2" identifier * number_literal)) ;) (expression_statement "puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;" (assignment_expression "puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)" identifier = (cast_expression "(undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175b08))" ( (pointer_expression "**(code **)(puVar30 + 0x175b08)" * (pointer_expression "*(code **)(puVar30 + 0x175b08)" * (cast_expression "(code **)(puVar30 + 0x175b08)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175b08)" ( (binary_expression "puVar30 + 0x175b08" identifier + number_literal) ))))) )) (argument_list "(puVar4,iStack_10cc + 2,1)" ( identifier , (binary_expression "iStack_10cc + 2" identifier + number_literal) , number_literal ))))) ;) (if_statement "if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;" if (parenthesized_expression "(puVar4 == (undefined1 *)0x0)" ( (binary_expression "puVar4 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00285f24;" goto statement_identifier ;)) (expression_statement "puVar21 = puVar4 + iVar24;" (assignment_expression "puVar21 = puVar4 + iVar24" identifier = (binary_expression "puVar4 + iVar24" identifier + identifier)) ;) })) (expression_statement "*puVar21 = (char)iVar8;" (assignment_expression "*puVar21 = (char)iVar8" (pointer_expression "*puVar21" * identifier) = (cast_expression "(char)iVar8" ( (type_descriptor "char" primitive_type) ) identifier)) ;) (expression_statement "puVar21 = puVar21 + 1;" (assignment_expression "puVar21 = puVar21 + 1" identifier = (binary_expression "puVar21 + 1" identifier + number_literal)) ;) (goto_statement "goto LAB_00285dec;" goto statement_identifier ;) })) })) (if_statement "if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;" if (parenthesized_expression "((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))" ( (binary_expression "(puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)" (parenthesized_expression "(puVar4 == (undefined1 *)0x0)" ( (binary_expression "puVar4 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)" ( (comma_expression "iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0" (assignment_expression "iStack_10cc = ((int)puVar21 - (int)puVar4) + 1" identifier = (binary_expression "((int)puVar21 - (int)puVar4) + 1" (parenthesized_expression "((int)puVar21 - (int)puVar4)" ( (binary_expression "(int)puVar21 - (int)puVar4" (cast_expression "(int)puVar21" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)puVar4" ( (type_descriptor "int" primitive_type) ) identifier)) )) + number_literal)) , (binary_expression "(int)puVar21 - (int)puVar4 == 0" (binary_expression "(int)puVar21 - (int)puVar4" (cast_expression "(int)puVar21" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)puVar4" ( (type_descriptor "int" primitive_type) ) identifier)) == number_literal)) ))) )) (goto_statement "goto LAB_00285f24;" goto statement_identifier ;)) (expression_statement "*puVar21 = 0;" (assignment_expression "*puVar21 = 0" (pointer_expression "*puVar21" * identifier) = number_literal) ;) (expression_statement "uStack_10ac = 0;" (assignment_expression "uStack_10ac = 0" identifier = number_literal) ;) (expression_statement "iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);" (assignment_expression "iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1)" identifier = (call_expression "(**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(iStack_10cc,1)" ( identifier , number_literal )))) ;) (if_statement "if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }" if (parenthesized_expression "(iVar11 == 0)" ( (binary_expression "iVar11 == 0" identifier == number_literal) )) (compound_statement "{\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }" { (expression_statement "(**(code **)(puVar30 + 0x175450))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x175450))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x175450))" ( (pointer_expression "**(code **)(puVar30 + 0x175450)" * (pointer_expression "*(code **)(puVar30 + 0x175450)" * (cast_expression "(code **)(puVar30 + 0x175450)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175450)" ( (binary_expression "puVar30 + 0x175450" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (goto_statement "goto LAB_00287bf8;" goto statement_identifier ;) })) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1)" identifier = (call_expression "(**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(iStack_10cc,1)" ( identifier , number_literal )))) ;) (if_statement "if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }" { (expression_statement "(**(code **)(puVar30 + 0x175450))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x175450))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x175450))" ( (pointer_expression "**(code **)(puVar30 + 0x175450)" * (pointer_expression "*(code **)(puVar30 + 0x175450)" * (cast_expression "(code **)(puVar30 + 0x175450)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175450)" ( (binary_expression "puVar30 + 0x175450" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "iVar19 = 0;" (assignment_expression "iVar19 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_00287be8;" goto statement_identifier ;) })) (expression_statement "iVar9 = *(int *)(puVar30 + 0x174fc8);" (assignment_expression "iVar9 = *(int *)(puVar30 + 0x174fc8)" identifier = (pointer_expression "*(int *)(puVar30 + 0x174fc8)" * (cast_expression "(int *)(puVar30 + 0x174fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fc8)" ( (binary_expression "puVar30 + 0x174fc8" identifier + number_literal) ))))) ;) (expression_statement "iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;" (assignment_expression "iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8" identifier = (binary_expression "*(int *)(puVar30 + 0x174fb8) + -0x2d8" (pointer_expression "*(int *)(puVar30 + 0x174fb8)" * (cast_expression "(int *)(puVar30 + 0x174fb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb8)" ( (binary_expression "puVar30 + 0x174fb8" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "iVar8 = 0;" (assignment_expression "iVar8 = 0" identifier = number_literal) ;) (while_statement "while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }" while (parenthesized_expression "(iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0)" ( (comma_expression "iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0" (assignment_expression "iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af)" identifier = (call_expression "(**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af)" (parenthesized_expression "(**(code **)(puVar30 + 0x175720))" ( (pointer_expression "**(code **)(puVar30 + 0x175720)" * (pointer_expression "*(code **)(puVar30 + 0x175720)" * (cast_expression "(code **)(puVar30 + 0x175720)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175720)" ( (binary_expression "puVar30 + 0x175720" identifier + number_literal) ))))) )) (argument_list "(uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af)" ( identifier , number_literal , identifier , identifier , identifier , identifier , (binary_expression "iVar9 + 0x2c44" identifier + number_literal) , (binary_expression "iVar13 + 0x7178" identifier + number_literal) , number_literal , (pointer_expression "&uStack_10b0" & identifier) , (pointer_expression "&uStack_10ac" & identifier) , (pointer_expression "&uStack_10af" & identifier) )))) , (binary_expression "iVar6 == 0" identifier == number_literal)) )) (compound_statement "{\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }" { (if_statement "if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }" { (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (expression_statement "iVar7 = *(int *)(puVar30 + 0x174fc8);" (assignment_expression "iVar7 = *(int *)(puVar30 + 0x174fc8)" identifier = (pointer_expression "*(int *)(puVar30 + 0x174fc8)" * (cast_expression "(int *)(puVar30 + 0x174fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fc8)" ( (binary_expression "puVar30 + 0x174fc8" identifier + number_literal) ))))) ;) (expression_statement "iVar28 = *(int *)(puVar30 + 0x174fb0);" (assignment_expression "iVar28 = *(int *)(puVar30 + 0x174fb0)" identifier = (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) ))))) ;) (expression_statement "iVar6 = 0;" (assignment_expression "iVar6 = 0" identifier = number_literal) ;) (labeled_statement "LAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );" statement_identifier : (do_statement "do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );" do (compound_statement "{\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                }" { (expression_statement "iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);" (assignment_expression "iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" identifier = (call_expression "(**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" (parenthesized_expression "(**(code **)(puVar30 + 0x175720))" ( (pointer_expression "**(code **)(puVar30 + 0x175720)" * (pointer_expression "*(code **)(puVar30 + 0x175720)" * (cast_expression "(code **)(puVar30 + 0x175720)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175720)" ( (binary_expression "puVar30 + 0x175720" identifier + number_literal) ))))) )) (argument_list "(uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" ( identifier , number_literal , identifier , identifier , identifier , identifier , (binary_expression "iVar7 + 0xabc" identifier + number_literal) , identifier , number_literal , (pointer_expression "&cStack_10ae" & identifier) , (pointer_expression "&iStack_10a8" & identifier) , (pointer_expression "&uStack_10ad" & identifier) )))) ;) (if_statement "if (iVar5 != 0) goto LAB_00285914;" if (parenthesized_expression "(iVar5 != 0)" ( (binary_expression "iVar5 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00285914;" goto statement_identifier ;)) (if_statement "if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }" if (parenthesized_expression "(iVar6 == 1)" ( (binary_expression "iVar6 == 1" identifier == number_literal) )) (compound_statement "{\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }" { (expression_statement "puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);" (assignment_expression "puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10)" identifier = (cast_expression "(undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar30 + 0x175a28))(iVar19,0,10)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a28))" ( (pointer_expression "**(code **)(puVar30 + 0x175a28)" * (pointer_expression "*(code **)(puVar30 + 0x175a28)" * (cast_expression "(code **)(puVar30 + 0x175a28)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a28)" ( (binary_expression "puVar30 + 0x175a28" identifier + number_literal) ))))) )) (argument_list "(iVar19,0,10)" ( identifier , number_literal , number_literal ))))) ;) }) (else_clause "else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }" else (if_statement "if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }" if (parenthesized_expression "(iVar6 == 2)" ( (binary_expression "iVar6 == 2" identifier == number_literal) )) (compound_statement "{\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }" { (expression_statement "iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);" (assignment_expression "iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a20))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a20))" ( (pointer_expression "**(code **)(puVar30 + 0x175a20)" * (pointer_expression "*(code **)(puVar30 + 0x175a20)" * (cast_expression "(code **)(puVar30 + 0x175a20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a20)" ( (binary_expression "puVar30 + 0x175a20" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier )))) ;) (expression_statement "puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;" (assignment_expression "puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)" identifier = (cast_expression "(undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(iVar5 + 0x1000,1)" ( (binary_expression "iVar5 + 0x1000" identifier + number_literal) , number_literal ))))) ;) (if_statement "if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }" if (parenthesized_expression "(puStack_10ec != (undefined1 *)0x0)" ( (binary_expression "puStack_10ec != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }" { (expression_statement "iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);" (assignment_expression "iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a20))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a20))" ( (pointer_expression "**(code **)(puVar30 + 0x175a20)" * (pointer_expression "*(code **)(puVar30 + 0x175a20)" * (cast_expression "(code **)(puVar30 + 0x175a20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a20)" ( (binary_expression "puVar30 + 0x175a20" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier )))) ;) (expression_statement "(**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);" (call_expression "(**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000)" (parenthesized_expression "(**(code **)(puVar30 + 0x175f24))" ( (pointer_expression "**(code **)(puVar30 + 0x175f24)" * (pointer_expression "*(code **)(puVar30 + 0x175f24)" * (cast_expression "(code **)(puVar30 + 0x175f24)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175f24)" ( (binary_expression "puVar30 + 0x175f24" identifier + number_literal) ))))) )) (argument_list "(puStack_10ec,iVar19,iVar6 + 0x1000)" ( identifier , identifier , (binary_expression "iVar6 + 0x1000" identifier + number_literal) ))) ;) (expression_statement "iVar6 = 3;" (assignment_expression "iVar6 = 3" identifier = number_literal) ;) (goto_statement "goto LAB_002857fc;" goto statement_identifier ;) })) }) (else_clause "else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }" else (if_statement "if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }" if (parenthesized_expression "(iVar6 == 0)" ( (binary_expression "iVar6 == 0" identifier == number_literal) )) (compound_statement "{\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }" { (expression_statement "iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);" (assignment_expression "iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890)" identifier = (call_expression "(**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890)" (parenthesized_expression "(**(code **)(puVar30 + 0x1753e4))" ( (pointer_expression "**(code **)(puVar30 + 0x1753e4)" * (pointer_expression "*(code **)(puVar30 + 0x1753e4)" * (cast_expression "(code **)(puVar30 + 0x1753e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1753e4)" ( (binary_expression "puVar30 + 0x1753e4" identifier + number_literal) ))))) )) (argument_list "(iVar19,iVar28 + 0x7890)" ( identifier , (binary_expression "iVar28 + 0x7890" identifier + number_literal) )))) ;) (if_statement "if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }" if (parenthesized_expression "(iVar5 == 0)" ( (binary_expression "iVar5 == 0" identifier == number_literal) )) (compound_statement "{\n                      cVar17 = -1;\n                    }" { (expression_statement "cVar17 = -1;" (assignment_expression "cVar17 = -1" identifier = number_literal) ;) }) (else_clause "else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }" else (compound_statement "{\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }" { (expression_statement "cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);" (assignment_expression "cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10)" identifier = (call_expression "(**(code **)(puVar30 + 0x175c34))(iVar19,0,10)" (parenthesized_expression "(**(code **)(puVar30 + 0x175c34))" ( (pointer_expression "**(code **)(puVar30 + 0x175c34)" * (pointer_expression "*(code **)(puVar30 + 0x175c34)" * (cast_expression "(code **)(puVar30 + 0x175c34)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175c34)" ( (binary_expression "puVar30 + 0x175c34" identifier + number_literal) ))))) )) (argument_list "(iVar19,0,10)" ( identifier , number_literal , number_literal )))) ;) }))) })))))) (expression_statement "iVar6 = iVar6 + 1;" (assignment_expression "iVar6 = iVar6 + 1" identifier = (binary_expression "iVar6 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "( true )" ( true )) ;)) })) (if_statement "if (iVar8 != 1) goto LAB_00285914;" if (parenthesized_expression "(iVar8 != 1)" ( (binary_expression "iVar8 != 1" identifier != number_literal) )) (goto_statement "goto LAB_00285914;" goto statement_identifier ;)) (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (expression_statement "uVar12 = (**(code **)(puVar30 + 0x175a20))();" (assignment_expression "uVar12 = (**(code **)(puVar30 + 0x175a20))()" identifier = (call_expression "(**(code **)(puVar30 + 0x175a20))()" (parenthesized_expression "(**(code **)(puVar30 + 0x175a20))" ( (pointer_expression "**(code **)(puVar30 + 0x175a20)" * (pointer_expression "*(code **)(puVar30 + 0x175a20)" * (cast_expression "(code **)(puVar30 + 0x175a20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a20)" ( (binary_expression "puVar30 + 0x175a20" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (while_statement "while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }" while (parenthesized_expression "(iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    )" ( (comma_expression "iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0" (assignment_expression "iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" identifier = (call_expression "(**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" (parenthesized_expression "(**(code **)(puVar30 + 0x175720))" ( (pointer_expression "**(code **)(puVar30 + 0x175720)" * (pointer_expression "*(code **)(puVar30 + 0x175720)" * (cast_expression "(code **)(puVar30 + 0x175720)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175720)" ( (binary_expression "puVar30 + 0x175720" identifier + number_literal) ))))) )) (argument_list "(uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" ( identifier , number_literal , identifier , identifier , identifier , identifier , (binary_expression "iVar14 + -0x3bc" identifier + number_literal) , identifier , number_literal , (pointer_expression "&cStack_10ae" & identifier) , (pointer_expression "&iStack_10a8" & identifier) , (pointer_expression "&uStack_10ad" & identifier) )))) , (binary_expression "iVar6 == 0" identifier == number_literal)) )) (compound_statement "{\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }" { (if_statement "if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }" if (parenthesized_expression "((cStack_10ae != '\0') && (0 < iStack_10a8))" ( (binary_expression "(cStack_10ae != '\0') && (0 < iStack_10a8)" (parenthesized_expression "(cStack_10ae != '\0')" ( (binary_expression "cStack_10ae != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(0 < iStack_10a8)" ( (binary_expression "0 < iStack_10a8" number_literal < identifier) ))) )) (compound_statement "{\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }" { (expression_statement "iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);" (assignment_expression "iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1)" identifier = (call_expression "(*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1)" (parenthesized_expression "(*(code *)(iVar22 + 0x458c))" ( (pointer_expression "*(code *)(iVar22 + 0x458c)" * (cast_expression "(code *)(iVar22 + 0x458c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar22 + 0x458c)" ( (binary_expression "iVar22 + 0x458c" identifier + number_literal) )))) )) (argument_list "(iVar11 + iStack_10a8 + -1)" ( (binary_expression "iVar11 + iStack_10a8 + -1" (binary_expression "iVar11 + iStack_10a8" identifier + identifier) + number_literal) )))) ;) (if_statement "if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }" if (parenthesized_expression "((int)uVar12 < iVar6)" ( (binary_expression "(int)uVar12 < iVar6" (cast_expression "(int)uVar12" ( (type_descriptor "int" primitive_type) ) identifier) < identifier) )) (compound_statement "{\n                    uVar12 = 0;\n                  }" { (expression_statement "uVar12 = 0;" (assignment_expression "uVar12 = 0" identifier = number_literal) ;) }) (else_clause "else {\n                    uVar12 = uVar12 - iVar6;\n                  }" else (compound_statement "{\n                    uVar12 = uVar12 - iVar6;\n                  }" { (expression_statement "uVar12 = uVar12 - iVar6;" (assignment_expression "uVar12 = uVar12 - iVar6" identifier = (binary_expression "uVar12 - iVar6" identifier - identifier)) ;) }))) })) })) (if_statement "if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }" if (parenthesized_expression "(cVar17 == -1)" ( (binary_expression "cVar17 == -1" identifier == number_literal) )) (compound_statement "{\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }" { (if_statement "if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }" if (parenthesized_expression "(0 < (int)uStack_10c8)" ( (binary_expression "0 < (int)uStack_10c8" number_literal < (cast_expression "(int)uStack_10c8" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }" { (expression_statement "iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);" (assignment_expression "iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a04))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a04))" ( (pointer_expression "**(code **)(puVar30 + 0x175a04)" * (pointer_expression "*(code **)(puVar30 + 0x175a04)" * (cast_expression "(code **)(puVar30 + 0x175a04)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a04)" ( (binary_expression "puVar30 + 0x175a04" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;" if (parenthesized_expression "((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))" ( (binary_expression "(iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0)" (parenthesized_expression "(iVar6 < 0)" ( (binary_expression "iVar6 < 0" identifier < number_literal) )) || (parenthesized_expression "(iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0)" ( (comma_expression "iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0" (assignment_expression "iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a10))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a10))" ( (pointer_expression "**(code **)(puVar30 + 0x175a10)" * (pointer_expression "*(code **)(puVar30 + 0x175a10)" * (cast_expression "(code **)(puVar30 + 0x175a10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a10)" ( (binary_expression "puVar30 + 0x175a10" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) , (binary_expression "iVar6 < 0" identifier < number_literal)) ))) )) (goto_statement "goto LAB_00287db0;" goto statement_identifier ;)) (expression_statement "(**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);" (call_expression "(**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759bc))" ( (pointer_expression "**(code **)(puVar30 + 0x1759bc)" * (pointer_expression "*(code **)(puVar30 + 0x1759bc)" * (cast_expression "(code **)(puVar30 + 0x1759bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1759bc)" ( (binary_expression "puVar30 + 0x1759bc" identifier + number_literal) ))))) )) (argument_list "(iVar3,uStack_10d4 - uStack_10c8)" ( identifier , (binary_expression "uStack_10d4 - uStack_10c8" identifier - identifier) ))) ;) (expression_statement "iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);" (assignment_expression "iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a10))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a10))" ( (pointer_expression "**(code **)(puVar30 + 0x175a10)" * (pointer_expression "*(code **)(puVar30 + 0x175a10)" * (cast_expression "(code **)(puVar30 + 0x175a10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a10)" ( (binary_expression "puVar30 + 0x175a10" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if (iVar6 < 0) goto LAB_00287db0;" if (parenthesized_expression "(iVar6 < 0)" ( (binary_expression "iVar6 < 0" identifier < number_literal) )) (goto_statement "goto LAB_00287db0;" goto statement_identifier ;)) (expression_statement "uStack_10c8 = 0;" (assignment_expression "uStack_10c8 = 0" identifier = number_literal) ;) })) (if_statement "if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }" if (parenthesized_expression "((uStack_10d4 & 1) != 0)" ( (binary_expression "(uStack_10d4 & 1) != 0" (parenthesized_expression "(uStack_10d4 & 1)" ( (binary_expression "uStack_10d4 & 1" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }" { (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0)" ( identifier , number_literal ))) ;) (expression_statement "uStack_10d4 = uStack_10d4 + 1;" (assignment_expression "uStack_10d4 = uStack_10d4 + 1" identifier = (binary_expression "uStack_10d4 + 1" identifier + number_literal)) ;) })) (expression_statement "(**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);" (call_expression "(**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890)" (parenthesized_expression "(**(code **)(puVar30 + 0x175c90))" ( (pointer_expression "**(code **)(puVar30 + 0x175c90)" * (pointer_expression "*(code **)(puVar30 + 0x175c90)" * (cast_expression "(code **)(puVar30 + 0x175c90)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175c90)" ( (binary_expression "puVar30 + 0x175c90" identifier + number_literal) ))))) )) (argument_list "(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x7890" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);" (call_expression "(**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff)" (parenthesized_expression "(**(code **)(puVar30 + 0x175970))" ( (pointer_expression "**(code **)(puVar30 + 0x175970)" * (pointer_expression "*(code **)(puVar30 + 0x175970)" * (cast_expression "(code **)(puVar30 + 0x175970)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175970)" ( (binary_expression "puVar30 + 0x175970" identifier + number_literal) ))))) )) (argument_list "(iVar3,(uint)puStack_10dc & 0xffff)" ( identifier , (binary_expression "(uint)puStack_10dc & 0xffff" (cast_expression "(uint)puStack_10dc" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) ))) ;) (if_statement "if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }" if (parenthesized_expression "(puStack_10ec == (undefined1 *)0x0)" ( (binary_expression "puStack_10ec == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }" { (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0)" ( identifier , number_literal ))) ;) (expression_statement "iVar6 = uStack_10d4 + 7;" (assignment_expression "iVar6 = uStack_10d4 + 7" identifier = (binary_expression "uStack_10d4 + 7" identifier + number_literal)) ;) (labeled_statement "LAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);" statement_identifier : (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0)" ( identifier , number_literal ))) ;)) (expression_statement "iVar6 = iVar6 + 1;" (assignment_expression "iVar6 = iVar6 + 1" identifier = (binary_expression "iVar6 + 1" identifier + number_literal)) ;) }) (else_clause "else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }" else (compound_statement "{\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }" { (expression_statement "bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);" (assignment_expression "bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a20))(puStack_10ec)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a20))" ( (pointer_expression "**(code **)(puVar30 + 0x175a20)" * (pointer_expression "*(code **)(puVar30 + 0x175a20)" * (cast_expression "(code **)(puVar30 + 0x175a20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a20)" ( (binary_expression "puVar30 + 0x175a20" identifier + number_literal) ))))) )) (argument_list "(puStack_10ec)" ( identifier )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,bVar18)" ( identifier , identifier ))) ;) (expression_statement "uVar29 = (uint)bVar18;" (assignment_expression "uVar29 = (uint)bVar18" identifier = (cast_expression "(uint)bVar18" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }" if (parenthesized_expression "(uVar29 != 0)" ( (binary_expression "uVar29 != 0" identifier != number_literal) )) (compound_statement "{\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }" { (expression_statement "puVar21 = puStack_10ec;" (assignment_expression "puVar21 = puStack_10ec" identifier = identifier) ;) (do_statement "do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);" do (compound_statement "{\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    }" { (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,*puVar21)" ( identifier , (pointer_expression "*puVar21" * identifier) ))) ;) (expression_statement "puVar21 = puVar21 + 1;" (assignment_expression "puVar21 = puVar21 + 1" identifier = (binary_expression "puVar21 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(puVar21 != puStack_10ec + uVar29)" ( (binary_expression "puVar21 != puStack_10ec + uVar29" identifier != (binary_expression "puStack_10ec + uVar29" identifier + identifier)) )) ;) })) (expression_statement "iVar6 = uStack_10d4 + 7 + uVar29;" (assignment_expression "iVar6 = uStack_10d4 + 7 + uVar29" identifier = (binary_expression "uStack_10d4 + 7 + uVar29" (binary_expression "uStack_10d4 + 7" identifier + number_literal) + identifier)) ;) (if_statement "if ((bVar18 & 1) == 0) goto LAB_00287bac;" if (parenthesized_expression "((bVar18 & 1) == 0)" ( (binary_expression "(bVar18 & 1) == 0" (parenthesized_expression "(bVar18 & 1)" ( (binary_expression "bVar18 & 1" identifier & number_literal) )) == number_literal) )) (goto_statement "goto LAB_00287bac;" goto statement_identifier ;)) }))) (if_statement "if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }" if (parenthesized_expression "(puStack_10dc == (undefined1 *)0x404)" ( (binary_expression "puStack_10dc == (undefined1 *)0x404" identifier == (cast_expression "(undefined1 *)0x404" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }" { (expression_statement "iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);" (assignment_expression "iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a04))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a04))" ( (pointer_expression "**(code **)(puVar30 + 0x175a04)" * (pointer_expression "*(code **)(puVar30 + 0x175a04)" * (cast_expression "(code **)(puVar30 + 0x175a04)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a04)" ( (binary_expression "puVar30 + 0x175a04" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if (iVar7 < 0) goto LAB_00287db0;" if (parenthesized_expression "(iVar7 < 0)" ( (binary_expression "iVar7 < 0" identifier < number_literal) )) (goto_statement "goto LAB_00287db0;" goto statement_identifier ;)) (expression_statement "(**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);" (call_expression "(**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759bc))" ( (pointer_expression "**(code **)(puVar30 + 0x1759bc)" * (pointer_expression "*(code **)(puVar30 + 0x1759bc)" * (cast_expression "(code **)(puVar30 + 0x1759bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1759bc)" ( (binary_expression "puVar30 + 0x1759bc" identifier + number_literal) ))))) )) (argument_list "(iVar3,0xffffffff)" ( identifier , number_literal ))) ;) (expression_statement "uStack_10d4 = iVar6 + 4;" (assignment_expression "uStack_10d4 = iVar6 + 4" identifier = (binary_expression "iVar6 + 4" identifier + number_literal)) ;) (expression_statement "uStack_10c8 = uStack_10d4;" (assignment_expression "uStack_10c8 = uStack_10d4" identifier = identifier) ;) }) (else_clause "else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }" else (compound_statement "{\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }" { (expression_statement "(**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);" (call_expression "(**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759bc))" ( (pointer_expression "**(code **)(puVar30 + 0x1759bc)" * (pointer_expression "*(code **)(puVar30 + 0x1759bc)" * (cast_expression "(code **)(puVar30 + 0x1759bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1759bc)" ( (binary_expression "puVar30 + 0x1759bc" identifier + number_literal) ))))) )) (argument_list "(iVar3,uVar12)" ( identifier , identifier ))) ;) (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (expression_statement "uStack_10d4 = uVar12 + iVar6 + 4;" (assignment_expression "uStack_10d4 = uVar12 + iVar6 + 4" identifier = (binary_expression "uVar12 + iVar6 + 4" (binary_expression "uVar12 + iVar6" identifier + identifier) + number_literal)) ;) (expression_statement "iVar6 = uVar12 - 1;" (assignment_expression "iVar6 = uVar12 - 1" identifier = (binary_expression "uVar12 - 1" identifier - number_literal)) ;) (if_statement "if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }" if (parenthesized_expression "(uVar12 != 0)" ( (binary_expression "uVar12 != 0" identifier != number_literal) )) (compound_statement "{\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }" { (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (do_statement "do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);" do (compound_statement "{\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    }" { (expression_statement "puVar21 = (undefined1 *)(iVar11 + iStack_10a8);" (assignment_expression "puVar21 = (undefined1 *)(iVar11 + iStack_10a8)" identifier = (cast_expression "(undefined1 *)(iVar11 + iStack_10a8)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar11 + iStack_10a8)" ( (binary_expression "iVar11 + iStack_10a8" identifier + identifier) )))) ;) (expression_statement "iStack_10a8 = iStack_10a8 + 1;" (assignment_expression "iStack_10a8 = iStack_10a8 + 1" identifier = (binary_expression "iStack_10a8 + 1" identifier + number_literal)) ;) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,*puVar21)" ( identifier , (pointer_expression "*puVar21" * identifier) ))) ;) (expression_statement "iVar6 = iVar6 + -1;" (assignment_expression "iVar6 = iVar6 + -1" identifier = (binary_expression "iVar6 + -1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar6 != -1)" ( (binary_expression "iVar6 != -1" identifier != number_literal) )) ;) })) (if_statement "if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }" if (parenthesized_expression "((uStack_10d4 & 1) != 0)" ( (binary_expression "(uStack_10d4 & 1) != 0" (parenthesized_expression "(uStack_10d4 & 1)" ( (binary_expression "uStack_10d4 & 1" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }" { (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0)" ( identifier , number_literal ))) ;) (expression_statement "uStack_10d4 = uStack_10d4 + 1;" (assignment_expression "uStack_10d4 = uStack_10d4 + 1" identifier = (binary_expression "uStack_10d4 + 1" identifier + number_literal)) ;) })) }))) (labeled_statement "LAB_00285914:\n                iVar8 = iVar8 + 1;" statement_identifier : (expression_statement "iVar8 = iVar8 + 1;" (assignment_expression "iVar8 = iVar8 + 1" identifier = (binary_expression "iVar8 + 1" identifier + number_literal)) ;)) }) (else_clause "else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }" else (compound_statement "{\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }" { (if_statement "if (0x7fff < (int)uVar12) goto LAB_00285914;" if (parenthesized_expression "(0x7fff < (int)uVar12)" ( (binary_expression "0x7fff < (int)uVar12" number_literal < (cast_expression "(int)uVar12" ( (type_descriptor "int" primitive_type) ) identifier)) )) (goto_statement "goto LAB_00285914;" goto statement_identifier ;)) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0x1c)" ( identifier , number_literal ))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,cVar17)" ( identifier , identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,(uint)puStack_10dc & 0xff)" ( identifier , (binary_expression "(uint)puStack_10dc & 0xff" (cast_expression "(uint)puStack_10dc" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);" (call_expression "(**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff)" (parenthesized_expression "(**(code **)(puVar30 + 0x175970))" ( (pointer_expression "**(code **)(puVar30 + 0x175970)" * (pointer_expression "*(code **)(puVar30 + 0x175970)" * (cast_expression "(code **)(puVar30 + 0x175970)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175970)" ( (binary_expression "puVar30 + 0x175970" identifier + number_literal) ))))) )) (argument_list "(iVar3,uVar12 & 0xffff)" ( identifier , (binary_expression "uVar12 & 0xffff" identifier & number_literal) ))) ;) (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (expression_statement "uStack_10d4 = uVar12 + uStack_10d4 + 5;" (assignment_expression "uStack_10d4 = uVar12 + uStack_10d4 + 5" identifier = (binary_expression "uVar12 + uStack_10d4 + 5" (binary_expression "uVar12 + uStack_10d4" identifier + identifier) + number_literal)) ;) (expression_statement "iVar6 = uVar12 - 1;" (assignment_expression "iVar6 = uVar12 - 1" identifier = (binary_expression "uVar12 - 1" identifier - number_literal)) ;) (if_statement "if (uVar12 == 0) goto LAB_00285914;" if (parenthesized_expression "(uVar12 == 0)" ( (binary_expression "uVar12 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00285914;" goto statement_identifier ;)) (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (do_statement "do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);" do (compound_statement "{\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                }" { (expression_statement "puVar21 = (undefined1 *)(iVar11 + iStack_10a8);" (assignment_expression "puVar21 = (undefined1 *)(iVar11 + iStack_10a8)" identifier = (cast_expression "(undefined1 *)(iVar11 + iStack_10a8)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar11 + iStack_10a8)" ( (binary_expression "iVar11 + iStack_10a8" identifier + identifier) )))) ;) (expression_statement "iStack_10a8 = iStack_10a8 + 1;" (assignment_expression "iStack_10a8 = iStack_10a8 + 1" identifier = (binary_expression "iStack_10a8 + 1" identifier + number_literal)) ;) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,*puVar21)" ( identifier , (pointer_expression "*puVar21" * identifier) ))) ;) (expression_statement "iVar6 = iVar6 + -1;" (assignment_expression "iVar6 = iVar6 + -1" identifier = (binary_expression "iVar6 + -1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar6 != -1)" ( (binary_expression "iVar6 != -1" identifier != number_literal) )) ;) (expression_statement "iVar8 = 2;" (assignment_expression "iVar8 = 2" identifier = number_literal) ;) }))) })) (expression_statement "iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);" (assignment_expression "iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11)" identifier = (call_expression "(**(code **)(puVar30 + 0x17575c))(iVar11)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(iVar11)" ( identifier )))) ;) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19)" identifier = (call_expression "(**(code **)(puVar30 + 0x17575c))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier )))) ;) (expression_statement "puVar21 = puVar4;" (assignment_expression "puVar21 = puVar4" identifier = identifier) ;) (if_statement "if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }" if (parenthesized_expression "(puStack_10ec != (undefined1 *)0x0)" ( (binary_expression "puStack_10ec != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }" { (expression_statement "puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);" (assignment_expression "puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec)" identifier = (cast_expression "(undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar30 + 0x17575c))(puStack_10ec)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(puStack_10ec)" ( identifier ))))) ;) })) }) while (parenthesized_expression "( true )" ( true )) ;)) })) (goto_statement "goto LAB_00287db0;" goto statement_identifier ;) })) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1)" identifier = (call_expression "(**(code **)(puVar30 + 0x175bf4))(0x14000,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(0x14000,1)" ( number_literal , number_literal )))) ;) (if_statement "if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (compound_statement "{\n        (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }" { (expression_statement "(**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);" (call_expression "(**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000)" (parenthesized_expression "(**(code **)(puVar30 + 0x175dbc))" ( (pointer_expression "**(code **)(puVar30 + 0x175dbc)" * (pointer_expression "*(code **)(puVar30 + 0x175dbc)" * (cast_expression "(code **)(puVar30 + 0x175dbc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175dbc)" ( (binary_expression "puVar30 + 0x175dbc" identifier + number_literal) ))))) )) (argument_list "(iVar19,0,0x14000)" ( identifier , number_literal , number_literal ))) ;) (do_statement "do {\n          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );" do (compound_statement "{\n          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        }" { (expression_statement "iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);" (assignment_expression "iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19)" identifier = (call_expression "(**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175494))" ( (pointer_expression "**(code **)(puVar30 + 0x175494)" * (pointer_expression "*(code **)(puVar30 + 0x175494)" * (cast_expression "(code **)(puVar30 + 0x175494)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175494)" ( (binary_expression "puVar30 + 0x175494" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc,0x14000,iVar19)" ( identifier , number_literal , identifier )))) ;) (if_statement "if (iVar13 == 0) goto LAB_00286038;" if (parenthesized_expression "(iVar13 == 0)" ( (binary_expression "iVar13 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00286038;" goto statement_identifier ;)) (expression_statement "iVar22 = 0;" (assignment_expression "iVar22 = 0" identifier = number_literal) ;) (if_statement "if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }" if (parenthesized_expression "(0 < iVar13)" ( (binary_expression "0 < iVar13" number_literal < identifier) )) (compound_statement "{\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }" { (do_statement "do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);" do (compound_statement "{\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            }" { (expression_statement "iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);" (assignment_expression "iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22)" identifier = (call_expression "(**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22)" (parenthesized_expression "(**(code **)(puVar30 + 0x17607c))" ( (pointer_expression "**(code **)(puVar30 + 0x17607c)" * (pointer_expression "*(code **)(puVar30 + 0x17607c)" * (cast_expression "(code **)(puVar30 + 0x17607c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17607c)" ( (binary_expression "puVar30 + 0x17607c" identifier + number_literal) ))))) )) (argument_list "(iVar3,iVar13 - iVar22,iVar19 + iVar22)" ( identifier , (binary_expression "iVar13 - iVar22" identifier - identifier) , (binary_expression "iVar19 + iVar22" identifier + identifier) )))) ;) (if_statement "if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }" if (parenthesized_expression "(iVar14 < 1)" ( (binary_expression "iVar14 < 1" identifier < number_literal) )) (compound_statement "{\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }" { (if_statement "if (iVar22 < iVar13) goto LAB_00286038;" if (parenthesized_expression "(iVar22 < iVar13)" ( (binary_expression "iVar22 < iVar13" identifier < identifier) )) (goto_statement "goto LAB_00286038;" goto statement_identifier ;)) (break_statement "break;" break ;) })) (expression_statement "iVar22 = iVar22 + iVar14;" (assignment_expression "iVar22 = iVar22 + iVar14" identifier = (binary_expression "iVar22 + iVar14" identifier + identifier)) ;) }) while (parenthesized_expression "(iVar22 < iVar13)" ( (binary_expression "iVar22 < iVar13" identifier < identifier) )) ;) })) }) while (parenthesized_expression "( true )" ( true )) ;) })) (expression_statement "uStack_10d4 = 1;" (assignment_expression "uStack_10d4 = 1" identifier = number_literal) ;) (goto_statement "goto LAB_00286050;" goto statement_identifier ;) })) (expression_statement "puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);" (assignment_expression "puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1)" identifier = (cast_expression "(undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar30 + 0x175bf4))(0x1000,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(0x1000,1)" ( number_literal , number_literal ))))) ;) (if_statement "if (puVar4 == (undefined1 *)0x0) {\nLAB_0028544c:\n      uStack_10d4 = 0xffffffff;\n    }\n    else {\n      uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n      iStack_10cc = 0x1000;\n      uStack_10d4 = 0;\n      uStack_10c8 = 0;\n      uStack_10e4 = 0;\n      cVar17 = '\0';\n      puStack_10dc = (undefined1 *)0x0;\n      iVar19 = 0;\n      iVar11 = 0;\n      iVar13 = *(int *)(puVar30 + 0x175020);\n      iVar22 = *(int *)(puVar30 + 0x1752b0);\n      iVar14 = *(int *)(puVar30 + 0x174fb8);\n      puVar21 = puVar4;\n      while( true ) {\n        while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar11 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar9 = *(int *)(puVar30 + 0x174fc8);\n        iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n        iVar8 = 0;\n        while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0) {\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }\n        iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n        iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n        puVar21 = puVar4;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }\n      }\nLAB_0028573c:\n      (**(code **)(puVar30 + 0x175450))(uVar15);\n      if (iVar11 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar30 + 0x17575c))(iVar11);\n      }\nLAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x17575c))(iVar19);\n      }\n      if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n      }\n      (**(code **)(puVar30 + 0x17575c))(puVar4);\n      if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }\nLAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }\n        goto LAB_00287858;\n      }\n      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n    }" if (parenthesized_expression "(puVar4 == (undefined1 *)0x0)" ( (binary_expression "puVar4 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_0028544c:\n      uStack_10d4 = 0xffffffff;\n    }" { (labeled_statement "LAB_0028544c:\n      uStack_10d4 = 0xffffffff;" statement_identifier : (expression_statement "uStack_10d4 = 0xffffffff;" (assignment_expression "uStack_10d4 = 0xffffffff" identifier = number_literal) ;)) }) (else_clause "else {\n      uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n      iStack_10cc = 0x1000;\n      uStack_10d4 = 0;\n      uStack_10c8 = 0;\n      uStack_10e4 = 0;\n      cVar17 = '\0';\n      puStack_10dc = (undefined1 *)0x0;\n      iVar19 = 0;\n      iVar11 = 0;\n      iVar13 = *(int *)(puVar30 + 0x175020);\n      iVar22 = *(int *)(puVar30 + 0x1752b0);\n      iVar14 = *(int *)(puVar30 + 0x174fb8);\n      puVar21 = puVar4;\n      while( true ) {\n        while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar11 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar9 = *(int *)(puVar30 + 0x174fc8);\n        iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n        iVar8 = 0;\n        while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0) {\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }\n        iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n        iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n        puVar21 = puVar4;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }\n      }\nLAB_0028573c:\n      (**(code **)(puVar30 + 0x175450))(uVar15);\n      if (iVar11 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar30 + 0x17575c))(iVar11);\n      }\nLAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x17575c))(iVar19);\n      }\n      if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n      }\n      (**(code **)(puVar30 + 0x17575c))(puVar4);\n      if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }\nLAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }\n        goto LAB_00287858;\n      }\n      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n    }" else (compound_statement "{\n      uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n      iStack_10cc = 0x1000;\n      uStack_10d4 = 0;\n      uStack_10c8 = 0;\n      uStack_10e4 = 0;\n      cVar17 = '\0';\n      puStack_10dc = (undefined1 *)0x0;\n      iVar19 = 0;\n      iVar11 = 0;\n      iVar13 = *(int *)(puVar30 + 0x175020);\n      iVar22 = *(int *)(puVar30 + 0x1752b0);\n      iVar14 = *(int *)(puVar30 + 0x174fb8);\n      puVar21 = puVar4;\n      while( true ) {\n        while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar11 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar9 = *(int *)(puVar30 + 0x174fc8);\n        iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n        iVar8 = 0;\n        while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0) {\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }\n        iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n        iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n        puVar21 = puVar4;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }\n      }\nLAB_0028573c:\n      (**(code **)(puVar30 + 0x175450))(uVar15);\n      if (iVar11 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar30 + 0x17575c))(iVar11);\n      }\nLAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x17575c))(iVar19);\n      }\n      if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n      }\n      (**(code **)(puVar30 + 0x17575c))(puVar4);\n      if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }\nLAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }\n        goto LAB_00287858;\n      }\n      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n    }" { (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175bdc))();" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175bdc))()" identifier = (call_expression "(**(code **)(puVar30 + 0x175bdc))()" (parenthesized_expression "(**(code **)(puVar30 + 0x175bdc))" ( (pointer_expression "**(code **)(puVar30 + 0x175bdc)" * (pointer_expression "*(code **)(puVar30 + 0x175bdc)" * (cast_expression "(code **)(puVar30 + 0x175bdc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bdc)" ( (binary_expression "puVar30 + 0x175bdc" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (expression_statement "iStack_10cc = 0x1000;" (assignment_expression "iStack_10cc = 0x1000" identifier = number_literal) ;) (expression_statement "uStack_10d4 = 0;" (assignment_expression "uStack_10d4 = 0" identifier = number_literal) ;) (expression_statement "uStack_10c8 = 0;" (assignment_expression "uStack_10c8 = 0" identifier = number_literal) ;) (expression_statement "uStack_10e4 = 0;" (assignment_expression "uStack_10e4 = 0" identifier = number_literal) ;) (expression_statement "cVar17 = '\0';" (assignment_expression "cVar17 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "puStack_10dc = (undefined1 *)0x0;" (assignment_expression "puStack_10dc = (undefined1 *)0x0" identifier = (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iVar19 = 0;" (assignment_expression "iVar19 = 0" identifier = number_literal) ;) (expression_statement "iVar11 = 0;" (assignment_expression "iVar11 = 0" identifier = number_literal) ;) (expression_statement "iVar13 = *(int *)(puVar30 + 0x175020);" (assignment_expression "iVar13 = *(int *)(puVar30 + 0x175020)" identifier = (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) ))))) ;) (expression_statement "iVar22 = *(int *)(puVar30 + 0x1752b0);" (assignment_expression "iVar22 = *(int *)(puVar30 + 0x1752b0)" identifier = (pointer_expression "*(int *)(puVar30 + 0x1752b0)" * (cast_expression "(int *)(puVar30 + 0x1752b0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x1752b0)" ( (binary_expression "puVar30 + 0x1752b0" identifier + number_literal) ))))) ;) (expression_statement "iVar14 = *(int *)(puVar30 + 0x174fb8);" (assignment_expression "iVar14 = *(int *)(puVar30 + 0x174fb8)" identifier = (pointer_expression "*(int *)(puVar30 + 0x174fb8)" * (cast_expression "(int *)(puVar30 + 0x174fb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb8)" ( (binary_expression "puVar30 + 0x174fb8" identifier + number_literal) ))))) ;) (expression_statement "puVar21 = puVar4;" (assignment_expression "puVar21 = puVar4" identifier = identifier) ;) (while_statement "while( true ) {\n        while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar11 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar9 = *(int *)(puVar30 + 0x174fc8);\n        iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n        iVar8 = 0;\n        while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0) {\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }\n        iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n        iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n        puVar21 = puVar4;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }\n      }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n        while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar11 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar9 = *(int *)(puVar30 + 0x174fc8);\n        iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n        iVar8 = 0;\n        while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0) {\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }\n        iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n        iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n        puVar21 = puVar4;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }\n      }" { (while_statement "while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }" while (parenthesized_expression "((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10)))" ( (parenthesized_expression "(iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))" ( (comma_expression "iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10)" (assignment_expression "iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" identifier = (call_expression "(**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ed8))" ( (pointer_expression "**(code **)(puVar30 + 0x175ed8)" * (pointer_expression "*(code **)(puVar30 + 0x175ed8)" * (cast_expression "(code **)(puVar30 + 0x175ed8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175ed8)" ( (binary_expression "puVar30 + 0x175ed8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier )))) , (binary_expression "iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10)" (binary_expression "iVar8 != -1" identifier != number_literal) && (parenthesized_expression "(iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10)" ( (comma_expression "iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10" (assignment_expression "iVar9 = (int)puVar21 - (int)puVar4" identifier = (binary_expression "(int)puVar21 - (int)puVar4" (cast_expression "(int)puVar21" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)puVar4" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar8 != 10" identifier != number_literal)) )))) )) )) (compound_statement "{\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }" { (if_statement "if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }" if (parenthesized_expression "(iStack_10cc <= iVar9 + 1)" ( (binary_expression "iStack_10cc <= iVar9 + 1" identifier <= (binary_expression "iVar9 + 1" identifier + number_literal)) )) (compound_statement "{\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }" { (expression_statement "iStack_10cc = iStack_10cc * 2;" (assignment_expression "iStack_10cc = iStack_10cc * 2" identifier = (binary_expression "iStack_10cc * 2" identifier * number_literal)) ;) (expression_statement "puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);" (assignment_expression "puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)" identifier = (cast_expression "(undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175b08))" ( (pointer_expression "**(code **)(puVar30 + 0x175b08)" * (pointer_expression "*(code **)(puVar30 + 0x175b08)" * (cast_expression "(code **)(puVar30 + 0x175b08)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175b08)" ( (binary_expression "puVar30 + 0x175b08" identifier + number_literal) ))))) )) (argument_list "(puVar4,iStack_10cc + 2,1)" ( identifier , (binary_expression "iStack_10cc + 2" identifier + number_literal) , number_literal ))))) ;) (if_statement "if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;" if (parenthesized_expression "(puVar4 == (undefined1 *)0x0)" ( (binary_expression "puVar4 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_0028573c;" goto statement_identifier ;)) (expression_statement "puVar21 = puVar4 + iVar9;" (assignment_expression "puVar21 = puVar4 + iVar9" identifier = (binary_expression "puVar4 + iVar9" identifier + identifier)) ;) })) (expression_statement "*puVar21 = (char)iVar8;" (assignment_expression "*puVar21 = (char)iVar8" (pointer_expression "*puVar21" * identifier) = (cast_expression "(char)iVar8" ( (type_descriptor "char" primitive_type) ) identifier)) ;) (expression_statement "puVar21 = puVar21 + 1;" (assignment_expression "puVar21 = puVar21 + 1" identifier = (binary_expression "puVar21 + 1" identifier + number_literal)) ;) })) (if_statement "if ((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;" if (parenthesized_expression "((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))" ( (binary_expression "(puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)" (parenthesized_expression "(puVar4 == (undefined1 *)0x0)" ( (binary_expression "puVar4 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)" ( (comma_expression "iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0" (assignment_expression "iStack_10cc = ((int)puVar21 - (int)puVar4) + 1" identifier = (binary_expression "((int)puVar21 - (int)puVar4) + 1" (parenthesized_expression "((int)puVar21 - (int)puVar4)" ( (binary_expression "(int)puVar21 - (int)puVar4" (cast_expression "(int)puVar21" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)puVar4" ( (type_descriptor "int" primitive_type) ) identifier)) )) + number_literal)) , (binary_expression "(int)puVar21 - (int)puVar4 == 0" (binary_expression "(int)puVar21 - (int)puVar4" (cast_expression "(int)puVar21" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)puVar4" ( (type_descriptor "int" primitive_type) ) identifier)) == number_literal)) ))) )) (break_statement "break;" break ;)) (expression_statement "*puVar21 = 0;" (assignment_expression "*puVar21 = 0" (pointer_expression "*puVar21" * identifier) = number_literal) ;) (expression_statement "uStack_10ac = 0;" (assignment_expression "uStack_10ac = 0" identifier = number_literal) ;) (expression_statement "iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);" (assignment_expression "iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1)" identifier = (call_expression "(**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(iStack_10cc,1)" ( identifier , number_literal )))) ;) (if_statement "if (iVar11 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }" if (parenthesized_expression "(iVar11 == 0)" ( (binary_expression "iVar11 == 0" identifier == number_literal) )) (compound_statement "{\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }" { (expression_statement "(**(code **)(puVar30 + 0x175450))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x175450))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x175450))" ( (pointer_expression "**(code **)(puVar30 + 0x175450)" * (pointer_expression "*(code **)(puVar30 + 0x175450)" * (cast_expression "(code **)(puVar30 + 0x175450)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175450)" ( (binary_expression "puVar30 + 0x175450" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (goto_statement "goto LAB_002879d4;" goto statement_identifier ;) })) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1)" identifier = (call_expression "(**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(iStack_10cc,1)" ( identifier , number_literal )))) ;) (if_statement "if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }" { (expression_statement "(**(code **)(puVar30 + 0x175450))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x175450))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x175450))" ( (pointer_expression "**(code **)(puVar30 + 0x175450)" * (pointer_expression "*(code **)(puVar30 + 0x175450)" * (cast_expression "(code **)(puVar30 + 0x175450)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175450)" ( (binary_expression "puVar30 + 0x175450" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "iVar19 = 0;" (assignment_expression "iVar19 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_002879c4;" goto statement_identifier ;) })) (expression_statement "iVar9 = *(int *)(puVar30 + 0x174fc8);" (assignment_expression "iVar9 = *(int *)(puVar30 + 0x174fc8)" identifier = (pointer_expression "*(int *)(puVar30 + 0x174fc8)" * (cast_expression "(int *)(puVar30 + 0x174fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fc8)" ( (binary_expression "puVar30 + 0x174fc8" identifier + number_literal) ))))) ;) (expression_statement "iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;" (assignment_expression "iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8" identifier = (binary_expression "*(int *)(puVar30 + 0x174fb8) + -0x2d8" (pointer_expression "*(int *)(puVar30 + 0x174fb8)" * (cast_expression "(int *)(puVar30 + 0x174fb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb8)" ( (binary_expression "puVar30 + 0x174fb8" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "iVar8 = 0;" (assignment_expression "iVar8 = 0" identifier = number_literal) ;) (while_statement "while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0) {\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }" while (parenthesized_expression "(iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0)" ( (comma_expression "iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0" (assignment_expression "iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af)" identifier = (call_expression "(**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af)" (parenthesized_expression "(**(code **)(puVar30 + 0x175720))" ( (pointer_expression "**(code **)(puVar30 + 0x175720)" * (pointer_expression "*(code **)(puVar30 + 0x175720)" * (cast_expression "(code **)(puVar30 + 0x175720)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175720)" ( (binary_expression "puVar30 + 0x175720" identifier + number_literal) ))))) )) (argument_list "(uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af)" ( identifier , number_literal , identifier , identifier , identifier , identifier , (binary_expression "iVar9 + 0x2c44" identifier + number_literal) , (binary_expression "iVar13 + 0x7178" identifier + number_literal) , number_literal , (pointer_expression "&uStack_10b0" & identifier) , (pointer_expression "&uStack_10ac" & identifier) , (pointer_expression "&uStack_10af" & identifier) )))) , (binary_expression "iVar6 == 0" identifier == number_literal)) )) (compound_statement "{\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }" { (if_statement "if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }" { (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (expression_statement "iVar7 = *(int *)(puVar30 + 0x174fc8);" (assignment_expression "iVar7 = *(int *)(puVar30 + 0x174fc8)" identifier = (pointer_expression "*(int *)(puVar30 + 0x174fc8)" * (cast_expression "(int *)(puVar30 + 0x174fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fc8)" ( (binary_expression "puVar30 + 0x174fc8" identifier + number_literal) ))))) ;) (expression_statement "iVar28 = *(int *)(puVar30 + 0x174fb0);" (assignment_expression "iVar28 = *(int *)(puVar30 + 0x174fb0)" identifier = (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) ))))) ;) (expression_statement "iVar6 = 0;" (assignment_expression "iVar6 = 0" identifier = number_literal) ;) (labeled_statement "LAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );" statement_identifier : (do_statement "do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );" do (compound_statement "{\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            }" { (expression_statement "iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);" (assignment_expression "iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad)" identifier = (call_expression "(**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad)" (parenthesized_expression "(**(code **)(puVar30 + 0x175720))" ( (pointer_expression "**(code **)(puVar30 + 0x175720)" * (pointer_expression "*(code **)(puVar30 + 0x175720)" * (cast_expression "(code **)(puVar30 + 0x175720)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175720)" ( (binary_expression "puVar30 + 0x175720" identifier + number_literal) ))))) )) (argument_list "(uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad)" ( identifier , number_literal , identifier , identifier , identifier , identifier , (binary_expression "iVar7 + 0xabc" identifier + number_literal) , identifier , number_literal , (pointer_expression "&cStack_10ae" & identifier) , (pointer_expression "&iStack_10a8" & identifier) , (pointer_expression "&uStack_10ad" & identifier) )))) ;) (if_statement "if (iVar5 != 0) goto LAB_002850f4;" if (parenthesized_expression "(iVar5 != 0)" ( (binary_expression "iVar5 != 0" identifier != number_literal) )) (goto_statement "goto LAB_002850f4;" goto statement_identifier ;)) (if_statement "if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }" if (parenthesized_expression "(iVar6 == 1)" ( (binary_expression "iVar6 == 1" identifier == number_literal) )) (compound_statement "{\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }" { (expression_statement "uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);" (assignment_expression "uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a28))(iVar19,0,10)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a28))" ( (pointer_expression "**(code **)(puVar30 + 0x175a28)" * (pointer_expression "*(code **)(puVar30 + 0x175a28)" * (cast_expression "(code **)(puVar30 + 0x175a28)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a28)" ( (binary_expression "puVar30 + 0x175a28" identifier + number_literal) ))))) )) (argument_list "(iVar19,0,10)" ( identifier , number_literal , number_literal )))) ;) }) (else_clause "else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }" else (if_statement "if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }" if (parenthesized_expression "(iVar6 == 2)" ( (binary_expression "iVar6 == 2" identifier == number_literal) )) (compound_statement "{\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }" { (expression_statement "iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);" (assignment_expression "iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a20))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a20))" ( (pointer_expression "**(code **)(puVar30 + 0x175a20)" * (pointer_expression "*(code **)(puVar30 + 0x175a20)" * (cast_expression "(code **)(puVar30 + 0x175a20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a20)" ( (binary_expression "puVar30 + 0x175a20" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier )))) ;) (expression_statement "puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);" (assignment_expression "puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)" identifier = (cast_expression "(undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(iVar5 + 0x1000,1)" ( (binary_expression "iVar5 + 0x1000" identifier + number_literal) , number_literal ))))) ;) (if_statement "if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }" if (parenthesized_expression "(puStack_10dc != (undefined1 *)0x0)" ( (binary_expression "puStack_10dc != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }" { (expression_statement "(**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);" (call_expression "(**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x17595c))" ( (pointer_expression "**(code **)(puVar30 + 0x17595c)" * (pointer_expression "*(code **)(puVar30 + 0x17595c)" * (cast_expression "(code **)(puVar30 + 0x17595c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17595c)" ( (binary_expression "puVar30 + 0x17595c" identifier + number_literal) ))))) )) (argument_list "(puStack_10dc,iVar19)" ( identifier , identifier ))) ;) (expression_statement "iVar6 = 3;" (assignment_expression "iVar6 = 3" identifier = number_literal) ;) (goto_statement "goto LAB_00284ff4;" goto statement_identifier ;) })) }) (else_clause "else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }" else (if_statement "if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }" if (parenthesized_expression "(iVar6 == 0)" ( (binary_expression "iVar6 == 0" identifier == number_literal) )) (compound_statement "{\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }" { (expression_statement "iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);" (assignment_expression "iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890)" identifier = (call_expression "(**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890)" (parenthesized_expression "(**(code **)(puVar30 + 0x1753e4))" ( (pointer_expression "**(code **)(puVar30 + 0x1753e4)" * (pointer_expression "*(code **)(puVar30 + 0x1753e4)" * (cast_expression "(code **)(puVar30 + 0x1753e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1753e4)" ( (binary_expression "puVar30 + 0x1753e4" identifier + number_literal) ))))) )) (argument_list "(iVar19,iVar28 + 0x7890)" ( identifier , (binary_expression "iVar28 + 0x7890" identifier + number_literal) )))) ;) (if_statement "if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }" if (parenthesized_expression "(iVar5 == 0)" ( (binary_expression "iVar5 == 0" identifier == number_literal) )) (compound_statement "{\n                  cVar17 = -1;\n                }" { (expression_statement "cVar17 = -1;" (assignment_expression "cVar17 = -1" identifier = number_literal) ;) }) (else_clause "else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }" else (compound_statement "{\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }" { (expression_statement "cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);" (assignment_expression "cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10)" identifier = (call_expression "(**(code **)(puVar30 + 0x175c34))(iVar19,0,10)" (parenthesized_expression "(**(code **)(puVar30 + 0x175c34))" ( (pointer_expression "**(code **)(puVar30 + 0x175c34)" * (pointer_expression "*(code **)(puVar30 + 0x175c34)" * (cast_expression "(code **)(puVar30 + 0x175c34)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175c34)" ( (binary_expression "puVar30 + 0x175c34" identifier + number_literal) ))))) )) (argument_list "(iVar19,0,10)" ( identifier , number_literal , number_literal )))) ;) }))) })))))) (expression_statement "iVar6 = iVar6 + 1;" (assignment_expression "iVar6 = iVar6 + 1" identifier = (binary_expression "iVar6 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "( true )" ( true )) ;)) })) (if_statement "if (iVar8 != 1) goto LAB_002850f4;" if (parenthesized_expression "(iVar8 != 1)" ( (binary_expression "iVar8 != 1" identifier != number_literal) )) (goto_statement "goto LAB_002850f4;" goto statement_identifier ;)) (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (expression_statement "uVar12 = (**(code **)(puVar30 + 0x175a20))();" (assignment_expression "uVar12 = (**(code **)(puVar30 + 0x175a20))()" identifier = (call_expression "(**(code **)(puVar30 + 0x175a20))()" (parenthesized_expression "(**(code **)(puVar30 + 0x175a20))" ( (pointer_expression "**(code **)(puVar30 + 0x175a20)" * (pointer_expression "*(code **)(puVar30 + 0x175a20)" * (cast_expression "(code **)(puVar30 + 0x175a20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a20)" ( (binary_expression "puVar30 + 0x175a20" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (while_statement "while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }" while (parenthesized_expression "(iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0)" ( (comma_expression "iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0" (assignment_expression "iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" identifier = (call_expression "(**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" (parenthesized_expression "(**(code **)(puVar30 + 0x175720))" ( (pointer_expression "**(code **)(puVar30 + 0x175720)" * (pointer_expression "*(code **)(puVar30 + 0x175720)" * (cast_expression "(code **)(puVar30 + 0x175720)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175720)" ( (binary_expression "puVar30 + 0x175720" identifier + number_literal) ))))) )) (argument_list "(uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" ( identifier , number_literal , identifier , identifier , identifier , identifier , (binary_expression "iVar14 + -0x3bc" identifier + number_literal) , identifier , number_literal , (pointer_expression "&cStack_10ae" & identifier) , (pointer_expression "&iStack_10a8" & identifier) , (pointer_expression "&uStack_10ad" & identifier) )))) , (binary_expression "iVar6 == 0" identifier == number_literal)) )) (compound_statement "{\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }" { (if_statement "if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }" if (parenthesized_expression "((cStack_10ae != '\0') && (0 < iStack_10a8))" ( (binary_expression "(cStack_10ae != '\0') && (0 < iStack_10a8)" (parenthesized_expression "(cStack_10ae != '\0')" ( (binary_expression "cStack_10ae != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(0 < iStack_10a8)" ( (binary_expression "0 < iStack_10a8" number_literal < identifier) ))) )) (compound_statement "{\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }" { (expression_statement "iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);" (assignment_expression "iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1)" identifier = (call_expression "(*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1)" (parenthesized_expression "(*(code *)(iVar22 + 0x458c))" ( (pointer_expression "*(code *)(iVar22 + 0x458c)" * (cast_expression "(code *)(iVar22 + 0x458c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar22 + 0x458c)" ( (binary_expression "iVar22 + 0x458c" identifier + number_literal) )))) )) (argument_list "(iVar11 + iStack_10a8 + -1)" ( (binary_expression "iVar11 + iStack_10a8 + -1" (binary_expression "iVar11 + iStack_10a8" identifier + identifier) + number_literal) )))) ;) (if_statement "if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }" if (parenthesized_expression "((int)uVar12 < iVar6)" ( (binary_expression "(int)uVar12 < iVar6" (cast_expression "(int)uVar12" ( (type_descriptor "int" primitive_type) ) identifier) < identifier) )) (compound_statement "{\n                uVar12 = 0;\n              }" { (expression_statement "uVar12 = 0;" (assignment_expression "uVar12 = 0" identifier = number_literal) ;) }) (else_clause "else {\n                uVar12 = uVar12 - iVar6;\n              }" else (compound_statement "{\n                uVar12 = uVar12 - iVar6;\n              }" { (expression_statement "uVar12 = uVar12 - iVar6;" (assignment_expression "uVar12 = uVar12 - iVar6" identifier = (binary_expression "uVar12 - iVar6" identifier - identifier)) ;) }))) })) })) (if_statement "if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }" if (parenthesized_expression "(cVar17 == -1)" ( (binary_expression "cVar17 == -1" identifier == number_literal) )) (compound_statement "{\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }" { (if_statement "if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }" if (parenthesized_expression "(0 < (int)uStack_10c8)" ( (binary_expression "0 < (int)uStack_10c8" number_literal < (cast_expression "(int)uStack_10c8" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }" { (expression_statement "iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);" (assignment_expression "iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a04))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a04))" ( (pointer_expression "**(code **)(puVar30 + 0x175a04)" * (pointer_expression "*(code **)(puVar30 + 0x175a04)" * (cast_expression "(code **)(puVar30 + 0x175a04)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a04)" ( (binary_expression "puVar30 + 0x175a04" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }" if (parenthesized_expression "(iVar6 < 0)" ( (binary_expression "iVar6 < 0" identifier < number_literal) )) (compound_statement "{\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }" { (expression_statement "(**(code **)(puVar30 + 0x17575c))(puVar4);" (call_expression "(**(code **)(puVar30 + 0x17575c))(puVar4)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(puVar4)" ( identifier ))) ;) (goto_statement "goto LAB_0028544c;" goto statement_identifier ;) })) (expression_statement "iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);" (assignment_expression "iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a10))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a10))" ( (pointer_expression "**(code **)(puVar30 + 0x175a10)" * (pointer_expression "*(code **)(puVar30 + 0x175a10)" * (cast_expression "(code **)(puVar30 + 0x175a10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a10)" ( (binary_expression "puVar30 + 0x175a10" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }" if (parenthesized_expression "(iVar6 < 0)" ( (binary_expression "iVar6 < 0" identifier < number_literal) )) (compound_statement "{\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }" { (expression_statement "(**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);" (call_expression "(**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(puVar4,uStack_10d4 - uStack_10c8)" ( identifier , (binary_expression "uStack_10d4 - uStack_10c8" identifier - identifier) ))) ;) (goto_statement "goto LAB_0028544c;" goto statement_identifier ;) })) (expression_statement "(**(code **)(puVar30 + 0x1759bc))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x1759bc))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759bc))" ( (pointer_expression "**(code **)(puVar30 + 0x1759bc)" * (pointer_expression "*(code **)(puVar30 + 0x1759bc)" * (cast_expression "(code **)(puVar30 + 0x1759bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1759bc)" ( (binary_expression "puVar30 + 0x1759bc" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);" (assignment_expression "iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a10))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a10))" ( (pointer_expression "**(code **)(puVar30 + 0x175a10)" * (pointer_expression "*(code **)(puVar30 + 0x175a10)" * (cast_expression "(code **)(puVar30 + 0x175a10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a10)" ( (binary_expression "puVar30 + 0x175a10" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }" if (parenthesized_expression "(iVar6 < 0)" ( (binary_expression "iVar6 < 0" identifier < number_literal) )) (compound_statement "{\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }" { (expression_statement "(**(code **)(puVar30 + 0x17575c))(puVar4);" (call_expression "(**(code **)(puVar30 + 0x17575c))(puVar4)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(puVar4)" ( identifier ))) ;) (goto_statement "goto LAB_0028544c;" goto statement_identifier ;) })) (expression_statement "uStack_10c8 = 0;" (assignment_expression "uStack_10c8 = 0" identifier = number_literal) ;) })) (if_statement "if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }" if (parenthesized_expression "((uStack_10d4 & 1) != 0)" ( (binary_expression "(uStack_10d4 & 1) != 0" (parenthesized_expression "(uStack_10d4 & 1)" ( (binary_expression "uStack_10d4 & 1" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }" { (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0)" ( identifier , number_literal ))) ;) (expression_statement "uStack_10d4 = uStack_10d4 + 1;" (assignment_expression "uStack_10d4 = uStack_10d4 + 1" identifier = (binary_expression "uStack_10d4 + 1" identifier + number_literal)) ;) })) (expression_statement "(**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);" (call_expression "(**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890)" (parenthesized_expression "(**(code **)(puVar30 + 0x175c90))" ( (pointer_expression "**(code **)(puVar30 + 0x175c90)" * (pointer_expression "*(code **)(puVar30 + 0x175c90)" * (cast_expression "(code **)(puVar30 + 0x175c90)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175c90)" ( (binary_expression "puVar30 + 0x175c90" identifier + number_literal) ))))) )) (argument_list "(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x7890" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);" (call_expression "(**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff)" (parenthesized_expression "(**(code **)(puVar30 + 0x175970))" ( (pointer_expression "**(code **)(puVar30 + 0x175970)" * (pointer_expression "*(code **)(puVar30 + 0x175970)" * (cast_expression "(code **)(puVar30 + 0x175970)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175970)" ( (binary_expression "puVar30 + 0x175970" identifier + number_literal) ))))) )) (argument_list "(iVar3,uStack_10e4 & 0xffff)" ( identifier , (binary_expression "uStack_10e4 & 0xffff" identifier & number_literal) ))) ;) (if_statement "if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }" if (parenthesized_expression "(puStack_10dc == (undefined1 *)0x0)" ( (binary_expression "puStack_10dc == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }" { (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0)" ( identifier , number_literal ))) ;) (expression_statement "iVar6 = uStack_10d4 + 7;" (assignment_expression "iVar6 = uStack_10d4 + 7" identifier = (binary_expression "uStack_10d4 + 7" identifier + number_literal)) ;) (labeled_statement "LAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);" statement_identifier : (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0)" ( identifier , number_literal ))) ;)) (expression_statement "iVar6 = iVar6 + 1;" (assignment_expression "iVar6 = iVar6 + 1" identifier = (binary_expression "iVar6 + 1" identifier + number_literal)) ;) }) (else_clause "else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }" else (compound_statement "{\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }" { (expression_statement "bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);" (assignment_expression "bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a20))(puStack_10dc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a20))" ( (pointer_expression "**(code **)(puVar30 + 0x175a20)" * (pointer_expression "*(code **)(puVar30 + 0x175a20)" * (cast_expression "(code **)(puVar30 + 0x175a20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a20)" ( (binary_expression "puVar30 + 0x175a20" identifier + number_literal) ))))) )) (argument_list "(puStack_10dc)" ( identifier )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,bVar18)" ( identifier , identifier ))) ;) (expression_statement "uVar29 = (uint)bVar18;" (assignment_expression "uVar29 = (uint)bVar18" identifier = (cast_expression "(uint)bVar18" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }" if (parenthesized_expression "(uVar29 != 0)" ( (binary_expression "uVar29 != 0" identifier != number_literal) )) (compound_statement "{\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }" { (expression_statement "puVar21 = puStack_10dc;" (assignment_expression "puVar21 = puStack_10dc" identifier = identifier) ;) (do_statement "do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);" do (compound_statement "{\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                }" { (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,*puVar21)" ( identifier , (pointer_expression "*puVar21" * identifier) ))) ;) (expression_statement "puVar21 = puVar21 + 1;" (assignment_expression "puVar21 = puVar21 + 1" identifier = (binary_expression "puVar21 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(puVar21 != puStack_10dc + uVar29)" ( (binary_expression "puVar21 != puStack_10dc + uVar29" identifier != (binary_expression "puStack_10dc + uVar29" identifier + identifier)) )) ;) })) (expression_statement "iVar6 = uStack_10d4 + 7 + uVar29;" (assignment_expression "iVar6 = uStack_10d4 + 7 + uVar29" identifier = (binary_expression "uStack_10d4 + 7 + uVar29" (binary_expression "uStack_10d4 + 7" identifier + number_literal) + identifier)) ;) (if_statement "if ((bVar18 & 1) == 0) goto LAB_00287988;" if (parenthesized_expression "((bVar18 & 1) == 0)" ( (binary_expression "(bVar18 & 1) == 0" (parenthesized_expression "(bVar18 & 1)" ( (binary_expression "bVar18 & 1" identifier & number_literal) )) == number_literal) )) (goto_statement "goto LAB_00287988;" goto statement_identifier ;)) }))) (if_statement "if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }" if (parenthesized_expression "(uStack_10e4 == 0x404)" ( (binary_expression "uStack_10e4 == 0x404" identifier == number_literal) )) (compound_statement "{\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }" { (expression_statement "iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);" (assignment_expression "iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a04))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a04))" ( (pointer_expression "**(code **)(puVar30 + 0x175a04)" * (pointer_expression "*(code **)(puVar30 + 0x175a04)" * (cast_expression "(code **)(puVar30 + 0x175a04)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a04)" ( (binary_expression "puVar30 + 0x175a04" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if (iVar7 < 0) goto LAB_0028544c;" if (parenthesized_expression "(iVar7 < 0)" ( (binary_expression "iVar7 < 0" identifier < number_literal) )) (goto_statement "goto LAB_0028544c;" goto statement_identifier ;)) (expression_statement "(**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);" (call_expression "(**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759bc))" ( (pointer_expression "**(code **)(puVar30 + 0x1759bc)" * (pointer_expression "*(code **)(puVar30 + 0x1759bc)" * (cast_expression "(code **)(puVar30 + 0x1759bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1759bc)" ( (binary_expression "puVar30 + 0x1759bc" identifier + number_literal) ))))) )) (argument_list "(iVar3,0xffffffff)" ( identifier , number_literal ))) ;) (expression_statement "uStack_10d4 = iVar6 + 4;" (assignment_expression "uStack_10d4 = iVar6 + 4" identifier = (binary_expression "iVar6 + 4" identifier + number_literal)) ;) (expression_statement "uStack_10c8 = uStack_10d4;" (assignment_expression "uStack_10c8 = uStack_10d4" identifier = identifier) ;) }) (else_clause "else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }" else (compound_statement "{\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }" { (expression_statement "(**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);" (call_expression "(**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759bc))" ( (pointer_expression "**(code **)(puVar30 + 0x1759bc)" * (pointer_expression "*(code **)(puVar30 + 0x1759bc)" * (cast_expression "(code **)(puVar30 + 0x1759bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1759bc)" ( (binary_expression "puVar30 + 0x1759bc" identifier + number_literal) ))))) )) (argument_list "(iVar3,uVar12)" ( identifier , identifier ))) ;) (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (expression_statement "uStack_10d4 = uVar12 + iVar6 + 4;" (assignment_expression "uStack_10d4 = uVar12 + iVar6 + 4" identifier = (binary_expression "uVar12 + iVar6 + 4" (binary_expression "uVar12 + iVar6" identifier + identifier) + number_literal)) ;) (expression_statement "iVar6 = uVar12 - 1;" (assignment_expression "iVar6 = uVar12 - 1" identifier = (binary_expression "uVar12 - 1" identifier - number_literal)) ;) (if_statement "if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }" if (parenthesized_expression "(0 < (int)uVar12)" ( (binary_expression "0 < (int)uVar12" number_literal < (cast_expression "(int)uVar12" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }" { (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (do_statement "do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);" do (compound_statement "{\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                }" { (expression_statement "puVar21 = (undefined1 *)(iVar11 + iStack_10a8);" (assignment_expression "puVar21 = (undefined1 *)(iVar11 + iStack_10a8)" identifier = (cast_expression "(undefined1 *)(iVar11 + iStack_10a8)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar11 + iStack_10a8)" ( (binary_expression "iVar11 + iStack_10a8" identifier + identifier) )))) ;) (expression_statement "iStack_10a8 = iStack_10a8 + 1;" (assignment_expression "iStack_10a8 = iStack_10a8 + 1" identifier = (binary_expression "iStack_10a8 + 1" identifier + number_literal)) ;) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,*puVar21)" ( identifier , (pointer_expression "*puVar21" * identifier) ))) ;) (expression_statement "iVar6 = iVar6 + -1;" (assignment_expression "iVar6 = iVar6 + -1" identifier = (binary_expression "iVar6 + -1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar6 != -1)" ( (binary_expression "iVar6 != -1" identifier != number_literal) )) ;) })) (if_statement "if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }" if (parenthesized_expression "((uStack_10d4 & 1) != 0)" ( (binary_expression "(uStack_10d4 & 1) != 0" (parenthesized_expression "(uStack_10d4 & 1)" ( (binary_expression "uStack_10d4 & 1" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }" { (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0)" ( identifier , number_literal ))) ;) (expression_statement "uStack_10d4 = uStack_10d4 + 1;" (assignment_expression "uStack_10d4 = uStack_10d4 + 1" identifier = (binary_expression "uStack_10d4 + 1" identifier + number_literal)) ;) })) }))) (labeled_statement "LAB_002850f4:\n            iVar8 = iVar8 + 1;" statement_identifier : (expression_statement "iVar8 = iVar8 + 1;" (assignment_expression "iVar8 = iVar8 + 1" identifier = (binary_expression "iVar8 + 1" identifier + number_literal)) ;)) }) (else_clause "else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }" else (compound_statement "{\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }" { (if_statement "if (0x7fff < (int)uVar12) goto LAB_002850f4;" if (parenthesized_expression "(0x7fff < (int)uVar12)" ( (binary_expression "0x7fff < (int)uVar12" number_literal < (cast_expression "(int)uVar12" ( (type_descriptor "int" primitive_type) ) identifier)) )) (goto_statement "goto LAB_002850f4;" goto statement_identifier ;)) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0x1c)" ( identifier , number_literal ))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,cVar17)" ( identifier , identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,uStack_10e4 & 0xff)" ( identifier , (binary_expression "uStack_10e4 & 0xff" identifier & number_literal) ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);" (call_expression "(**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff)" (parenthesized_expression "(**(code **)(puVar30 + 0x175970))" ( (pointer_expression "**(code **)(puVar30 + 0x175970)" * (pointer_expression "*(code **)(puVar30 + 0x175970)" * (cast_expression "(code **)(puVar30 + 0x175970)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175970)" ( (binary_expression "puVar30 + 0x175970" identifier + number_literal) ))))) )) (argument_list "(iVar3,uVar12 & 0xffff)" ( identifier , (binary_expression "uVar12 & 0xffff" identifier & number_literal) ))) ;) (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (expression_statement "uStack_10d4 = uVar12 + uStack_10d4 + 5;" (assignment_expression "uStack_10d4 = uVar12 + uStack_10d4 + 5" identifier = (binary_expression "uVar12 + uStack_10d4 + 5" (binary_expression "uVar12 + uStack_10d4" identifier + identifier) + number_literal)) ;) (expression_statement "iVar6 = uVar12 - 1;" (assignment_expression "iVar6 = uVar12 - 1" identifier = (binary_expression "uVar12 - 1" identifier - number_literal)) ;) (if_statement "if ((int)uVar12 < 1) goto LAB_002850f4;" if (parenthesized_expression "((int)uVar12 < 1)" ( (binary_expression "(int)uVar12 < 1" (cast_expression "(int)uVar12" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (goto_statement "goto LAB_002850f4;" goto statement_identifier ;)) (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" identifier = number_literal) ;) (do_statement "do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);" do (compound_statement "{\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            }" { (expression_statement "puVar21 = (undefined1 *)(iVar11 + iStack_10a8);" (assignment_expression "puVar21 = (undefined1 *)(iVar11 + iStack_10a8)" identifier = (cast_expression "(undefined1 *)(iVar11 + iStack_10a8)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar11 + iStack_10a8)" ( (binary_expression "iVar11 + iStack_10a8" identifier + identifier) )))) ;) (expression_statement "iStack_10a8 = iStack_10a8 + 1;" (assignment_expression "iStack_10a8 = iStack_10a8 + 1" identifier = (binary_expression "iStack_10a8 + 1" identifier + number_literal)) ;) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,*puVar21)" ( identifier , (pointer_expression "*puVar21" * identifier) ))) ;) (expression_statement "iVar6 = iVar6 + -1;" (assignment_expression "iVar6 = iVar6 + -1" identifier = (binary_expression "iVar6 + -1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar6 != -1)" ( (binary_expression "iVar6 != -1" identifier != number_literal) )) ;) (expression_statement "iVar8 = 2;" (assignment_expression "iVar8 = 2" identifier = number_literal) ;) }))) })) (expression_statement "iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);" (assignment_expression "iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11)" identifier = (call_expression "(**(code **)(puVar30 + 0x17575c))(iVar11)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(iVar11)" ( identifier )))) ;) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19)" identifier = (call_expression "(**(code **)(puVar30 + 0x17575c))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier )))) ;) (expression_statement "puVar21 = puVar4;" (assignment_expression "puVar21 = puVar4" identifier = identifier) ;) (if_statement "if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }" if (parenthesized_expression "(puStack_10dc != (undefined1 *)0x0)" ( (binary_expression "puStack_10dc != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }" { (expression_statement "puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);" (assignment_expression "puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc)" identifier = (cast_expression "(undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar30 + 0x17575c))(puStack_10dc)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(puStack_10dc)" ( identifier ))))) ;) })) })) (labeled_statement "LAB_0028573c:\n      (**(code **)(puVar30 + 0x175450))(uVar15);" statement_identifier : (expression_statement "(**(code **)(puVar30 + 0x175450))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x175450))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x175450))" ( (pointer_expression "**(code **)(puVar30 + 0x175450)" * (pointer_expression "*(code **)(puVar30 + 0x175450)" * (cast_expression "(code **)(puVar30 + 0x175450)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175450)" ( (binary_expression "puVar30 + 0x175450" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;)) (if_statement "if (iVar11 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar30 + 0x17575c))(iVar11);\n      }" if (parenthesized_expression "(iVar11 != 0)" ( (binary_expression "iVar11 != 0" identifier != number_literal) )) (compound_statement "{\nLAB_002879c4:\n        (**(code **)(puVar30 + 0x17575c))(iVar11);\n      }" { (labeled_statement "LAB_002879c4:\n        (**(code **)(puVar30 + 0x17575c))(iVar11);" statement_identifier : (expression_statement "(**(code **)(puVar30 + 0x17575c))(iVar11);" (call_expression "(**(code **)(puVar30 + 0x17575c))(iVar11)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(iVar11)" ( identifier ))) ;)) })) (labeled_statement "LAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x17575c))(iVar19);\n      }" statement_identifier : (if_statement "if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x17575c))(iVar19);\n      }" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (compound_statement "{\n        (**(code **)(puVar30 + 0x17575c))(iVar19);\n      }" { (expression_statement "(**(code **)(puVar30 + 0x17575c))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x17575c))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;) }))) (if_statement "if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n      }" if (parenthesized_expression "(puStack_10dc != (undefined1 *)0x0)" ( (binary_expression "puStack_10dc != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        (**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n      }" { (expression_statement "(**(code **)(puVar30 + 0x17575c))(puStack_10dc);" (call_expression "(**(code **)(puVar30 + 0x17575c))(puStack_10dc)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(puStack_10dc)" ( identifier ))) ;) })) (expression_statement "(**(code **)(puVar30 + 0x17575c))(puVar4);" (call_expression "(**(code **)(puVar30 + 0x17575c))(puVar4)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(puVar4)" ( identifier ))) ;) (if_statement "if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }" if (parenthesized_expression "(0 < (int)uStack_10c8)" ( (binary_expression "0 < (int)uStack_10c8" number_literal < (cast_expression "(int)uStack_10c8" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n        iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }" { (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a04))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a04))" ( (pointer_expression "**(code **)(puVar30 + 0x175a04)" * (pointer_expression "*(code **)(puVar30 + 0x175a04)" * (cast_expression "(code **)(puVar30 + 0x175a04)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a04)" ( (binary_expression "puVar30 + 0x175a04" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }" if (parenthesized_expression "((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19))" ( (binary_expression "(-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)" (parenthesized_expression "(-1 < iVar19)" ( (binary_expression "-1 < iVar19" number_literal < identifier) )) && (parenthesized_expression "(iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)" ( (comma_expression "iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a10))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a10))" ( (pointer_expression "**(code **)(puVar30 + 0x175a10)" * (pointer_expression "*(code **)(puVar30 + 0x175a10)" * (cast_expression "(code **)(puVar30 + 0x175a10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a10)" ( (binary_expression "puVar30 + 0x175a10" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) , (binary_expression "-1 < iVar19" number_literal < identifier)) ))) )) (compound_statement "{\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }" { (expression_statement "(**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);" (call_expression "(**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759bc))" ( (pointer_expression "**(code **)(puVar30 + 0x1759bc)" * (pointer_expression "*(code **)(puVar30 + 0x1759bc)" * (cast_expression "(code **)(puVar30 + 0x1759bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1759bc)" ( (binary_expression "puVar30 + 0x1759bc" identifier + number_literal) ))))) )) (argument_list "(iVar3,uStack_10d4 - uStack_10c8)" ( identifier , (binary_expression "uStack_10d4 - uStack_10c8" identifier - identifier) ))) ;) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a10))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a10))" ( (pointer_expression "**(code **)(puVar30 + 0x175a10)" * (pointer_expression "*(code **)(puVar30 + 0x175a10)" * (cast_expression "(code **)(puVar30 + 0x175a10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a10)" ( (binary_expression "puVar30 + 0x175a10" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if (-1 < iVar19) goto LAB_00287ab4;" if (parenthesized_expression "(-1 < iVar19)" ( (binary_expression "-1 < iVar19" number_literal < identifier) )) (goto_statement "goto LAB_00287ab4;" goto statement_identifier ;)) })) (goto_statement "goto LAB_0028544c;" goto statement_identifier ;) })) (labeled_statement "LAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }\n        goto LAB_00287858;\n      }" statement_identifier : (if_statement "if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }\n        goto LAB_00287858;\n      }" if (parenthesized_expression "(uStack_10d4 == 0)" ( (binary_expression "uStack_10d4 == 0" identifier == number_literal) )) (compound_statement "{\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }\n        goto LAB_00287858;\n      }" { (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb4) + 0x1854" (pointer_expression "*(int *)(puVar30 + 0x174fb4)" * (cast_expression "(int *)(puVar30 + 0x174fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb4)" ( (binary_expression "puVar30 + 0x174fb4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) }))) (if_statement "if ((uStack_10d4 & 1) == 0) goto LAB_00286050;" if (parenthesized_expression "((uStack_10d4 & 1) == 0)" ( (binary_expression "(uStack_10d4 & 1) == 0" (parenthesized_expression "(uStack_10d4 & 1)" ( (binary_expression "uStack_10d4 & 1" identifier & number_literal) )) == number_literal) )) (goto_statement "goto LAB_00286050;" goto statement_identifier ;)) }))) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0)" ( identifier , number_literal ))) ;) (goto_statement "goto LAB_00286050;" goto statement_identifier ;) })) (expression_statement "uStack_10d4 = 1;" (assignment_expression "uStack_10d4 = 1" identifier = number_literal) ;) (goto_statement "goto LAB_00284a7c;" goto statement_identifier ;) (labeled_statement "LAB_00286038:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);" statement_identifier : (expression_statement "(**(code **)(puVar30 + 0x1756a8))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;)) (expression_statement "uStack_10d4 = 1;" (assignment_expression "uStack_10d4 = 1" identifier = number_literal) ;) (goto_statement "goto LAB_00286050;" goto statement_identifier ;) (labeled_statement "LAB_00285f24:\n  (**(code **)(puVar30 + 0x175450))(uVar15);" statement_identifier : (expression_statement "(**(code **)(puVar30 + 0x175450))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x175450))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x175450))" ( (pointer_expression "**(code **)(puVar30 + 0x175450)" * (pointer_expression "*(code **)(puVar30 + 0x175450)" * (cast_expression "(code **)(puVar30 + 0x175450)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175450)" ( (binary_expression "puVar30 + 0x175450" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;)) (if_statement "if (iVar11 != 0) {\nLAB_00287be8:\n    (**(code **)(puVar30 + 0x17575c))(iVar11);\n  }" if (parenthesized_expression "(iVar11 != 0)" ( (binary_expression "iVar11 != 0" identifier != number_literal) )) (compound_statement "{\nLAB_00287be8:\n    (**(code **)(puVar30 + 0x17575c))(iVar11);\n  }" { (labeled_statement "LAB_00287be8:\n    (**(code **)(puVar30 + 0x17575c))(iVar11);" statement_identifier : (expression_statement "(**(code **)(puVar30 + 0x17575c))(iVar11);" (call_expression "(**(code **)(puVar30 + 0x17575c))(iVar11)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(iVar11)" ( identifier ))) ;)) })) (labeled_statement "LAB_00287bf8:\n  if (iVar19 != 0) {\n    (**(code **)(puVar30 + 0x17575c))(iVar19);\n  }" statement_identifier : (if_statement "if (iVar19 != 0) {\n    (**(code **)(puVar30 + 0x17575c))(iVar19);\n  }" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (compound_statement "{\n    (**(code **)(puVar30 + 0x17575c))(iVar19);\n  }" { (expression_statement "(**(code **)(puVar30 + 0x17575c))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x17575c))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;) }))) (if_statement "if (puStack_10ec != (undefined1 *)0x0) {\n    (**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n  }" if (parenthesized_expression "(puStack_10ec != (undefined1 *)0x0)" ( (binary_expression "puStack_10ec != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    (**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n  }" { (expression_statement "(**(code **)(puVar30 + 0x17575c))(puStack_10ec);" (call_expression "(**(code **)(puVar30 + 0x17575c))(puStack_10ec)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(puStack_10ec)" ( identifier ))) ;) })) (expression_statement "(**(code **)(puVar30 + 0x17575c))(puVar4);" (call_expression "(**(code **)(puVar30 + 0x17575c))(puVar4)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" ( (pointer_expression "**(code **)(puVar30 + 0x17575c)" * (pointer_expression "*(code **)(puVar30 + 0x17575c)" * (cast_expression "(code **)(puVar30 + 0x17575c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17575c)" ( (binary_expression "puVar30 + 0x17575c" identifier + number_literal) ))))) )) (argument_list "(puVar4)" ( identifier ))) ;) (if_statement "if ((int)uStack_10c8 < 1) {\nLAB_00287cd8:\n    if (uStack_10d4 == 0) {\n      uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n      (**(code **)(puVar30 + 0x1756a8))(uVar15);\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,\n                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n  }\n  else {\n    iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n    if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n      (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n      iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n      if (-1 < iVar19) goto LAB_00287cd8;\n    }\nLAB_00287db0:\n    uStack_10d4 = 0xffffffff;\n  }" if (parenthesized_expression "((int)uStack_10c8 < 1)" ( (binary_expression "(int)uStack_10c8 < 1" (cast_expression "(int)uStack_10c8" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\nLAB_00287cd8:\n    if (uStack_10d4 == 0) {\n      uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n      (**(code **)(puVar30 + 0x1756a8))(uVar15);\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,\n                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n  }" { (labeled_statement "LAB_00287cd8:\n    if (uStack_10d4 == 0) {\n      uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n      (**(code **)(puVar30 + 0x1756a8))(uVar15);\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,\n                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }" statement_identifier : (if_statement "if (uStack_10d4 == 0) {\n      uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n      (**(code **)(puVar30 + 0x1756a8))(uVar15);\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,\n                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }" if (parenthesized_expression "(uStack_10d4 == 0)" ( (binary_expression "uStack_10d4 == 0" identifier == number_literal) )) (compound_statement "{\n      uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n      (**(code **)(puVar30 + 0x1756a8))(uVar15);\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,\n                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }" { (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,\n                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,\n                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,\n                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb4) + 0x1854" (pointer_expression "*(int *)(puVar30 + 0x174fb4)" * (cast_expression "(int *)(puVar30 + 0x174fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb4)" ( (binary_expression "puVar30 + 0x174fb4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) }))) (if_statement "if ((uStack_10d4 & 1) == 0) goto LAB_00286050;" if (parenthesized_expression "((uStack_10d4 & 1) == 0)" ( (binary_expression "(uStack_10d4 & 1) == 0" (parenthesized_expression "(uStack_10d4 & 1)" ( (binary_expression "uStack_10d4 & 1" identifier & number_literal) )) == number_literal) )) (goto_statement "goto LAB_00286050;" goto statement_identifier ;)) }) (else_clause "else {\n    iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n    if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n      (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n      iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n      if (-1 < iVar19) goto LAB_00287cd8;\n    }\nLAB_00287db0:\n    uStack_10d4 = 0xffffffff;\n  }" else (compound_statement "{\n    iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n    if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n      (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n      iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n      if (-1 < iVar19) goto LAB_00287cd8;\n    }\nLAB_00287db0:\n    uStack_10d4 = 0xffffffff;\n  }" { (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a04))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a04))" ( (pointer_expression "**(code **)(puVar30 + 0x175a04)" * (pointer_expression "*(code **)(puVar30 + 0x175a04)" * (cast_expression "(code **)(puVar30 + 0x175a04)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a04)" ( (binary_expression "puVar30 + 0x175a04" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n      (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n      iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n      if (-1 < iVar19) goto LAB_00287cd8;\n    }" if (parenthesized_expression "((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19))" ( (binary_expression "(-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)" (parenthesized_expression "(-1 < iVar19)" ( (binary_expression "-1 < iVar19" number_literal < identifier) )) && (parenthesized_expression "(iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)" ( (comma_expression "iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a10))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a10))" ( (pointer_expression "**(code **)(puVar30 + 0x175a10)" * (pointer_expression "*(code **)(puVar30 + 0x175a10)" * (cast_expression "(code **)(puVar30 + 0x175a10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a10)" ( (binary_expression "puVar30 + 0x175a10" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) , (binary_expression "-1 < iVar19" number_literal < identifier)) ))) )) (compound_statement "{\n      (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n      iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n      if (-1 < iVar19) goto LAB_00287cd8;\n    }" { (expression_statement "(**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);" (call_expression "(**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759bc))" ( (pointer_expression "**(code **)(puVar30 + 0x1759bc)" * (pointer_expression "*(code **)(puVar30 + 0x1759bc)" * (cast_expression "(code **)(puVar30 + 0x1759bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1759bc)" ( (binary_expression "puVar30 + 0x1759bc" identifier + number_literal) ))))) )) (argument_list "(iVar3,uStack_10d4 - uStack_10c8)" ( identifier , (binary_expression "uStack_10d4 - uStack_10c8" identifier - identifier) ))) ;) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x175a10))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a10))" ( (pointer_expression "**(code **)(puVar30 + 0x175a10)" * (pointer_expression "*(code **)(puVar30 + 0x175a10)" * (cast_expression "(code **)(puVar30 + 0x175a10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175a10)" ( (binary_expression "puVar30 + 0x175a10" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;) (if_statement "if (-1 < iVar19) goto LAB_00287cd8;" if (parenthesized_expression "(-1 < iVar19)" ( (binary_expression "-1 < iVar19" number_literal < identifier) )) (goto_statement "goto LAB_00287cd8;" goto statement_identifier ;)) })) (labeled_statement "LAB_00287db0:\n    uStack_10d4 = 0xffffffff;" statement_identifier : (expression_statement "uStack_10d4 = 0xffffffff;" (assignment_expression "uStack_10d4 = 0xffffffff" identifier = number_literal) ;)) }))) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0)" ( identifier , number_literal ))) ;) (labeled_statement "LAB_00286050:\n  uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);" statement_identifier : (expression_statement "uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x1754cc))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x1754cc))" ( (pointer_expression "**(code **)(puVar30 + 0x1754cc)" * (pointer_expression "*(code **)(puVar30 + 0x1754cc)" * (cast_expression "(code **)(puVar30 + 0x1754cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1754cc)" ( (binary_expression "puVar30 + 0x1754cc" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;)) (expression_statement "(**(code **)(puVar30 + 0x175ba0))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175ba0))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ba0))" ( (pointer_expression "**(code **)(puVar30 + 0x175ba0)" * (pointer_expression "*(code **)(puVar30 + 0x175ba0)" * (cast_expression "(code **)(puVar30 + 0x175ba0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175ba0)" ( (binary_expression "puVar30 + 0x175ba0" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1)" identifier = (call_expression "(**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175dac))" ( (pointer_expression "**(code **)(puVar30 + 0x175dac)" * (pointer_expression "*(code **)(puVar30 + 0x175dac)" * (cast_expression "(code **)(puVar30 + 0x175dac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175dac)" ( (binary_expression "puVar30 + 0x175dac" identifier + number_literal) ))))) )) (argument_list "(uVar15,extraout_v1)" ( identifier , identifier )))) ;) (if_statement "if (iVar19 == 0) {\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4ee,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }\n    goto LAB_00287858;\n  }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4ee,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }\n    goto LAB_00287858;\n  }" { (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4ee,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4ee,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4ee,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "iVar13 = (**(code **)(puVar30 + 0x175d80))\n                     (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f8,iVar19,param_2);" (assignment_expression "iVar13 = (**(code **)(puVar30 + 0x175d80))\n                     (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f8,iVar19,param_2)" identifier = (call_expression "(**(code **)(puVar30 + 0x175d80))\n                     (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f8,iVar19,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d80))" ( (pointer_expression "**(code **)(puVar30 + 0x175d80)" * (pointer_expression "*(code **)(puVar30 + 0x175d80)" * (cast_expression "(code **)(puVar30 + 0x175d80)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d80)" ( (binary_expression "puVar30 + 0x175d80" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f8,iVar19,param_2)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x174fb4) + 0x17f8" (pointer_expression "*(int *)(puVar30 + 0x174fb4)" * (cast_expression "(int *)(puVar30 + 0x174fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb4)" ( (binary_expression "puVar30 + 0x174fb4" identifier + number_literal) )))) + number_literal) , identifier , identifier )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1754e4))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x1754e4))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x1754e4))" ( (pointer_expression "**(code **)(puVar30 + 0x1754e4)" * (pointer_expression "*(code **)(puVar30 + 0x1754e4)" * (cast_expression "(code **)(puVar30 + 0x1754e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1754e4)" ( (binary_expression "puVar30 + 0x1754e4" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;) (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (if_statement "if (iVar13 == 0) {\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4f6,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }\n    goto LAB_00287858;\n  }" if (parenthesized_expression "(iVar13 == 0)" ( (binary_expression "iVar13 == 0" identifier == number_literal) )) (compound_statement "{\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4f6,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }\n    goto LAB_00287858;\n  }" { (expression_statement "(**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4f6,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4f6,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4f6,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (labeled_statement "LAB_00284a7c:\n  iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78b8,4);" statement_identifier : (expression_statement "iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78b8,4);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78b8,4)" identifier = (call_expression "(**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78b8,4)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d04))" ( (pointer_expression "**(code **)(puVar30 + 0x175d04)" * (pointer_expression "*(code **)(puVar30 + 0x175d04)" * (cast_expression "(code **)(puVar30 + 0x175d04)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d04)" ( (binary_expression "puVar30 + 0x175d04" identifier + number_literal) ))))) )) (argument_list "(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78b8,4)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x78b8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , number_literal )))) ;)) (if_statement "if (iVar3 == 0) {\n    (**(code **)(puVar30 + 0x175464))(auStack_1084,0x1000,*(int *)(puVar30 + 0x175020) + -0x4858,1);\n    iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n    if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x500,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      }\n    }\n    else {\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n      if (iVar19 == 0) {\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);\n        if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }\n    }\n    goto LAB_00286534;\n  }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n    (**(code **)(puVar30 + 0x175464))(auStack_1084,0x1000,*(int *)(puVar30 + 0x175020) + -0x4858,1);\n    iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n    if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x500,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      }\n    }\n    else {\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n      if (iVar19 == 0) {\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);\n        if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }\n    }\n    goto LAB_00286534;\n  }" { (expression_statement "(**(code **)(puVar30 + 0x175464))(auStack_1084,0x1000,*(int *)(puVar30 + 0x175020) + -0x4858,1);" (call_expression "(**(code **)(puVar30 + 0x175464))(auStack_1084,0x1000,*(int *)(puVar30 + 0x175020) + -0x4858,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175464))" ( (pointer_expression "**(code **)(puVar30 + 0x175464)" * (pointer_expression "*(code **)(puVar30 + 0x175464)" * (cast_expression "(code **)(puVar30 + 0x175464)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175464)" ( (binary_expression "puVar30 + 0x175464" identifier + number_literal) ))))) )) (argument_list "(auStack_1084,0x1000,*(int *)(puVar30 + 0x175020) + -0x4858,1)" ( identifier , number_literal , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4858" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) (expression_statement "iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2)" identifier = (call_expression "(**(code **)(puVar30 + 0x175cf4))(0,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175cf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175cf4)" * (pointer_expression "*(code **)(puVar30 + 0x175cf4)" * (cast_expression "(code **)(puVar30 + 0x175cf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175cf4)" ( (binary_expression "puVar30 + 0x175cf4" identifier + number_literal) ))))) )) (argument_list "(0,param_2)" ( number_literal , identifier )))) ;) (if_statement "if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x500,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      }\n    }\n    else {\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n      if (iVar19 == 0) {\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);\n        if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }\n    }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x500,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      }\n    }" { (expression_statement "(**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x500,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x500,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x500,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) })) }) (else_clause "else {\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n      if (iVar19 == 0) {\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);\n        if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }\n    }" else (compound_statement "{\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n      if (iVar19 == 0) {\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);\n        if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }\n    }" { (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1)" identifier = (call_expression "(**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(uStack_10d4,1)" ( identifier , number_literal )))) ;) (if_statement "if (iVar19 == 0) {\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);\n        if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }\n      }" { (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) }) (else_clause "else {\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);\n        if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }" else (compound_statement "{\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);\n        if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }" { (expression_statement "(**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);" (call_expression "(**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759b0))" ( (pointer_expression "**(code **)(puVar30 + 0x1759b0)" * (pointer_expression "*(code **)(puVar30 + 0x1759b0)" * (cast_expression "(code **)(puVar30 + 0x1759b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1759b0)" ( (binary_expression "puVar30 + 0x1759b0" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348),iVar19)" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) , identifier ))) ;) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0)" identifier = (call_expression "(**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1757f8))" ( (pointer_expression "**(code **)(puVar30 + 0x1757f8)" * (pointer_expression "*(code **)(puVar30 + 0x1757f8)" * (cast_expression "(code **)(puVar30 + 0x1757f8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1757f8)" ( (binary_expression "puVar30 + 0x1757f8" identifier + number_literal) ))))) )) (argument_list "(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x78c0" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) )))) ;) (if_statement "if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (compound_statement "{\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }" { (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1)" identifier = (call_expression "(**(code **)(puVar30 + 0x175bf4))(0x14000,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(0x14000,1)" ( number_literal , number_literal )))) ;) (if_statement "if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (compound_statement "{\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }" { (expression_statement "(**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);" (call_expression "(**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000)" (parenthesized_expression "(**(code **)(puVar30 + 0x175dbc))" ( (pointer_expression "**(code **)(puVar30 + 0x175dbc)" * (pointer_expression "*(code **)(puVar30 + 0x175dbc)" * (cast_expression "(code **)(puVar30 + 0x175dbc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175dbc)" ( (binary_expression "puVar30 + 0x175dbc" identifier + number_literal) ))))) )) (argument_list "(iVar19,0,0x14000)" ( identifier , number_literal , number_literal ))) ;) (do_statement "do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );" do (compound_statement "{\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            }" { (expression_statement "iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);" (assignment_expression "iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19)" identifier = (call_expression "(**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175494))" ( (pointer_expression "**(code **)(puVar30 + 0x175494)" * (pointer_expression "*(code **)(puVar30 + 0x175494)" * (cast_expression "(code **)(puVar30 + 0x175494)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175494)" ( (binary_expression "puVar30 + 0x175494" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc,0x14000,iVar19)" ( identifier , number_literal , identifier )))) ;) (if_statement "if (iVar13 == 0) goto LAB_00286b70;" if (parenthesized_expression "(iVar13 == 0)" ( (binary_expression "iVar13 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00286b70;" goto statement_identifier ;)) (expression_statement "iVar22 = 0;" (assignment_expression "iVar22 = 0" identifier = number_literal) ;) (if_statement "if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }" if (parenthesized_expression "(0 < iVar13)" ( (binary_expression "0 < iVar13" number_literal < identifier) )) (compound_statement "{\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }" { (do_statement "do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);" do (compound_statement "{\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                }" { (expression_statement "iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);" (assignment_expression "iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22)" identifier = (call_expression "(**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22)" (parenthesized_expression "(**(code **)(puVar30 + 0x17607c))" ( (pointer_expression "**(code **)(puVar30 + 0x17607c)" * (pointer_expression "*(code **)(puVar30 + 0x17607c)" * (cast_expression "(code **)(puVar30 + 0x17607c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17607c)" ( (binary_expression "puVar30 + 0x17607c" identifier + number_literal) ))))) )) (argument_list "(iVar3,iVar13 - iVar22,iVar19 + iVar22)" ( identifier , (binary_expression "iVar13 - iVar22" identifier - identifier) , (binary_expression "iVar19 + iVar22" identifier + identifier) )))) ;) (if_statement "if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }" if (parenthesized_expression "(iVar14 < 1)" ( (binary_expression "iVar14 < 1" identifier < number_literal) )) (compound_statement "{\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }" { (if_statement "if (iVar22 < iVar13) goto LAB_00286b70;" if (parenthesized_expression "(iVar22 < iVar13)" ( (binary_expression "iVar22 < iVar13" identifier < identifier) )) (goto_statement "goto LAB_00286b70;" goto statement_identifier ;)) (break_statement "break;" break ;) })) (expression_statement "iVar22 = iVar22 + iVar14;" (assignment_expression "iVar22 = iVar22 + iVar14" identifier = (binary_expression "iVar22 + iVar14" identifier + identifier)) ;) }) while (parenthesized_expression "(iVar22 < iVar13)" ( (binary_expression "iVar22 < iVar13" identifier < identifier) )) ;) })) }) while (parenthesized_expression "( true )" ( true )) ;) })) (goto_statement "goto LAB_00286b84;" goto statement_identifier ;) })) (if_statement "if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }" if (parenthesized_expression "(*(int *)(iVar20 + 0x1ec) == 0)" ( (binary_expression "*(int *)(iVar20 + 0x1ec) == 0" (pointer_expression "*(int *)(iVar20 + 0x1ec)" * (cast_expression "(int *)(iVar20 + 0x1ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1ec)" ( (binary_expression "iVar20 + 0x1ec" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }" { (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48a4" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) }) (else_clause "else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }" else (compound_statement "{\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }" { (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175548))();" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175548))()" identifier = (call_expression "(**(code **)(puVar30 + 0x175548))()" (parenthesized_expression "(**(code **)(puVar30 + 0x175548))" ( (pointer_expression "**(code **)(puVar30 + 0x175548)" * (pointer_expression "*(code **)(puVar30 + 0x175548)" * (cast_expression "(code **)(puVar30 + 0x175548)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175548)" ( (binary_expression "puVar30 + 0x175548" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2)" identifier = (call_expression "(**(code **)(puVar30 + 0x175cf4))(0,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175cf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175cf4)" * (pointer_expression "*(code **)(puVar30 + 0x175cf4)" * (cast_expression "(code **)(puVar30 + 0x175cf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175cf4)" ( (binary_expression "puVar30 + 0x175cf4" identifier + number_literal) ))))) )) (argument_list "(0,param_2)" ( number_literal , identifier )))) ;) (if_statement "if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }" { (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) }) (else_clause "else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }" else (compound_statement "{\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }" { (expression_statement "uVar26 = *(undefined4 *)(iVar19 + 0x3348);" (assignment_expression "uVar26 = *(undefined4 *)(iVar19 + 0x3348)" identifier = (pointer_expression "*(undefined4 *)(iVar19 + 0x3348)" * (cast_expression "(undefined4 *)(iVar19 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x3348)" ( (binary_expression "iVar19 + 0x3348" identifier + number_literal) ))))) ;) (expression_statement "uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);" (assignment_expression "uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15)" identifier = (call_expression "(**(code **)(puVar30 + 0x175550))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x175550))" ( (pointer_expression "**(code **)(puVar30 + 0x175550)" * (pointer_expression "*(code **)(puVar30 + 0x175550)" * (cast_expression "(code **)(puVar30 + 0x175550)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175550)" ( (binary_expression "puVar30 + 0x175550" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier )))) ;) (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15)" identifier = (call_expression "(**(code **)(puVar30 + 0x175430))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x175430))" ( (pointer_expression "**(code **)(puVar30 + 0x175430)" * (pointer_expression "*(code **)(puVar30 + 0x175430)" * (cast_expression "(code **)(puVar30 + 0x175430)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175430)" ( (binary_expression "puVar30 + 0x175430" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);" (call_expression "(**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759b0))" ( (pointer_expression "**(code **)(puVar30 + 0x1759b0)" * (pointer_expression "*(code **)(puVar30 + 0x1759b0)" * (cast_expression "(code **)(puVar30 + 0x1759b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1759b0)" ( (binary_expression "puVar30 + 0x1759b0" identifier + number_literal) ))))) )) (argument_list "(uVar26,uVar10,uVar15)" ( identifier , identifier , identifier ))) ;) (expression_statement "iVar13 = FUN_00282440(pcStack_10fc,iVar3);" (assignment_expression "iVar13 = FUN_00282440(pcStack_10fc,iVar3)" identifier = (call_expression "FUN_00282440(pcStack_10fc,iVar3)" identifier (argument_list "(pcStack_10fc,iVar3)" ( identifier , identifier )))) ;) (if_statement "if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }" if (parenthesized_expression "(iVar13 == 0xff)" ( (binary_expression "iVar13 == 0xff" identifier == number_literal) )) (compound_statement "{\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }" { (expression_statement "iVar13 = FUN_00282440(pcStack_10fc,iVar3);" (assignment_expression "iVar13 = FUN_00282440(pcStack_10fc,iVar3)" identifier = (call_expression "FUN_00282440(pcStack_10fc,iVar3)" identifier (argument_list "(pcStack_10fc,iVar3)" ( identifier , identifier )))) ;) (expression_statement "iVar22 = *(int *)(puVar30 + 0x1752b0);" (assignment_expression "iVar22 = *(int *)(puVar30 + 0x1752b0)" identifier = (pointer_expression "*(int *)(puVar30 + 0x1752b0)" * (cast_expression "(int *)(puVar30 + 0x1752b0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x1752b0)" ( (binary_expression "puVar30 + 0x1752b0" identifier + number_literal) ))))) ;) (if_statement "if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }" if (parenthesized_expression "(iVar13 == 0xd8)" ( (binary_expression "iVar13 == 0xd8" identifier == number_literal) )) (compound_statement "{\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }" { (expression_statement "iVar13 = *(int *)(puVar30 + 0x175020);" (assignment_expression "iVar13 = *(int *)(puVar30 + 0x175020)" identifier = (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) ))))) ;) (expression_statement "uVar15 = *(undefined4 *)(iVar13 + -0x4720);" (assignment_expression "uVar15 = *(undefined4 *)(iVar13 + -0x4720)" identifier = (pointer_expression "*(undefined4 *)(iVar13 + -0x4720)" * (cast_expression "(undefined4 *)(iVar13 + -0x4720)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar13 + -0x4720)" ( (binary_expression "iVar13 + -0x4720" identifier + number_literal) ))))) ;) (labeled_statement "LAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);" statement_identifier : (expression_statement "uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);" (assignment_expression "uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" identifier = (call_expression "(**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ed8))" ( (pointer_expression "**(code **)(puVar30 + 0x175ed8)" * (pointer_expression "*(code **)(puVar30 + 0x175ed8)" * (cast_expression "(code **)(puVar30 + 0x175ed8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175ed8)" ( (binary_expression "puVar30 + 0x175ed8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier )))) ;)) (if_statement "if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }" if (parenthesized_expression "(uVar12 != 0xffffffff)" ( (binary_expression "uVar12 != 0xffffffff" identifier != number_literal) )) (compound_statement "{\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }" { (if_statement "if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }" if (parenthesized_expression "(uVar12 == 0xff)" ( (binary_expression "uVar12 == 0xff" identifier == number_literal) )) (compound_statement "{\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }" { (do_statement "do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);" do (compound_statement "{\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    }" { (expression_statement "uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);" (assignment_expression "uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" identifier = (call_expression "(**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ed8))" ( (pointer_expression "**(code **)(puVar30 + 0x175ed8)" * (pointer_expression "*(code **)(puVar30 + 0x175ed8)" * (cast_expression "(code **)(puVar30 + 0x175ed8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175ed8)" ( (binary_expression "puVar30 + 0x175ed8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier )))) ;) (if_statement "if (uVar12 == 0xffffffff) goto LAB_00287dd0;" if (parenthesized_expression "(uVar12 == 0xffffffff)" ( (binary_expression "uVar12 == 0xffffffff" identifier == number_literal) )) (goto_statement "goto LAB_00287dd0;" goto statement_identifier ;)) }) while (parenthesized_expression "(uVar12 == 0xff)" ( (binary_expression "uVar12 == 0xff" identifier == number_literal) )) ;) (if_statement "if (uVar12 == 0xd9) goto LAB_002867e4;" if (parenthesized_expression "(uVar12 == 0xd9)" ( (binary_expression "uVar12 == 0xd9" identifier == number_literal) )) (goto_statement "goto LAB_002867e4;" goto statement_identifier ;)) (if_statement "if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }" if (parenthesized_expression "(uVar12 != 0xed)" ( (binary_expression "uVar12 != 0xed" identifier != number_literal) )) (compound_statement "{\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }" { (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0xff)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0xff)" ( identifier , number_literal ))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,uVar12 & 0xff)" ( identifier , (binary_expression "uVar12 & 0xff" identifier & number_literal) ))) ;) })) (if_statement "if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }" if (parenthesized_expression "(uVar12 == 0xe0)" ( (binary_expression "uVar12 == 0xe0" identifier == number_literal) )) (compound_statement "{\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }" { (expression_statement "(*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);" (call_expression "(*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3)" (parenthesized_expression "(*(code *)(iVar22 + 0x24b0))" ( (pointer_expression "*(code *)(iVar22 + 0x24b0)" * (cast_expression "(code *)(iVar22 + 0x24b0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar22 + 0x24b0)" ( (binary_expression "iVar22 + 0x24b0" identifier + number_literal) )))) )) (argument_list "(pcStack_10fc,iVar3)" ( identifier , identifier ))) ;) (expression_statement "uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);" (assignment_expression "uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c)" identifier = (pointer_expression "*(undefined4 *)(iVar13 + -0x471c)" * (cast_expression "(undefined4 *)(iVar13 + -0x471c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar13 + -0x471c)" ( (binary_expression "iVar13 + -0x471c" identifier + number_literal) ))))) ;) (expression_statement "uStack_109c = *(undefined4 *)(iVar13 + -0x4718);" (assignment_expression "uStack_109c = *(undefined4 *)(iVar13 + -0x4718)" identifier = (pointer_expression "*(undefined4 *)(iVar13 + -0x4718)" * (cast_expression "(undefined4 *)(iVar13 + -0x4718)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar13 + -0x4718)" ( (binary_expression "iVar13 + -0x4718" identifier + number_literal) ))))) ;) (expression_statement "uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);" (assignment_expression "uStack_1098 = *(undefined4 *)(iVar13 + -0x4714)" identifier = (pointer_expression "*(undefined4 *)(iVar13 + -0x4714)" * (cast_expression "(undefined4 *)(iVar13 + -0x4714)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar13 + -0x4714)" ( (binary_expression "iVar13 + -0x4714" identifier + number_literal) ))))) ;) (expression_statement "auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);" (assignment_expression "auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710)" identifier = (pointer_expression "*(undefined1 (*) [4])(iVar13 + -0x4710)" * (cast_expression "(undefined1 (*) [4])(iVar13 + -0x4710)" ( (type_descriptor "undefined1 (*) [4]" type_identifier (abstract_array_declarator "(*) [4]" (abstract_parenthesized_declarator "(*)" ( (abstract_pointer_declarator "*" *) )) [ number_literal ])) ) (parenthesized_expression "(iVar13 + -0x4710)" ( (binary_expression "iVar13 + -0x4710" identifier + number_literal) ))))) ;) (expression_statement "uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);" (assignment_expression "uStack_1090 = *(undefined4 *)(iVar13 + -0x470c)" identifier = (pointer_expression "*(undefined4 *)(iVar13 + -0x470c)" * (cast_expression "(undefined4 *)(iVar13 + -0x470c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar13 + -0x470c)" ( (binary_expression "iVar13 + -0x470c" identifier + number_literal) ))))) ;) (expression_statement "uStack_108c = *(undefined4 *)(iVar13 + -0x4708);" (assignment_expression "uStack_108c = *(undefined4 *)(iVar13 + -0x4708)" identifier = (pointer_expression "*(undefined4 *)(iVar13 + -0x4708)" * (cast_expression "(undefined4 *)(iVar13 + -0x4708)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar13 + -0x4708)" ( (binary_expression "iVar13 + -0x4708" identifier + number_literal) ))))) ;) (expression_statement "uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);" (assignment_expression "uStack_1088 = *(undefined1 *)(iVar13 + -0x4704)" identifier = (pointer_expression "*(undefined1 *)(iVar13 + -0x4704)" * (cast_expression "(undefined1 *)(iVar13 + -0x4704)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar13 + -0x4704)" ( (binary_expression "iVar13 + -0x4704" identifier + number_literal) ))))) ;) (expression_statement "uStack_10a4 = uVar15;" (assignment_expression "uStack_10a4 = uVar15" identifier = identifier) ;) (expression_statement "(**(code **)(puVar30 + 0x175ba0))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x175ba0))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ba0))" ( (pointer_expression "**(code **)(puVar30 + 0x175ba0)" * (pointer_expression "*(code **)(puVar30 + 0x175ba0)" * (cast_expression "(code **)(puVar30 + 0x175ba0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175ba0)" ( (binary_expression "puVar30 + 0x175ba0" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;) (expression_statement "uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);" (assignment_expression "uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8)" identifier = (call_expression "(undefined1)(extraout_v1_00 + 0x10 >> 8)" (parenthesized_expression "(undefined1)" ( identifier )) (argument_list "(extraout_v1_00 + 0x10 >> 8)" ( (binary_expression "extraout_v1_00 + 0x10 >> 8" (binary_expression "extraout_v1_00 + 0x10" identifier + number_literal) >> number_literal) )))) ;) (expression_statement "uVar12 = extraout_v1_00;" (assignment_expression "uVar12 = extraout_v1_00" identifier = identifier) ;) (if_statement "if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }" if (parenthesized_expression "((extraout_v1_00 & 1) != 0)" ( (binary_expression "(extraout_v1_00 & 1) != 0" (parenthesized_expression "(extraout_v1_00 & 1)" ( (binary_expression "extraout_v1_00 & 1" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }" { (expression_statement "uVar12 = extraout_v1_00 + 1;" (assignment_expression "uVar12 = extraout_v1_00 + 1" identifier = (binary_expression "extraout_v1_00 + 1" identifier + number_literal)) ;) (expression_statement "uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);" (assignment_expression "uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8)" identifier = (call_expression "(undefined1)(extraout_v1_00 + 0x11 >> 8)" (parenthesized_expression "(undefined1)" ( identifier )) (argument_list "(extraout_v1_00 + 0x11 >> 8)" ( (binary_expression "extraout_v1_00 + 0x11 >> 8" (binary_expression "extraout_v1_00 + 0x11" identifier + number_literal) >> number_literal) )))) ;) })) (expression_statement "uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');" (assignment_expression "uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10')" identifier = (call_expression "CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10')" identifier (argument_list "(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10')" ( (call_expression "CONCAT21(uStack_10a4._0_2_,uVar16)" identifier (argument_list "(uStack_10a4._0_2_,uVar16)" ( (field_expression "uStack_10a4._0_2_" identifier . field_identifier) , identifier ))) , (binary_expression "(char)uVar12 + '\x10'" (cast_expression "(char)uVar12" ( (type_descriptor "char" primitive_type) ) identifier) + (char_literal "'\x10'" ' escape_sequence ')) )))) ;) (expression_statement "puVar25 = &uStack_10a4;" (assignment_expression "puVar25 = &uStack_10a4" identifier = (pointer_expression "&uStack_10a4" & identifier)) ;) (do_statement "do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));" do (compound_statement "{\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      }" { (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,*(undefined1 *)puVar25)" ( identifier , (pointer_expression "*(undefined1 *)puVar25" * (cast_expression "(undefined1 *)puVar25" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ))) ;) (expression_statement "puVar25 = (undefined4 *)((int)puVar25 + 1);" (assignment_expression "puVar25 = (undefined4 *)((int)puVar25 + 1)" identifier = (cast_expression "(undefined4 *)((int)puVar25 + 1)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar25 + 1)" ( (binary_expression "(int)puVar25 + 1" (cast_expression "(int)puVar25" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) }) while (parenthesized_expression "(puVar25 != (undefined4 *)(auStack_1094 + 2))" ( (binary_expression "puVar25 != (undefined4 *)(auStack_1094 + 2)" identifier != (cast_expression "(undefined4 *)(auStack_1094 + 2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_1094 + 2)" ( (binary_expression "auStack_1094 + 2" identifier + number_literal) )))) )) ;) (do_statement "do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);" do (compound_statement "{\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      }" { (expression_statement "iVar14 = FUN_00282440(iVar19,iVar3);" (assignment_expression "iVar14 = FUN_00282440(iVar19,iVar3)" identifier = (call_expression "FUN_00282440(iVar19,iVar3)" identifier (argument_list "(iVar19,iVar3)" ( identifier , identifier )))) ;) }) while (parenthesized_expression "(iVar14 != -1)" ( (binary_expression "iVar14 != -1" identifier != number_literal) )) ;) (expression_statement "(**(code **)(puVar30 + 0x175ba0))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x175ba0))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ba0))" ( (pointer_expression "**(code **)(puVar30 + 0x175ba0)" * (pointer_expression "*(code **)(puVar30 + 0x175ba0)" * (cast_expression "(code **)(puVar30 + 0x175ba0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175ba0)" ( (binary_expression "puVar30 + 0x175ba0" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;) (if_statement "if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }" if (parenthesized_expression "((extraout_v1_01 & 1) != 0)" ( (binary_expression "(extraout_v1_01 & 1) != 0" (parenthesized_expression "(extraout_v1_01 & 1)" ( (binary_expression "extraout_v1_01 & 1" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }" { (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,0)" ( identifier , number_literal ))) ;) })) }) (else_clause "else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }" else (if_statement "if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }" if (parenthesized_expression "(uVar12 == 0xed)" ( (binary_expression "uVar12 == 0xed" identifier == number_literal) )) (compound_statement "{\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }" { (expression_statement "iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);" (assignment_expression "iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" identifier = (call_expression "(**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ed8))" ( (pointer_expression "**(code **)(puVar30 + 0x175ed8)" * (pointer_expression "*(code **)(puVar30 + 0x175ed8)" * (cast_expression "(code **)(puVar30 + 0x175ed8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175ed8)" ( (binary_expression "puVar30 + 0x175ed8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier )))) ;) (if_statement "if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }" if (parenthesized_expression "((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1))" ( (binary_expression "(iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)" (parenthesized_expression "(iVar14 != -1)" ( (binary_expression "iVar14 != -1" identifier != number_literal) )) && (parenthesized_expression "(iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)" ( (comma_expression "iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1" (assignment_expression "iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" identifier = (call_expression "(**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ed8))" ( (pointer_expression "**(code **)(puVar30 + 0x175ed8)" * (pointer_expression "*(code **)(puVar30 + 0x175ed8)" * (cast_expression "(code **)(puVar30 + 0x175ed8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175ed8)" ( (binary_expression "puVar30 + 0x175ed8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier )))) , (binary_expression "iVar11 != -1" identifier != number_literal)) ))) )) (compound_statement "{\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }" { (expression_statement "iVar11 = iVar14 * 0x100 + -2 + iVar11;" (assignment_expression "iVar11 = iVar14 * 0x100 + -2 + iVar11" identifier = (binary_expression "iVar14 * 0x100 + -2 + iVar11" (binary_expression "iVar14 * 0x100 + -2" (binary_expression "iVar14 * 0x100" identifier * number_literal) + number_literal) + identifier)) ;) (do_statement "do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);" do (compound_statement "{\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        }" { (if_statement "if (iVar11 == 0) break;" if (parenthesized_expression "(iVar11 == 0)" ( (binary_expression "iVar11 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);" (assignment_expression "iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" identifier = (call_expression "(**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ed8))" ( (pointer_expression "**(code **)(puVar30 + 0x175ed8)" * (pointer_expression "*(code **)(puVar30 + 0x175ed8)" * (cast_expression "(code **)(puVar30 + 0x175ed8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175ed8)" ( (binary_expression "puVar30 + 0x175ed8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier )))) ;) (expression_statement "iVar11 = iVar11 + -1;" (assignment_expression "iVar11 = iVar11 + -1" identifier = (binary_expression "iVar11 + -1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar14 != -1)" ( (binary_expression "iVar14 != -1" identifier != number_literal) )) ;) })) }) (else_clause "else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }" else (compound_statement "{\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }" { (if_statement "if (uVar12 == 0xda) goto LAB_002867c8;" if (parenthesized_expression "(uVar12 == 0xda)" ( (binary_expression "uVar12 == 0xda" identifier == number_literal) )) (goto_statement "goto LAB_002867c8;" goto statement_identifier ;)) (expression_statement "(*(code *)(iVar22 + 0x24b0))(pcStack_10fc);" (call_expression "(*(code *)(iVar22 + 0x24b0))(pcStack_10fc)" (parenthesized_expression "(*(code *)(iVar22 + 0x24b0))" ( (pointer_expression "*(code *)(iVar22 + 0x24b0)" * (cast_expression "(code *)(iVar22 + 0x24b0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar22 + 0x24b0)" ( (binary_expression "iVar22 + 0x24b0" identifier + number_literal) )))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) }))))) }) (else_clause "else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }" else (compound_statement "{\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }" { (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" ( (pointer_expression "**(code **)(puVar30 + 0x1756c4)" * (pointer_expression "*(code **)(puVar30 + 0x1756c4)" * (cast_expression "(code **)(puVar30 + 0x1756c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756c4)" ( (binary_expression "puVar30 + 0x1756c4" identifier + number_literal) ))))) )) (argument_list "(iVar3,uVar12 & 0xff)" ( identifier , (binary_expression "uVar12 & 0xff" identifier & number_literal) ))) ;) }))) (goto_statement "goto LAB_002869d4;" goto statement_identifier ;) })) (labeled_statement "LAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));" statement_identifier : (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar19 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar19 + 0x3348)" * (cast_expression "(undefined4 *)(iVar19 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x3348)" ( (binary_expression "iVar19 + 0x3348" identifier + number_literal) )))) )))) ;)) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;) (goto_statement "goto LAB_00286b84;" goto statement_identifier ;) })) })) (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar19 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar19 + 0x3348)" * (cast_expression "(undefined4 *)(iVar19 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x3348)" ( (binary_expression "iVar19 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4850" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) }))) }))) }))) }))) (goto_statement "goto LAB_00286534;" goto statement_identifier ;) })) (expression_statement "iVar3 = *(int *)(puVar30 + 0x174fb0);" (assignment_expression "iVar3 = *(int *)(puVar30 + 0x174fb0)" identifier = (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_00284aa4;" goto statement_identifier ;) (labeled_statement "LAB_00286b70:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);" statement_identifier : (expression_statement "(**(code **)(puVar30 + 0x1756a8))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;)) (goto_statement "goto LAB_00286b84;" goto statement_identifier ;) (labeled_statement "LAB_00286f40:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);" statement_identifier : (expression_statement "(**(code **)(puVar30 + 0x1756a8))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;)) (goto_statement "goto LAB_00286f50;" goto statement_identifier ;) (labeled_statement "LAB_00287414:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);" statement_identifier : (expression_statement "(**(code **)(puVar30 + 0x1756a8))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;)) (goto_statement "goto LAB_00287424;" goto statement_identifier ;) (labeled_statement "LAB_00287758:\n  (**(code **)(puVar30 + 0x1756a8))(iVar3);" statement_identifier : (expression_statement "(**(code **)(puVar30 + 0x1756a8))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;)) (goto_statement "goto LAB_00287768;" goto statement_identifier ;) (labeled_statement "LAB_002867c8:\n  do {\n    iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n  } while (iVar13 != -1);" statement_identifier : (do_statement "do {\n    iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n  } while (iVar13 != -1);" do (compound_statement "{\n    iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n  }" { (expression_statement "iVar13 = FUN_00282440(pcStack_10fc,iVar3);" (assignment_expression "iVar13 = FUN_00282440(pcStack_10fc,iVar3)" identifier = (call_expression "FUN_00282440(pcStack_10fc,iVar3)" identifier (argument_list "(pcStack_10fc,iVar3)" ( identifier , identifier )))) ;) }) while (parenthesized_expression "(iVar13 != -1)" ( (binary_expression "iVar13 != -1" identifier != number_literal) )) ;)) (labeled_statement "LAB_002867e4:\n  uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));" statement_identifier : (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar19 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar19 + 0x3348)" * (cast_expression "(undefined4 *)(iVar19 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 + 0x3348)" ( (binary_expression "iVar19 + 0x3348" identifier + number_literal) )))) )))) ;)) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;) (labeled_statement "LAB_00286b84:\n  uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);" statement_identifier : (expression_statement "uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x1754cc))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x1754cc))" ( (pointer_expression "**(code **)(puVar30 + 0x1754cc)" * (pointer_expression "*(code **)(puVar30 + 0x1754cc)" * (cast_expression "(code **)(puVar30 + 0x1754cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1754cc)" ( (binary_expression "puVar30 + 0x1754cc" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;)) (expression_statement "(**(code **)(puVar30 + 0x175ba0))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175ba0))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ba0))" ( (pointer_expression "**(code **)(puVar30 + 0x175ba0)" * (pointer_expression "*(code **)(puVar30 + 0x175ba0)" * (cast_expression "(code **)(puVar30 + 0x175ba0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175ba0)" ( (binary_expression "puVar30 + 0x175ba0" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_02);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_02)" identifier = (call_expression "(**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_02)" (parenthesized_expression "(**(code **)(puVar30 + 0x175dac))" ( (pointer_expression "**(code **)(puVar30 + 0x175dac)" * (pointer_expression "*(code **)(puVar30 + 0x175dac)" * (cast_expression "(code **)(puVar30 + 0x175dac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175dac)" ( (binary_expression "puVar30 + 0x175dac" identifier + number_literal) ))))) )) (argument_list "(uVar15,extraout_v1_02)" ( identifier , identifier )))) ;) (if_statement "if (iVar19 == 0) {\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x535,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }\n  }\n  else {\n    iVar13 = (**(code **)(puVar30 + 0x175d80))(pcStack_10fc,auStack_1084,iVar19,param_2);\n    (**(code **)(puVar30 + 0x1754e4))(iVar19);\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    iVar3 = *(int *)(puVar30 + 0x174fb0);\n    if (iVar13 != 0) {\nLAB_00284aa4:\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc);\n      if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0);\n      if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      iVar2 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4);\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar2 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);\n        (**(code **)(puVar30 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar2);\n      }\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc);\n      goto LAB_00287858;\n    }\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x53d,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }\n  }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x535,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }\n  }" { (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x535,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x535,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x535,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) }) (else_clause "else {\n    iVar13 = (**(code **)(puVar30 + 0x175d80))(pcStack_10fc,auStack_1084,iVar19,param_2);\n    (**(code **)(puVar30 + 0x1754e4))(iVar19);\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    iVar3 = *(int *)(puVar30 + 0x174fb0);\n    if (iVar13 != 0) {\nLAB_00284aa4:\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc);\n      if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0);\n      if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      iVar2 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4);\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar2 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);\n        (**(code **)(puVar30 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar2);\n      }\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc);\n      goto LAB_00287858;\n    }\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x53d,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }\n  }" else (compound_statement "{\n    iVar13 = (**(code **)(puVar30 + 0x175d80))(pcStack_10fc,auStack_1084,iVar19,param_2);\n    (**(code **)(puVar30 + 0x1754e4))(iVar19);\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    iVar3 = *(int *)(puVar30 + 0x174fb0);\n    if (iVar13 != 0) {\nLAB_00284aa4:\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc);\n      if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0);\n      if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      iVar2 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4);\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar2 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);\n        (**(code **)(puVar30 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar2);\n      }\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc);\n      goto LAB_00287858;\n    }\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x53d,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }\n  }" { (expression_statement "iVar13 = (**(code **)(puVar30 + 0x175d80))(pcStack_10fc,auStack_1084,iVar19,param_2);" (assignment_expression "iVar13 = (**(code **)(puVar30 + 0x175d80))(pcStack_10fc,auStack_1084,iVar19,param_2)" identifier = (call_expression "(**(code **)(puVar30 + 0x175d80))(pcStack_10fc,auStack_1084,iVar19,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d80))" ( (pointer_expression "**(code **)(puVar30 + 0x175d80)" * (pointer_expression "*(code **)(puVar30 + 0x175d80)" * (cast_expression "(code **)(puVar30 + 0x175d80)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d80)" ( (binary_expression "puVar30 + 0x175d80" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc,auStack_1084,iVar19,param_2)" ( identifier , identifier , identifier , identifier )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1754e4))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x1754e4))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x1754e4))" ( (pointer_expression "**(code **)(puVar30 + 0x1754e4)" * (pointer_expression "*(code **)(puVar30 + 0x1754e4)" * (cast_expression "(code **)(puVar30 + 0x1754e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1754e4)" ( (binary_expression "puVar30 + 0x1754e4" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;) (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "iVar3 = *(int *)(puVar30 + 0x174fb0);" (assignment_expression "iVar3 = *(int *)(puVar30 + 0x174fb0)" identifier = (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) ))))) ;) (if_statement "if (iVar13 != 0) {\nLAB_00284aa4:\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc);\n      if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0);\n      if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      iVar2 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4);\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar2 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);\n        (**(code **)(puVar30 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar2);\n      }\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc);\n      goto LAB_00287858;\n    }" if (parenthesized_expression "(iVar13 != 0)" ( (binary_expression "iVar13 != 0" identifier != number_literal) )) (compound_statement "{\nLAB_00284aa4:\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc);\n      if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0);\n      if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      iVar2 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4);\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar2 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);\n        (**(code **)(puVar30 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar2);\n      }\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc);\n      goto LAB_00287858;\n    }" { (labeled_statement "LAB_00284aa4:\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc);" statement_identifier : (expression_statement "iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc)" identifier = (call_expression "(**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc)" (parenthesized_expression "(**(code **)(puVar30 + 0x1757f8))" ( (pointer_expression "**(code **)(puVar30 + 0x1757f8)" * (pointer_expression "*(code **)(puVar30 + 0x1757f8)" * (cast_expression "(code **)(puVar30 + 0x1757f8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1757f8)" ( (binary_expression "puVar30 + 0x1757f8" identifier + number_literal) ))))) )) (argument_list "(iVar2,iVar3 + 0x78dc)" ( identifier , (binary_expression "iVar3 + 0x78dc" identifier + number_literal) )))) ;)) (if_statement "if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n      }" { (labeled_statement "LAB_00284ae8:\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);" statement_identifier : (expression_statement "iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2)" identifier = (call_expression "(**(code **)(puVar30 + 0x175cf4))(0,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175cf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175cf4)" * (pointer_expression "*(code **)(puVar30 + 0x175cf4)" * (cast_expression "(code **)(puVar30 + 0x175cf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175cf4)" ( (binary_expression "puVar30 + 0x175cf4" identifier + number_literal) ))))) )) (argument_list "(0,param_2)" ( number_literal , identifier )))) ;)) (if_statement "if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" { (expression_statement "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1)" identifier = (call_expression "(**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(uStack_10d4,1)" ( identifier , number_literal )))) ;) (if_statement "if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" { (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "(**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);" (call_expression "(**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759b0))" ( (pointer_expression "**(code **)(puVar30 + 0x1759b0)" * (pointer_expression "*(code **)(puVar30 + 0x1759b0)" * (cast_expression "(code **)(puVar30 + 0x1759b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1759b0)" ( (binary_expression "puVar30 + 0x1759b0" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348),iVar19)" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) , identifier ))) ;) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1)" identifier = (call_expression "(**(code **)(puVar30 + 0x175bf4))(0x14000,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(0x14000,1)" ( number_literal , number_literal )))) ;) (if_statement "if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (compound_statement "{\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }" { (expression_statement "(**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);" (call_expression "(**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000)" (parenthesized_expression "(**(code **)(puVar30 + 0x175dbc))" ( (pointer_expression "**(code **)(puVar30 + 0x175dbc)" * (pointer_expression "*(code **)(puVar30 + 0x175dbc)" * (cast_expression "(code **)(puVar30 + 0x175dbc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175dbc)" ( (binary_expression "puVar30 + 0x175dbc" identifier + number_literal) ))))) )) (argument_list "(iVar19,0,0x14000)" ( identifier , number_literal , number_literal ))) ;) (do_statement "do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );" do (compound_statement "{\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          }" { (expression_statement "iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);" (assignment_expression "iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19)" identifier = (call_expression "(**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175494))" ( (pointer_expression "**(code **)(puVar30 + 0x175494)" * (pointer_expression "*(code **)(puVar30 + 0x175494)" * (cast_expression "(code **)(puVar30 + 0x175494)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175494)" ( (binary_expression "puVar30 + 0x175494" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc,0x14000,iVar19)" ( identifier , number_literal , identifier )))) ;) (if_statement "if (iVar13 == 0) goto LAB_00286f40;" if (parenthesized_expression "(iVar13 == 0)" ( (binary_expression "iVar13 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00286f40;" goto statement_identifier ;)) (expression_statement "iVar22 = 0;" (assignment_expression "iVar22 = 0" identifier = number_literal) ;) (if_statement "if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }" if (parenthesized_expression "(0 < iVar13)" ( (binary_expression "0 < iVar13" number_literal < identifier) )) (compound_statement "{\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }" { (do_statement "do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);" do (compound_statement "{\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              }" { (expression_statement "iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);" (assignment_expression "iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22)" identifier = (call_expression "(**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22)" (parenthesized_expression "(**(code **)(puVar30 + 0x17607c))" ( (pointer_expression "**(code **)(puVar30 + 0x17607c)" * (pointer_expression "*(code **)(puVar30 + 0x17607c)" * (cast_expression "(code **)(puVar30 + 0x17607c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17607c)" ( (binary_expression "puVar30 + 0x17607c" identifier + number_literal) ))))) )) (argument_list "(iVar3,iVar13 - iVar22,iVar19 + iVar22)" ( identifier , (binary_expression "iVar13 - iVar22" identifier - identifier) , (binary_expression "iVar19 + iVar22" identifier + identifier) )))) ;) (if_statement "if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }" if (parenthesized_expression "(iVar14 < 1)" ( (binary_expression "iVar14 < 1" identifier < number_literal) )) (compound_statement "{\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }" { (if_statement "if (iVar22 < iVar13) goto LAB_00286f40;" if (parenthesized_expression "(iVar22 < iVar13)" ( (binary_expression "iVar22 < iVar13" identifier < identifier) )) (goto_statement "goto LAB_00286f40;" goto statement_identifier ;)) (break_statement "break;" break ;) })) (expression_statement "iVar22 = iVar22 + iVar14;" (assignment_expression "iVar22 = iVar22 + iVar14" identifier = (binary_expression "iVar22 + iVar14" identifier + identifier)) ;) }) while (parenthesized_expression "(iVar22 < iVar13)" ( (binary_expression "iVar22 < iVar13" identifier < identifier) )) ;) })) }) while (parenthesized_expression "( true )" ( true )) ;) })) (labeled_statement "LAB_00286f50:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);" statement_identifier : (expression_statement "uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x1754cc))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x1754cc))" ( (pointer_expression "**(code **)(puVar30 + 0x1754cc)" * (pointer_expression "*(code **)(puVar30 + 0x1754cc)" * (cast_expression "(code **)(puVar30 + 0x1754cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1754cc)" ( (binary_expression "puVar30 + 0x1754cc" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;)) (expression_statement "(**(code **)(puVar30 + 0x175ba0))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175ba0))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ba0))" ( (pointer_expression "**(code **)(puVar30 + 0x175ba0)" * (pointer_expression "*(code **)(puVar30 + 0x175ba0)" * (cast_expression "(code **)(puVar30 + 0x175ba0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175ba0)" ( (binary_expression "puVar30 + 0x175ba0" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03)" identifier = (call_expression "(**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03)" (parenthesized_expression "(**(code **)(puVar30 + 0x175dac))" ( (pointer_expression "**(code **)(puVar30 + 0x175dac)" * (pointer_expression "*(code **)(puVar30 + 0x175dac)" * (cast_expression "(code **)(puVar30 + 0x175dac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175dac)" ( (binary_expression "puVar30 + 0x175dac" identifier + number_literal) ))))) )) (argument_list "(uVar15,extraout_v1_03)" ( identifier , identifier )))) ;) (if_statement "if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" { (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "(**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);" (call_expression "(**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d80))" ( (pointer_expression "**(code **)(puVar30 + 0x175d80)" * (pointer_expression "*(code **)(puVar30 + 0x175d80)" * (cast_expression "(code **)(puVar30 + 0x175d80)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d80)" ( (binary_expression "puVar30 + 0x175d80" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x174fb4) + -0x286c" (pointer_expression "*(int *)(puVar30 + 0x174fb4)" * (cast_expression "(int *)(puVar30 + 0x174fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb4)" ( (binary_expression "puVar30 + 0x174fb4" identifier + number_literal) )))) + number_literal) , identifier , identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x1754e4))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x1754e4))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x1754e4))" ( (pointer_expression "**(code **)(puVar30 + 0x1754e4)" * (pointer_expression "*(code **)(puVar30 + 0x1754e4)" * (cast_expression "(code **)(puVar30 + 0x1754e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1754e4)" ( (binary_expression "puVar30 + 0x1754e4" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;) (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "iVar19 = *(int *)(puVar30 + 0x174fb0);" (assignment_expression "iVar19 = *(int *)(puVar30 + 0x174fb0)" identifier = (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) ))))) ;) }) (else_clause "else {\n        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }" else (compound_statement "{\n        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }" { (expression_statement "iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8)" identifier = (call_expression "(**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8)" (parenthesized_expression "(**(code **)(puVar30 + 0x1757f8))" ( (pointer_expression "**(code **)(puVar30 + 0x1757f8)" * (pointer_expression "*(code **)(puVar30 + 0x1757f8)" * (cast_expression "(code **)(puVar30 + 0x1757f8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1757f8)" ( (binary_expression "puVar30 + 0x1757f8" identifier + number_literal) ))))) )) (argument_list "(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x78d8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "iVar19 = *(int *)(puVar30 + 0x174fb0);" (assignment_expression "iVar19 = *(int *)(puVar30 + 0x174fb0)" identifier = (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) ))))) ;) (if_statement "if (iVar3 == 0) goto LAB_00284ae8;" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00284ae8;" goto statement_identifier ;)) }))) (expression_statement "iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0)" identifier = (call_expression "(**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1757f8))" ( (pointer_expression "**(code **)(puVar30 + 0x1757f8)" * (pointer_expression "*(code **)(puVar30 + 0x1757f8)" * (cast_expression "(code **)(puVar30 + 0x1757f8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1757f8)" ( (binary_expression "puVar30 + 0x1757f8" identifier + number_literal) ))))) )) (argument_list "(iVar2,iVar19 + 0x78e0)" ( identifier , (binary_expression "iVar19 + 0x78e0" identifier + number_literal) )))) ;) (if_statement "if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }" { (expression_statement "iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2)" identifier = (call_expression "(**(code **)(puVar30 + 0x175cf4))(0,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175cf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175cf4)" * (pointer_expression "*(code **)(puVar30 + 0x175cf4)" * (cast_expression "(code **)(puVar30 + 0x175cf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175cf4)" ( (binary_expression "puVar30 + 0x175cf4" identifier + number_literal) ))))) )) (argument_list "(0,param_2)" ( number_literal , identifier )))) ;) (if_statement "if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" { (expression_statement "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1)" identifier = (call_expression "(**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(uStack_10d4,1)" ( identifier , number_literal )))) ;) (if_statement "if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" { (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "(**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);" (call_expression "(**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759b0))" ( (pointer_expression "**(code **)(puVar30 + 0x1759b0)" * (pointer_expression "*(code **)(puVar30 + 0x1759b0)" * (cast_expression "(code **)(puVar30 + 0x1759b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1759b0)" ( (binary_expression "puVar30 + 0x1759b0" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348),iVar19)" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) , identifier ))) ;) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1)" identifier = (call_expression "(**(code **)(puVar30 + 0x175bf4))(0x14000,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(0x14000,1)" ( number_literal , number_literal )))) ;) (if_statement "if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (compound_statement "{\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }" { (expression_statement "(**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);" (call_expression "(**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000)" (parenthesized_expression "(**(code **)(puVar30 + 0x175dbc))" ( (pointer_expression "**(code **)(puVar30 + 0x175dbc)" * (pointer_expression "*(code **)(puVar30 + 0x175dbc)" * (cast_expression "(code **)(puVar30 + 0x175dbc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175dbc)" ( (binary_expression "puVar30 + 0x175dbc" identifier + number_literal) ))))) )) (argument_list "(iVar19,0,0x14000)" ( identifier , number_literal , number_literal ))) ;) (do_statement "do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );" do (compound_statement "{\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          }" { (expression_statement "iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);" (assignment_expression "iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19)" identifier = (call_expression "(**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175494))" ( (pointer_expression "**(code **)(puVar30 + 0x175494)" * (pointer_expression "*(code **)(puVar30 + 0x175494)" * (cast_expression "(code **)(puVar30 + 0x175494)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175494)" ( (binary_expression "puVar30 + 0x175494" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc,0x14000,iVar19)" ( identifier , number_literal , identifier )))) ;) (if_statement "if (iVar13 == 0) goto LAB_00287414;" if (parenthesized_expression "(iVar13 == 0)" ( (binary_expression "iVar13 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00287414;" goto statement_identifier ;)) (expression_statement "iVar22 = 0;" (assignment_expression "iVar22 = 0" identifier = number_literal) ;) (if_statement "if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }" if (parenthesized_expression "(0 < iVar13)" ( (binary_expression "0 < iVar13" number_literal < identifier) )) (compound_statement "{\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }" { (do_statement "do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);" do (compound_statement "{\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              }" { (expression_statement "iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);" (assignment_expression "iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22)" identifier = (call_expression "(**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22)" (parenthesized_expression "(**(code **)(puVar30 + 0x17607c))" ( (pointer_expression "**(code **)(puVar30 + 0x17607c)" * (pointer_expression "*(code **)(puVar30 + 0x17607c)" * (cast_expression "(code **)(puVar30 + 0x17607c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17607c)" ( (binary_expression "puVar30 + 0x17607c" identifier + number_literal) ))))) )) (argument_list "(iVar3,iVar13 - iVar22,iVar19 + iVar22)" ( identifier , (binary_expression "iVar13 - iVar22" identifier - identifier) , (binary_expression "iVar19 + iVar22" identifier + identifier) )))) ;) (if_statement "if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }" if (parenthesized_expression "(iVar14 < 1)" ( (binary_expression "iVar14 < 1" identifier < number_literal) )) (compound_statement "{\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }" { (if_statement "if (iVar22 < iVar13) goto LAB_00287414;" if (parenthesized_expression "(iVar22 < iVar13)" ( (binary_expression "iVar22 < iVar13" identifier < identifier) )) (goto_statement "goto LAB_00287414;" goto statement_identifier ;)) (break_statement "break;" break ;) })) (expression_statement "iVar22 = iVar22 + iVar14;" (assignment_expression "iVar22 = iVar22 + iVar14" identifier = (binary_expression "iVar22 + iVar14" identifier + identifier)) ;) }) while (parenthesized_expression "(iVar22 < iVar13)" ( (binary_expression "iVar22 < iVar13" identifier < identifier) )) ;) })) }) while (parenthesized_expression "( true )" ( true )) ;) })) (labeled_statement "LAB_00287424:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);" statement_identifier : (expression_statement "uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x1754cc))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x1754cc))" ( (pointer_expression "**(code **)(puVar30 + 0x1754cc)" * (pointer_expression "*(code **)(puVar30 + 0x1754cc)" * (cast_expression "(code **)(puVar30 + 0x1754cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1754cc)" ( (binary_expression "puVar30 + 0x1754cc" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier )))) ;)) (expression_statement "(**(code **)(puVar30 + 0x175ba0))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175ba0))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ba0))" ( (pointer_expression "**(code **)(puVar30 + 0x175ba0)" * (pointer_expression "*(code **)(puVar30 + 0x175ba0)" * (cast_expression "(code **)(puVar30 + 0x175ba0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175ba0)" ( (binary_expression "puVar30 + 0x175ba0" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04)" identifier = (call_expression "(**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04)" (parenthesized_expression "(**(code **)(puVar30 + 0x175dac))" ( (pointer_expression "**(code **)(puVar30 + 0x175dac)" * (pointer_expression "*(code **)(puVar30 + 0x175dac)" * (cast_expression "(code **)(puVar30 + 0x175dac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175dac)" ( (binary_expression "puVar30 + 0x175dac" identifier + number_literal) ))))) )) (argument_list "(uVar15,extraout_v1_04)" ( identifier , identifier )))) ;) (if_statement "if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (compound_statement "{\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" { (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "(**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);" (call_expression "(**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d80))" ( (pointer_expression "**(code **)(puVar30 + 0x175d80)" * (pointer_expression "*(code **)(puVar30 + 0x175d80)" * (cast_expression "(code **)(puVar30 + 0x175d80)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d80)" ( (binary_expression "puVar30 + 0x175d80" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x174fb4) + 0x17f0" (pointer_expression "*(int *)(puVar30 + 0x174fb4)" * (cast_expression "(int *)(puVar30 + 0x174fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb4)" ( (binary_expression "puVar30 + 0x174fb4" identifier + number_literal) )))) + number_literal) , identifier , identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x1754e4))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x1754e4))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x1754e4))" ( (pointer_expression "**(code **)(puVar30 + 0x1754e4)" * (pointer_expression "*(code **)(puVar30 + 0x1754e4)" * (cast_expression "(code **)(puVar30 + 0x1754e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1754e4)" ( (binary_expression "puVar30 + 0x1754e4" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))) ;) (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" * (cast_expression "(undefined4 *)(iVar3 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x3348)" ( (binary_expression "iVar3 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "iVar3 = *(int *)(puVar30 + 0x174fb0);" (assignment_expression "iVar3 = *(int *)(puVar30 + 0x174fb0)" identifier = (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) ))))) ;) }) (else_clause "else {\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }" else (compound_statement "{\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }" { (expression_statement "iVar3 = *(int *)(puVar30 + 0x174fb0);" (assignment_expression "iVar3 = *(int *)(puVar30 + 0x174fb0)" identifier = (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) ))))) ;) }))) (expression_statement "iVar2 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4);" (assignment_expression "iVar2 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4)" identifier = (call_expression "(**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4)" (parenthesized_expression "(**(code **)(puVar30 + 0x1757f8))" ( (pointer_expression "**(code **)(puVar30 + 0x1757f8)" * (pointer_expression "*(code **)(puVar30 + 0x1757f8)" * (cast_expression "(code **)(puVar30 + 0x1757f8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1757f8)" ( (binary_expression "puVar30 + 0x1757f8" identifier + number_literal) ))))) )) (argument_list "(iVar2,iVar3 + 0x78d4)" ( identifier , (binary_expression "iVar3 + 0x78d4" identifier + number_literal) )))) ;) (if_statement "if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar2 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);\n        (**(code **)(puVar30 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar2);\n      }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n        iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar2 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);\n        (**(code **)(puVar30 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar2);\n      }" { (expression_statement "iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);" (assignment_expression "iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2)" identifier = (call_expression "(**(code **)(puVar30 + 0x175cf4))(0,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175cf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175cf4)" * (pointer_expression "*(code **)(puVar30 + 0x175cf4)" * (cast_expression "(code **)(puVar30 + 0x175cf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175cf4)" ( (binary_expression "puVar30 + 0x175cf4" identifier + number_literal) ))))) )) (argument_list "(0,param_2)" ( number_literal , identifier )))) ;) (if_statement "if (iVar2 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" { (expression_statement "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1)" identifier = (call_expression "(**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(uStack_10d4,1)" ( identifier , number_literal )))) ;) (if_statement "if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" { (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar2);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar2)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "(**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);" (call_expression "(**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759b0))" ( (pointer_expression "**(code **)(puVar30 + 0x1759b0)" * (pointer_expression "*(code **)(puVar30 + 0x1759b0)" * (cast_expression "(code **)(puVar30 + 0x1759b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1759b0)" ( (binary_expression "puVar30 + 0x1759b0" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar2 + 0x3348),iVar3)" ( (pointer_expression "*(undefined4 *)(iVar2 + 0x3348)" * (cast_expression "(undefined4 *)(iVar2 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x3348)" ( (binary_expression "iVar2 + 0x3348" identifier + number_literal) )))) , identifier ))) ;) (expression_statement "iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1)" identifier = (call_expression "(**(code **)(puVar30 + 0x175bf4))(0x14000,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf4)" * (pointer_expression "*(code **)(puVar30 + 0x175bf4)" * (cast_expression "(code **)(puVar30 + 0x175bf4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf4)" ( (binary_expression "puVar30 + 0x175bf4" identifier + number_literal) ))))) )) (argument_list "(0x14000,1)" ( number_literal , number_literal )))) ;) (if_statement "if (iVar3 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }" if (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (compound_statement "{\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }" { (expression_statement "(**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);" (call_expression "(**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000)" (parenthesized_expression "(**(code **)(puVar30 + 0x175dbc))" ( (pointer_expression "**(code **)(puVar30 + 0x175dbc)" * (pointer_expression "*(code **)(puVar30 + 0x175dbc)" * (cast_expression "(code **)(puVar30 + 0x175dbc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175dbc)" ( (binary_expression "puVar30 + 0x175dbc" identifier + number_literal) ))))) )) (argument_list "(iVar3,0,0x14000)" ( identifier , number_literal , number_literal ))) ;) (do_statement "do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );" do (compound_statement "{\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          }" { (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3)" identifier = (call_expression "(**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175494))" ( (pointer_expression "**(code **)(puVar30 + 0x175494)" * (pointer_expression "*(code **)(puVar30 + 0x175494)" * (cast_expression "(code **)(puVar30 + 0x175494)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175494)" ( (binary_expression "puVar30 + 0x175494" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc,0x14000,iVar3)" ( identifier , number_literal , identifier )))) ;) (if_statement "if (iVar19 == 0) goto LAB_00287758;" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00287758;" goto statement_identifier ;)) (expression_statement "iVar13 = 0;" (assignment_expression "iVar13 = 0" identifier = number_literal) ;) (if_statement "if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }" if (parenthesized_expression "(0 < iVar19)" ( (binary_expression "0 < iVar19" number_literal < identifier) )) (compound_statement "{\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }" { (do_statement "do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);" do (compound_statement "{\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              }" { (expression_statement "iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);" (assignment_expression "iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13)" identifier = (call_expression "(**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13)" (parenthesized_expression "(**(code **)(puVar30 + 0x17607c))" ( (pointer_expression "**(code **)(puVar30 + 0x17607c)" * (pointer_expression "*(code **)(puVar30 + 0x17607c)" * (cast_expression "(code **)(puVar30 + 0x17607c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17607c)" ( (binary_expression "puVar30 + 0x17607c" identifier + number_literal) ))))) )) (argument_list "(iVar2,iVar19 - iVar13,iVar3 + iVar13)" ( identifier , (binary_expression "iVar19 - iVar13" identifier - identifier) , (binary_expression "iVar3 + iVar13" identifier + identifier) )))) ;) (if_statement "if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }" if (parenthesized_expression "(iVar22 < 1)" ( (binary_expression "iVar22 < 1" identifier < number_literal) )) (compound_statement "{\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }" { (if_statement "if (iVar13 < iVar19) goto LAB_00287758;" if (parenthesized_expression "(iVar13 < iVar19)" ( (binary_expression "iVar13 < iVar19" identifier < identifier) )) (goto_statement "goto LAB_00287758;" goto statement_identifier ;)) (break_statement "break;" break ;) })) (expression_statement "iVar13 = iVar13 + iVar22;" (assignment_expression "iVar13 = iVar13 + iVar22" identifier = (binary_expression "iVar13 + iVar22" identifier + identifier)) ;) }) while (parenthesized_expression "(iVar13 < iVar19)" ( (binary_expression "iVar13 < iVar19" identifier < identifier) )) ;) })) }) while (parenthesized_expression "( true )" ( true )) ;) })) (labeled_statement "LAB_00287768:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);" statement_identifier : (expression_statement "uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2)" identifier = (call_expression "(**(code **)(puVar30 + 0x1754cc))(iVar2)" (parenthesized_expression "(**(code **)(puVar30 + 0x1754cc))" ( (pointer_expression "**(code **)(puVar30 + 0x1754cc)" * (pointer_expression "*(code **)(puVar30 + 0x1754cc)" * (cast_expression "(code **)(puVar30 + 0x1754cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1754cc)" ( (binary_expression "puVar30 + 0x1754cc" identifier + number_literal) ))))) )) (argument_list "(iVar2)" ( identifier )))) ;)) (expression_statement "(**(code **)(puVar30 + 0x175ba0))(iVar2);" (call_expression "(**(code **)(puVar30 + 0x175ba0))(iVar2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ba0))" ( (pointer_expression "**(code **)(puVar30 + 0x175ba0)" * (pointer_expression "*(code **)(puVar30 + 0x175ba0)" * (cast_expression "(code **)(puVar30 + 0x175ba0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175ba0)" ( (binary_expression "puVar30 + 0x175ba0" identifier + number_literal) ))))) )) (argument_list "(iVar2)" ( identifier ))) ;) (expression_statement "iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05)" identifier = (call_expression "(**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05)" (parenthesized_expression "(**(code **)(puVar30 + 0x175dac))" ( (pointer_expression "**(code **)(puVar30 + 0x175dac)" * (pointer_expression "*(code **)(puVar30 + 0x175dac)" * (cast_expression "(code **)(puVar30 + 0x175dac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175dac)" ( (binary_expression "puVar30 + 0x175dac" identifier + number_literal) ))))) )) (argument_list "(uVar15,extraout_v1_05)" ( identifier , identifier )))) ;) (if_statement "if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" { (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar2 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar2 + 0x3348)" * (cast_expression "(undefined4 *)(iVar2 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x3348)" ( (binary_expression "iVar2 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar2);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar2)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "(**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);" (call_expression "(**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d80))" ( (pointer_expression "**(code **)(puVar30 + 0x175d80)" * (pointer_expression "*(code **)(puVar30 + 0x175d80)" * (cast_expression "(code **)(puVar30 + 0x175d80)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d80)" ( (binary_expression "puVar30 + 0x175d80" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x174fb8) + 0x76a8" (pointer_expression "*(int *)(puVar30 + 0x174fb8)" * (cast_expression "(int *)(puVar30 + 0x174fb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb8)" ( (binary_expression "puVar30 + 0x174fb8" identifier + number_literal) )))) + number_literal) , identifier , identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x1754e4))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x1754e4))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x1754e4))" ( (pointer_expression "**(code **)(puVar30 + 0x1754e4)" * (pointer_expression "*(code **)(puVar30 + 0x1754e4)" * (cast_expression "(code **)(puVar30 + 0x1754e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1754e4)" ( (binary_expression "puVar30 + 0x1754e4" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348))" identifier = (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" ( (pointer_expression "**(code **)(puVar30 + 0x175e54)" * (pointer_expression "*(code **)(puVar30 + 0x175e54)" * (cast_expression "(code **)(puVar30 + 0x175e54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175e54)" ( (binary_expression "puVar30 + 0x175e54" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar2 + 0x3348))" ( (pointer_expression "*(undefined4 *)(iVar2 + 0x3348)" * (cast_expression "(undefined4 *)(iVar2 + 0x3348)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x3348)" ( (binary_expression "iVar2 + 0x3348" identifier + number_literal) )))) )))) ;) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" ( (pointer_expression "**(code **)(puVar30 + 0x1756a8)" * (pointer_expression "*(code **)(puVar30 + 0x1756a8)" * (cast_expression "(code **)(puVar30 + 0x1756a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x1756a8)" ( (binary_expression "puVar30 + 0x1756a8" identifier + number_literal) ))))) )) (argument_list "(uVar15)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar2);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" ( (pointer_expression "**(code **)(puVar30 + 0x175634)" * (pointer_expression "*(code **)(puVar30 + 0x175634)" * (cast_expression "(code **)(puVar30 + 0x175634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175634)" ( (binary_expression "puVar30 + 0x175634" identifier + number_literal) ))))) )) (argument_list "(iVar2)" ( identifier ))) ;) })) (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc);" (assignment_expression "pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc)" identifier = (cast_expression "(char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar30 + 0x175b34))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175b34))" ( (pointer_expression "**(code **)(puVar30 + 0x175b34)" * (pointer_expression "*(code **)(puVar30 + 0x175b34)" * (cast_expression "(code **)(puVar30 + 0x175b34)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175b34)" ( (binary_expression "puVar30 + 0x175b34" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))))) ;) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) (expression_statement "(**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x53d,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x53d,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" ( (pointer_expression "**(code **)(puVar30 + 0x175608)" * (pointer_expression "*(code **)(puVar30 + 0x175608)" * (cast_expression "(code **)(puVar30 + 0x175608)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175608)" ( (binary_expression "puVar30 + 0x175608" identifier + number_literal) ))))) )) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x53d,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210)" ( identifier , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" * (cast_expression "(int *)(puVar30 + 0x175020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x175020)" ( (binary_expression "puVar30 + 0x175020" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" * (cast_expression "(int *)(puVar30 + 0x174fb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 0x174fb0)" ( (binary_expression "puVar30 + 0x174fb0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar20 + 0x2210" identifier + number_literal) ))) ;) (if_statement "if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }" if (parenthesized_expression "(pcStack_10fc != (char *)0x0)" ( (binary_expression "pcStack_10fc != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }" { (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" ( (pointer_expression "**(code **)(puVar30 + 0x175d70)" * (pointer_expression "*(code **)(puVar30 + 0x175d70)" * (cast_expression "(code **)(puVar30 + 0x175d70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175d70)" ( (binary_expression "puVar30 + 0x175d70" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" ( (pointer_expression "**(code **)(puVar30 + 0x175bf8)" * (pointer_expression "*(code **)(puVar30 + 0x175bf8)" * (cast_expression "(code **)(puVar30 + 0x175bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175bf8)" ( (binary_expression "puVar30 + 0x175bf8" identifier + number_literal) ))))) )) (argument_list "(pcStack_10fc)" ( identifier ))) ;) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_00287858;" goto statement_identifier ;) })) }))) (labeled_statement "LAB_00286534:\n  pcStack_10fc = (char *)0x0;" statement_identifier : (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (labeled_statement "LAB_00287858:\n  if (iStack_84 != **(int **)(puVar30 + 0x175918)) {\n    pcVar31 = *(code **)(puVar30 + 0x17574c);\n    (*pcVar31)();\n    iVar19 = *(int *)(pcVar31 + 0x171abc);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x483c);\n    iVar3 = *(int *)(pcVar31 + 0x171dbc) + 0x4930;\n    *(int *)(iVar20 + 0x18) = iVar3;\n    iVar2 = *(int *)(pcVar31 + 0x171dbc) + 0x3578;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4820);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4800);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47dc);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47c0);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47a8);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4788);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d8,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78dc,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4760);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e8,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78f4,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    return (char *)0x810;\n  }" statement_identifier : (if_statement "if (iStack_84 != **(int **)(puVar30 + 0x175918)) {\n    pcVar31 = *(code **)(puVar30 + 0x17574c);\n    (*pcVar31)();\n    iVar19 = *(int *)(pcVar31 + 0x171abc);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x483c);\n    iVar3 = *(int *)(pcVar31 + 0x171dbc) + 0x4930;\n    *(int *)(iVar20 + 0x18) = iVar3;\n    iVar2 = *(int *)(pcVar31 + 0x171dbc) + 0x3578;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4820);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4800);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47dc);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47c0);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47a8);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4788);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d8,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78dc,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4760);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e8,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78f4,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    return (char *)0x810;\n  }" if (parenthesized_expression "(iStack_84 != **(int **)(puVar30 + 0x175918))" ( (binary_expression "iStack_84 != **(int **)(puVar30 + 0x175918)" identifier != (pointer_expression "**(int **)(puVar30 + 0x175918)" * (pointer_expression "*(int **)(puVar30 + 0x175918)" * (cast_expression "(int **)(puVar30 + 0x175918)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x175918)" ( (binary_expression "puVar30 + 0x175918" identifier + number_literal) )))))) )) (compound_statement "{\n    pcVar31 = *(code **)(puVar30 + 0x17574c);\n    (*pcVar31)();\n    iVar19 = *(int *)(pcVar31 + 0x171abc);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x483c);\n    iVar3 = *(int *)(pcVar31 + 0x171dbc) + 0x4930;\n    *(int *)(iVar20 + 0x18) = iVar3;\n    iVar2 = *(int *)(pcVar31 + 0x171dbc) + 0x3578;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4820);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4800);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47dc);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47c0);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47a8);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4788);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d8,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78dc,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4760);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e8,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78f4,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    return (char *)0x810;\n  }" { (expression_statement "pcVar31 = *(code **)(puVar30 + 0x17574c);" (assignment_expression "pcVar31 = *(code **)(puVar30 + 0x17574c)" identifier = (pointer_expression "*(code **)(puVar30 + 0x17574c)" * (cast_expression "(code **)(puVar30 + 0x17574c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar30 + 0x17574c)" ( (binary_expression "puVar30 + 0x17574c" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar31)();" (call_expression "(*pcVar31)()" (parenthesized_expression "(*pcVar31)" ( (pointer_expression "*pcVar31" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "iVar19 = *(int *)(pcVar31 + 0x171abc);" (assignment_expression "iVar19 = *(int *)(pcVar31 + 0x171abc)" identifier = (pointer_expression "*(int *)(pcVar31 + 0x171abc)" * (cast_expression "(int *)(pcVar31 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171abc)" ( (binary_expression "pcVar31 + 0x171abc" identifier + number_literal) ))))) ;) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x483c);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x483c)" identifier = (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x483c)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" * (cast_expression "(code **)(pcVar31 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1727d0)" ( (binary_expression "pcVar31 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x483c)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x7890" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" * (cast_expression "(int *)(pcVar31 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171abc)" ( (binary_expression "pcVar31 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171b2c) + -0x483c" (pointer_expression "*(int *)(pcVar31 + 0x171b2c)" * (cast_expression "(int *)(pcVar31 + 0x171b2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171b2c)" ( (binary_expression "pcVar31 + 0x171b2c" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "iVar3 = *(int *)(pcVar31 + 0x171dbc) + 0x4930;" (assignment_expression "iVar3 = *(int *)(pcVar31 + 0x171dbc) + 0x4930" identifier = (binary_expression "*(int *)(pcVar31 + 0x171dbc) + 0x4930" (pointer_expression "*(int *)(pcVar31 + 0x171dbc)" * (cast_expression "(int *)(pcVar31 + 0x171dbc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171dbc)" ( (binary_expression "pcVar31 + 0x171dbc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar2 = *(int *)(pcVar31 + 0x171dbc) + 0x3578;" (assignment_expression "iVar2 = *(int *)(pcVar31 + 0x171dbc) + 0x3578" identifier = (binary_expression "*(int *)(pcVar31 + 0x171dbc) + 0x3578" (pointer_expression "*(int *)(pcVar31 + 0x171dbc)" * (cast_expression "(int *)(pcVar31 + 0x171dbc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171dbc)" ( (binary_expression "pcVar31 + 0x171dbc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" * (cast_expression "(code **)(pcVar31 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1720b0)" ( (binary_expression "pcVar31 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4820);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4820)" identifier = (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4820)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" * (cast_expression "(code **)(pcVar31 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1727d0)" ( (binary_expression "pcVar31 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4820)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x78a0" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" * (cast_expression "(int *)(pcVar31 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171abc)" ( (binary_expression "pcVar31 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171b2c) + -0x4820" (pointer_expression "*(int *)(pcVar31 + 0x171b2c)" * (cast_expression "(int *)(pcVar31 + 0x171b2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171b2c)" ( (binary_expression "pcVar31 + 0x171b2c" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" * (cast_expression "(code **)(pcVar31 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1720b0)" ( (binary_expression "pcVar31 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4800);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4800)" identifier = (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4800)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" * (cast_expression "(code **)(pcVar31 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1727d0)" ( (binary_expression "pcVar31 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4800)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x78ac" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" * (cast_expression "(int *)(pcVar31 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171abc)" ( (binary_expression "pcVar31 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171b2c) + -0x4800" (pointer_expression "*(int *)(pcVar31 + 0x171b2c)" * (cast_expression "(int *)(pcVar31 + 0x171b2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171b2c)" ( (binary_expression "pcVar31 + 0x171b2c" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" * (cast_expression "(code **)(pcVar31 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1720b0)" ( (binary_expression "pcVar31 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47dc);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47dc)" identifier = (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47dc)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" * (cast_expression "(code **)(pcVar31 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1727d0)" ( (binary_expression "pcVar31 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47dc)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x78b8" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" * (cast_expression "(int *)(pcVar31 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171abc)" ( (binary_expression "pcVar31 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171b2c) + -0x47dc" (pointer_expression "*(int *)(pcVar31 + 0x171b2c)" * (cast_expression "(int *)(pcVar31 + 0x171b2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171b2c)" ( (binary_expression "pcVar31 + 0x171b2c" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" * (cast_expression "(code **)(pcVar31 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1720b0)" ( (binary_expression "pcVar31 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47c0);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47c0)" identifier = (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47c0)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" * (cast_expression "(code **)(pcVar31 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1727d0)" ( (binary_expression "pcVar31 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47c0)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x78c0" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" * (cast_expression "(int *)(pcVar31 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171abc)" ( (binary_expression "pcVar31 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171b2c) + -0x47c0" (pointer_expression "*(int *)(pcVar31 + 0x171b2c)" * (cast_expression "(int *)(pcVar31 + 0x171b2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171b2c)" ( (binary_expression "pcVar31 + 0x171b2c" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" * (cast_expression "(code **)(pcVar31 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1720b0)" ( (binary_expression "pcVar31 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47a8);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47a8)" identifier = (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47a8)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" * (cast_expression "(code **)(pcVar31 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1727d0)" ( (binary_expression "pcVar31 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47a8)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x78cc" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" * (cast_expression "(int *)(pcVar31 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171abc)" ( (binary_expression "pcVar31 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171b2c) + -0x47a8" (pointer_expression "*(int *)(pcVar31 + 0x171b2c)" * (cast_expression "(int *)(pcVar31 + 0x171b2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171b2c)" ( (binary_expression "pcVar31 + 0x171b2c" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" * (cast_expression "(code **)(pcVar31 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1720b0)" ( (binary_expression "pcVar31 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4788);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4788)" identifier = (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4788)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" * (cast_expression "(code **)(pcVar31 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1727d0)" ( (binary_expression "pcVar31 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4788)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x78d4" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" * (cast_expression "(int *)(pcVar31 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171abc)" ( (binary_expression "pcVar31 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171b2c) + -0x4788" (pointer_expression "*(int *)(pcVar31 + 0x171b2c)" * (cast_expression "(int *)(pcVar31 + 0x171b2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171b2c)" ( (binary_expression "pcVar31 + 0x171b2c" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" * (cast_expression "(code **)(pcVar31 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1720b0)" ( (binary_expression "pcVar31 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (expression_statement "iVar13 = *(int *)(pcVar31 + 0x171b2c);" (assignment_expression "iVar13 = *(int *)(pcVar31 + 0x171b2c)" identifier = (pointer_expression "*(int *)(pcVar31 + 0x171b2c)" * (cast_expression "(int *)(pcVar31 + 0x171b2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171b2c)" ( (binary_expression "pcVar31 + 0x171b2c" identifier + number_literal) ))))) ;) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d8,iVar13 + -0x4774);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d8,iVar13 + -0x4774)" identifier = (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d8,iVar13 + -0x4774)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" * (cast_expression "(code **)(pcVar31 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1727d0)" ( (binary_expression "pcVar31 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d8,iVar13 + -0x4774)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x78d8" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" * (cast_expression "(int *)(pcVar31 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171abc)" ( (binary_expression "pcVar31 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar13 + -0x4774" identifier + number_literal) )))) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" * (cast_expression "(code **)(pcVar31 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1720b0)" ( (binary_expression "pcVar31 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78dc,iVar13 + -0x4774);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78dc,iVar13 + -0x4774)" identifier = (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78dc,iVar13 + -0x4774)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" * (cast_expression "(code **)(pcVar31 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1727d0)" ( (binary_expression "pcVar31 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78dc,iVar13 + -0x4774)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x78dc" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" * (cast_expression "(int *)(pcVar31 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171abc)" ( (binary_expression "pcVar31 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar13 + -0x4774" identifier + number_literal) )))) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" * (cast_expression "(code **)(pcVar31 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1720b0)" ( (binary_expression "pcVar31 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4760);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4760)" identifier = (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4760)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" * (cast_expression "(code **)(pcVar31 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1727d0)" ( (binary_expression "pcVar31 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4760)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x78e0" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" * (cast_expression "(int *)(pcVar31 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171abc)" ( (binary_expression "pcVar31 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171b2c) + -0x4760" (pointer_expression "*(int *)(pcVar31 + 0x171b2c)" * (cast_expression "(int *)(pcVar31 + 0x171b2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171b2c)" ( (binary_expression "pcVar31 + 0x171b2c" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" * (cast_expression "(code **)(pcVar31 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1720b0)" ( (binary_expression "pcVar31 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (expression_statement "iVar13 = *(int *)(pcVar31 + 0x171b2c);" (assignment_expression "iVar13 = *(int *)(pcVar31 + 0x171b2c)" identifier = (pointer_expression "*(int *)(pcVar31 + 0x171b2c)" * (cast_expression "(int *)(pcVar31 + 0x171b2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171b2c)" ( (binary_expression "pcVar31 + 0x171b2c" identifier + number_literal) ))))) ;) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e8,iVar13 + -0x4750);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e8,iVar13 + -0x4750)" identifier = (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e8,iVar13 + -0x4750)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" * (cast_expression "(code **)(pcVar31 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1727d0)" ( (binary_expression "pcVar31 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e8,iVar13 + -0x4750)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x78e8" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" * (cast_expression "(int *)(pcVar31 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171abc)" ( (binary_expression "pcVar31 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar13 + -0x4750" identifier + number_literal) )))) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" * (cast_expression "(code **)(pcVar31 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1720b0)" ( (binary_expression "pcVar31 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78f4,iVar13 + -0x4750);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78f4,iVar13 + -0x4750)" identifier = (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78f4,iVar13 + -0x4750)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" * (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" * (cast_expression "(code **)(pcVar31 + 0x1727d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1727d0)" ( (binary_expression "pcVar31 + 0x1727d0" identifier + number_literal) ))))) )) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78f4,iVar13 + -0x4750)" ( (binary_expression "iVar19 + 0x7898" identifier + number_literal) , (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x78f4" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" * (cast_expression "(int *)(pcVar31 + 0x171abc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x171abc)" ( (binary_expression "pcVar31 + 0x171abc" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar13 + -0x4750" identifier + number_literal) )))) ;) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" * (cast_expression "(int *)(iVar20 + 0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x18)" ( (binary_expression "iVar20 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" * (cast_expression "(int *)(iVar20 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x1c)" ( (binary_expression "iVar20 + 0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" * (cast_expression "(uint *)(iVar20 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + 0x2c)" ( (binary_expression "iVar20 + 0x2c" identifier + number_literal) )))) ^ number_literal) | number_literal)) ;) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" ( (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" * (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" * (cast_expression "(code **)(pcVar31 + 0x1720b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x1720b0)" ( (binary_expression "pcVar31 + 0x1720b0" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier ))) ;) (return_statement "return (char *)0x810;" return (cast_expression "(char *)0x810" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ;) }))) (return_statement "return pcStack_10fc;" return identifier ;) })))
(translation_unit (function_definition TYPE (pointer_declarator * (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE (pointer_declarator * IDENT)) )))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE 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) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == (char_literal ' character ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) < IDENT) )) && (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == (char_literal ' character ')) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == (char_literal ' character ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) , IDENT , (binary_expression IDENT + LIT) ))) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == (char_literal ' character ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == (char_literal ' character ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) }))) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (goto_statement goto statement_identifier ;) })) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) <= (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != (char_literal ' escape_sequence ')) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (while_statement while (parenthesized_expression ( BOOL )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (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 (pointer_expression * IDENT) + (binary_expression IDENT * LIT)) )))) & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (pointer_expression * IDENT))) ;) (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 (pointer_expression * IDENT) + (binary_expression IDENT * LIT)) )))) & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != IDENT) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) , (binary_expression (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == IDENT)) ))) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == (char_literal ' escape_sequence ')) ))) )) (break_statement break ;)) })) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (cast_expression ( (type_descriptor TYPE) ) (pointer_expression * IDENT)) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (cast_expression ( (type_descriptor TYPE) ) (pointer_expression * IDENT)) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (goto_statement goto statement_identifier ;)) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) , IDENT , (binary_expression IDENT + LIT) ))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (subscript_expression IDENT [ (binary_expression (binary_expression IDENT * LIT) + LIT) ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != LIT) )) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) })))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == (char_literal ' character ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != LIT) )) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) }))) }))) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) )) (compound_statement { (return_statement return IDENT ;) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (return_statement return IDENT ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (return_statement return IDENT ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression IDENT + LIT) ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (return_statement return IDENT ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , LIT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression IDENT + LIT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) })) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT , LIT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression IDENT + LIT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) })) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT , LIT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (binary_expression IDENT != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (binary_expression IDENT + LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT * LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression IDENT + LIT) , LIT ))))) ;) (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 = (binary_expression IDENT + IDENT)) ;) })) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (goto_statement goto statement_identifier ;) })) })) (if_statement if (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 = (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) + LIT)) , (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT)) == LIT)) ))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (while_statement while (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT , IDENT , IDENT , IDENT , IDENT , (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , LIT , (pointer_expression & IDENT) , (pointer_expression & IDENT) , (pointer_expression & IDENT) )))) , (binary_expression IDENT == LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT , IDENT , IDENT , IDENT , IDENT , (binary_expression IDENT + LIT) , IDENT , LIT , (pointer_expression & IDENT) , (pointer_expression & IDENT) , (pointer_expression & IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT , LIT ))))) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression IDENT + LIT) , LIT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , (binary_expression IDENT + LIT) ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression IDENT + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT , LIT )))) ;) }))) })))))) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( BOOL )) ;)) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( )))) ;) (while_statement while (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT , IDENT , IDENT , IDENT , IDENT , (binary_expression IDENT + LIT) , IDENT , LIT , (pointer_expression & IDENT) , (pointer_expression & IDENT) , (pointer_expression & IDENT) )))) , (binary_expression IDENT == LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (binary_expression LIT < IDENT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) (argument_list ( (binary_expression (binary_expression IDENT + IDENT) + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT - IDENT)) ;) }))) })) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT < LIT) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) , (binary_expression IDENT < LIT)) ))) )) (goto_statement goto statement_identifier ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression IDENT - IDENT) ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT ))) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (pointer_expression * IDENT) ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != (binary_expression IDENT + IDENT)) )) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + LIT) + IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == 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 { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + IDENT) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (pointer_expression * IDENT) ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != LIT) )) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression IDENT & LIT) ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + IDENT) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (pointer_expression * IDENT) ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != LIT) )) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }))) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))))) ;) })) }) while (parenthesized_expression ( BOOL )) ;)) })) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT , LIT ))) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression IDENT - IDENT) , (binary_expression IDENT + IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (goto_statement goto statement_identifier ;)) (break_statement break ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT < IDENT) )) ;) })) }) while (parenthesized_expression ( BOOL )) ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT , LIT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (while_statement while (parenthesized_expression ( BOOL )) (compound_statement { (while_statement while (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) , (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT))) , (binary_expression IDENT != LIT)) )))) )) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (binary_expression IDENT + LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT * LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression IDENT + LIT) , LIT ))))) ;) (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 = (binary_expression IDENT + IDENT)) ;) })) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (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 ( (comma_expression (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) + LIT)) , (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT)) == LIT)) ))) )) (break_statement break ;)) (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (while_statement while (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT , IDENT , IDENT , IDENT , IDENT , (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , LIT , (pointer_expression & IDENT) , (pointer_expression & IDENT) , (pointer_expression & IDENT) )))) , (binary_expression IDENT == LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT , IDENT , IDENT , IDENT , IDENT , (binary_expression IDENT + LIT) , IDENT , LIT , (pointer_expression & IDENT) , (pointer_expression & IDENT) , (pointer_expression & IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT , LIT )))) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression IDENT + LIT) , LIT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression IDENT + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT , LIT )))) ;) }))) })))))) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( BOOL )) ;)) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( )))) ;) (while_statement while (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT , IDENT , IDENT , IDENT , IDENT , (binary_expression IDENT + LIT) , IDENT , LIT , (pointer_expression & IDENT) , (pointer_expression & IDENT) , (pointer_expression & IDENT) )))) , (binary_expression IDENT == LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (binary_expression LIT < IDENT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) (argument_list ( (binary_expression (binary_expression IDENT + IDENT) + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT - IDENT)) ;) }))) })) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression IDENT - IDENT) ))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression IDENT & LIT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT ))) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (pointer_expression * IDENT) ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != (binary_expression IDENT + IDENT)) )) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + LIT) + IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (goto_statement goto statement_identifier ;)) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + IDENT) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (pointer_expression * IDENT) ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != LIT) )) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression IDENT & LIT) ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression IDENT & LIT) ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + IDENT) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (pointer_expression * IDENT) ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != LIT) )) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }))) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))))) ;) })) })) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;)) })) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression LIT < IDENT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) , (binary_expression LIT < IDENT)) ))) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression IDENT - IDENT) ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (goto_statement goto statement_identifier ;)) })) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression IDENT + LIT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) })) (goto_statement goto statement_identifier ;) }))) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (goto_statement goto statement_identifier ;)) }))) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT ))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;)) })) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression IDENT + LIT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) })) (goto_statement goto statement_identifier ;) }))) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression LIT < IDENT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) , (binary_expression LIT < IDENT)) ))) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression IDENT - IDENT) ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (goto_statement goto statement_identifier ;)) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) }))) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT ))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression IDENT + LIT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) })) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , IDENT , IDENT )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression IDENT + LIT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) })) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression IDENT + LIT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression IDENT + LIT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (goto_statement goto statement_identifier ;) })) }) (else_clause else (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT , LIT ))) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression IDENT - IDENT) , (binary_expression IDENT + IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (goto_statement goto statement_identifier ;)) (break_statement break ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT < IDENT) )) ;) })) }) while (parenthesized_expression ( BOOL )) ;) })) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression IDENT + LIT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (goto_statement goto statement_identifier ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression IDENT + LIT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (goto_statement goto statement_identifier ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (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) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) }) while (parenthesized_expression ( (binary_expression IDENT == LIT) )) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression IDENT & LIT) ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) (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) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_array_declarator (abstract_parenthesized_declarator ( (abstract_pointer_declarator *) )) [ LIT ])) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT + LIT) >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT + LIT) >> LIT) )))) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , IDENT ))) , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (char_literal ' escape_sequence ')) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (do_statement do (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) }) while (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) }) while (parenthesized_expression ( (binary_expression IDENT != LIT) )) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT ))) ;) })) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) , (binary_expression IDENT != LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression IDENT * LIT) + LIT) + IDENT)) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != LIT) )) ;) })) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) (argument_list ( IDENT ))) ;) }))))) }) (else_clause else (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression IDENT & LIT) ))) ;) }))) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (goto_statement goto statement_identifier ;) })) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression IDENT + LIT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (goto_statement goto statement_identifier ;) })) }))) }))) }))) }))) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (goto_statement goto statement_identifier ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;)) (goto_statement goto statement_identifier ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;)) (goto_statement goto statement_identifier ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;)) (goto_statement goto statement_identifier ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;)) (goto_statement goto statement_identifier ;) (labeled_statement statement_identifier : (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) }) while (parenthesized_expression ( (binary_expression IDENT != LIT) )) ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression IDENT + LIT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (goto_statement goto statement_identifier ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , IDENT , IDENT )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression IDENT + LIT) )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT , IDENT )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression IDENT + LIT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) })) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression IDENT + LIT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) })) (goto_statement goto statement_identifier ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT , LIT ))) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression IDENT - IDENT) , (binary_expression IDENT + IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (goto_statement goto statement_identifier ;)) (break_statement break ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT < IDENT) )) ;) })) }) while (parenthesized_expression ( BOOL )) ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression IDENT + LIT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) })) (goto_statement goto statement_identifier ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , IDENT , IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) }))) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression IDENT + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression IDENT + LIT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) })) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression IDENT + LIT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) })) (goto_statement goto statement_identifier ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT , LIT ))) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression IDENT - IDENT) , (binary_expression IDENT + IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (goto_statement goto statement_identifier ;)) (break_statement break ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT < IDENT) )) ;) })) }) while (parenthesized_expression ( BOOL )) ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression IDENT + LIT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) })) (goto_statement goto statement_identifier ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , IDENT , IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }))) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression IDENT + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression IDENT + LIT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) })) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression IDENT + LIT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) })) (goto_statement goto statement_identifier ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT , LIT ))) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression IDENT - IDENT) , (binary_expression IDENT + IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (goto_statement goto statement_identifier ;)) (break_statement break ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT < IDENT) )) ;) })) }) while (parenthesized_expression ( BOOL )) ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression IDENT + LIT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) })) (goto_statement goto statement_identifier ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , IDENT , IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression IDENT + LIT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (goto_statement goto statement_identifier ;) })) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;)) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT != (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression IDENT + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ^ LIT) | LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression IDENT + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ^ LIT) | LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression IDENT + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ^ LIT) | LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression IDENT + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ^ LIT) | LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression IDENT + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ^ LIT) | LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression IDENT + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ^ LIT) | LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression IDENT + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ^ LIT) | LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression IDENT + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ^ LIT) | LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression IDENT + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ^ LIT) | LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression IDENT + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ^ LIT) | LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression IDENT + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ^ LIT) | LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression IDENT + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ^ LIT) | LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (return_statement return (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) ;) }))) (return_statement return IDENT ;) })))
(function_definition "char * FUN_0028458c(char *param_1,char *param_2)\n\n{\n  undefined1 uVar16;\n  char *pcVar1;\n  int iVar2;\n  int iVar3;\n  undefined1 *puVar4;\n  char cVar17;\n  int iVar5;\n  int iVar6;\n  byte bVar18;\n  int iVar7;\n  int iVar8;\n  int iVar9;\n  undefined4 uVar10;\n  int iVar11;\n  uint uVar12;\n  int iVar13;\n  int iVar14;\n  undefined4 uVar15;\n  undefined4 extraout_v1;\n  uint extraout_v1_00;\n  uint extraout_v1_01;\n  undefined4 extraout_v1_02;\n  undefined4 extraout_v1_03;\n  undefined4 extraout_v1_04;\n  undefined4 extraout_v1_05;\n  int iVar19;\n  int iVar20;\n  undefined1 *puVar21;\n  int iVar22;\n  char *unaff_s1;\n  char *pcVar23;\n  char *unaff_s2;\n  int iVar24;\n  int unaff_s3;\n  undefined4 *puVar25;\n  char *unaff_s4;\n  undefined4 uVar26;\n  char *unaff_s5;\n  char *pcVar27;\n  int unaff_s6;\n  int iVar28;\n  uint uVar29;\n  int unaff_s7;\n  undefined *puVar30;\n  int *unaff_s8;\n  code *pcVar31;\n  char *pcStack_10fc;\n  undefined1 *puStack_10ec;\n  uint uStack_10e4;\n  undefined1 *puStack_10dc;\n  uint uStack_10d4;\n  int iStack_10cc;\n  uint uStack_10c8;\n  undefined1 uStack_10b0;\n  undefined1 uStack_10af;\n  char cStack_10ae;\n  undefined1 uStack_10ad;\n  undefined4 uStack_10ac;\n  int iStack_10a8;\n  undefined4 uStack_10a4;\n  undefined4 uStack_10a0;\n  undefined4 uStack_109c;\n  undefined4 uStack_1098;\n  undefined1 auStack_1094 [4];\n  undefined4 uStack_1090;\n  undefined4 uStack_108c;\n  undefined1 uStack_1088;\n  undefined1 auStack_1084 [4096];\n  int iStack_84;\n  char *pcStack_80;\n  char *pcStack_7c;\n  char *pcStack_78;\n  int iStack_74;\n  char *pcStack_70;\n  char *pcStack_6c;\n  int iStack_68;\n  int iStack_64;\n  int *piStack_60;\n  code *pcStack_5c;\n  undefined1 local_30 [3];\n  char cStack_2d;\n  int local_2c;\n  \n  puVar30 = PTR_s__003f9950;\n  local_2c = *(int *)PTR___stack_chk_guard_003fa248;\n  if (*param_1 == '\0') {\n    pcVar1 = (char *)0x0;\n  }\n  else {\n    unaff_s2 = param_1;\n    if (*param_1 == ';') {\n      pcVar1 = (char *)0x1;\nLAB_0028466c:\n      if (param_1 == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar1 = param_1 + 1;\n      iVar20 = 1;\n      param_2 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }\n  }\nLAB_00284620:\n  if (local_2c == *(int *)PTR___stack_chk_guard_003fa248) {\n    return pcVar1;\n  }\n  pcVar31 = FUN_00284930;\n  iVar20 = local_2c;\n  puVar30 = PTR___stack_chk_fail_003fa07c;\n  (*(code *)PTR___stack_chk_fail_003fa07c)();\n  iStack_84 = **(int **)(puVar30 + 0x175918);\n  pcStack_80 = pcVar1;\n  pcStack_7c = unaff_s1;\n  pcStack_78 = unaff_s2;\n  iStack_74 = unaff_s3;\n  pcStack_70 = unaff_s4;\n  pcStack_6c = unaff_s5;\n  iStack_68 = unaff_s6;\n  iStack_64 = unaff_s7;\n  piStack_60 = unaff_s8;\n  pcStack_5c = pcVar31;\n  if (iVar20 == 0) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d48,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a5,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }\n  if (*(int *)(iVar20 + 0x3214) != -0x54535255) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d70,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a6,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }\n  if (*(int *)(iVar20 + 0x3210) != 0) {\n    (**(code **)(puVar30 + 0x1758c8))\n              (0x8000,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700,\n               0x4a8,*(int *)(puVar30 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210);\n  }\n  if (param_2 == (char *)0x0) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x4c80,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4aa,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }\n  if (*(int *)(param_2 + 0x1c) != -0x54535255) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x595c,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4ab,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }\n  pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175cf4))(iVar20,param_2);\n  iVar2 = (**(code **)(puVar30 + 0x175934))(iVar20,pcStack_10fc,2,param_2);\n  if (iVar2 == 0) {\n    (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n    pcStack_10fc = (char *)0x0;\n    goto LAB_00287858;\n  }\n  pcStack_10fc[0x18] = '\0';\n  pcStack_10fc[0x19] = '\0';\n  pcStack_10fc[0x1a] = '\0';\n  pcStack_10fc[0x1b] = '\x01';\n  pcStack_10fc[0x1c] = '\0';\n  pcStack_10fc[0x1d] = '\0';\n  pcStack_10fc[0x1e] = '\0';\n  pcStack_10fc[0x1f] = '\x01';\n  iVar2 = (**(code **)(puVar30 + 0x175578))(pcStack_10fc,param_2);\n  if (iVar2 == 0) {\n    (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n    pcStack_10fc = (char *)0x0;\n    goto LAB_00287858;\n  }\n  iVar2 = iVar20 + 0x210;\n  iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x7890,4);\n  if (iVar3 == 0) {\n    iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n    if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c2,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(1,1);\n    if (puVar4 == (undefined1 *)0x0) {\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c7,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    *puVar4 = 0;\n    (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),puVar4);\n    iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78a0);\n    if (iVar19 != 0) {\n      iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac);\n      if (iVar19 == 0) {\n        puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n        if (puVar4 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar11 = 0;\n          iVar13 = *(int *)(puVar30 + 0x175020);\n          iVar22 = *(int *)(puVar30 + 0x1752b0);\n          iVar14 = *(int *)(puVar30 + 0x174fb8);\n          puVar21 = puVar4;\nLAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }\n      uStack_10d4 = 1;\n      goto LAB_00286050;\n    }\n    puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n    if (puVar4 == (undefined1 *)0x0) {\nLAB_0028544c:\n      uStack_10d4 = 0xffffffff;\n    }\n    else {\n      uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n      iStack_10cc = 0x1000;\n      uStack_10d4 = 0;\n      uStack_10c8 = 0;\n      uStack_10e4 = 0;\n      cVar17 = '\0';\n      puStack_10dc = (undefined1 *)0x0;\n      iVar19 = 0;\n      iVar11 = 0;\n      iVar13 = *(int *)(puVar30 + 0x175020);\n      iVar22 = *(int *)(puVar30 + 0x1752b0);\n      iVar14 = *(int *)(puVar30 + 0x174fb8);\n      puVar21 = puVar4;\n      while( true ) {\n        while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar11 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar9 = *(int *)(puVar30 + 0x174fc8);\n        iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n        iVar8 = 0;\n        while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0) {\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }\n        iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n        iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n        puVar21 = puVar4;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }\n      }\nLAB_0028573c:\n      (**(code **)(puVar30 + 0x175450))(uVar15);\n      if (iVar11 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar30 + 0x17575c))(iVar11);\n      }\nLAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x17575c))(iVar19);\n      }\n      if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n      }\n      (**(code **)(puVar30 + 0x17575c))(puVar4);\n      if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }\nLAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }\n        goto LAB_00287858;\n      }\n      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n    }\n    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n    goto LAB_00286050;\n  }\n  uStack_10d4 = 1;\n  goto LAB_00284a7c;\nLAB_00286038:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);\n  uStack_10d4 = 1;\n  goto LAB_00286050;\nLAB_00285f24:\n  (**(code **)(puVar30 + 0x175450))(uVar15);\n  if (iVar11 != 0) {\nLAB_00287be8:\n    (**(code **)(puVar30 + 0x17575c))(iVar11);\n  }\nLAB_00287bf8:\n  if (iVar19 != 0) {\n    (**(code **)(puVar30 + 0x17575c))(iVar19);\n  }\n  if (puStack_10ec != (undefined1 *)0x0) {\n    (**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n  }\n  (**(code **)(puVar30 + 0x17575c))(puVar4);\n  if ((int)uStack_10c8 < 1) {\nLAB_00287cd8:\n    if (uStack_10d4 == 0) {\n      uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n      (**(code **)(puVar30 + 0x1756a8))(uVar15);\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,\n                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n  }\n  else {\n    iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n    if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n      (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n      iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n      if (-1 < iVar19) goto LAB_00287cd8;\n    }\nLAB_00287db0:\n    uStack_10d4 = 0xffffffff;\n  }\n  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\nLAB_00286050:\n  uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n  (**(code **)(puVar30 + 0x175ba0))(iVar3);\n  iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1);\n  if (iVar19 == 0) {\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4ee,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }\n    goto LAB_00287858;\n  }\n  iVar13 = (**(code **)(puVar30 + 0x175d80))\n                     (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f8,iVar19,param_2);\n  (**(code **)(puVar30 + 0x1754e4))(iVar19);\n  uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n  (**(code **)(puVar30 + 0x1756a8))(uVar15);\n  (**(code **)(puVar30 + 0x175634))(iVar3);\n  if (iVar13 == 0) {\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4f6,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }\n    goto LAB_00287858;\n  }\nLAB_00284a7c:\n  iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78b8,4);\n  if (iVar3 == 0) {\n    (**(code **)(puVar30 + 0x175464))(auStack_1084,0x1000,*(int *)(puVar30 + 0x175020) + -0x4858,1);\n    iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n    if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x500,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      }\n    }\n    else {\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n      if (iVar19 == 0) {\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);\n        if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }\n    }\n    goto LAB_00286534;\n  }\n  iVar3 = *(int *)(puVar30 + 0x174fb0);\n  goto LAB_00284aa4;\nLAB_00286b70:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);\n  goto LAB_00286b84;\nLAB_00286f40:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);\n  goto LAB_00286f50;\nLAB_00287414:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);\n  goto LAB_00287424;\nLAB_00287758:\n  (**(code **)(puVar30 + 0x1756a8))(iVar3);\n  goto LAB_00287768;\nLAB_002867c8:\n  do {\n    iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n  } while (iVar13 != -1);\nLAB_002867e4:\n  uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n  (**(code **)(puVar30 + 0x1756a8))(uVar15);\n  (**(code **)(puVar30 + 0x175634))(iVar19);\nLAB_00286b84:\n  uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n  (**(code **)(puVar30 + 0x175ba0))(iVar3);\n  iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_02);\n  if (iVar19 == 0) {\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x535,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }\n  }\n  else {\n    iVar13 = (**(code **)(puVar30 + 0x175d80))(pcStack_10fc,auStack_1084,iVar19,param_2);\n    (**(code **)(puVar30 + 0x1754e4))(iVar19);\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    iVar3 = *(int *)(puVar30 + 0x174fb0);\n    if (iVar13 != 0) {\nLAB_00284aa4:\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc);\n      if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0);\n      if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      iVar2 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4);\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar2 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);\n        (**(code **)(puVar30 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar2);\n      }\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc);\n      goto LAB_00287858;\n    }\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x53d,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }\n  }\nLAB_00286534:\n  pcStack_10fc = (char *)0x0;\nLAB_00287858:\n  if (iStack_84 != **(int **)(puVar30 + 0x175918)) {\n    pcVar31 = *(code **)(puVar30 + 0x17574c);\n    (*pcVar31)();\n    iVar19 = *(int *)(pcVar31 + 0x171abc);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x483c);\n    iVar3 = *(int *)(pcVar31 + 0x171dbc) + 0x4930;\n    *(int *)(iVar20 + 0x18) = iVar3;\n    iVar2 = *(int *)(pcVar31 + 0x171dbc) + 0x3578;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4820);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4800);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47dc);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47c0);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47a8);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4788);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d8,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78dc,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4760);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e8,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78f4,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    return (char *)0x810;\n  }\n  return pcStack_10fc;\n}" (primitive_type "char") (pointer_declarator "* FUN_0028458c(char *param_1,char *param_2)" (* "*") (function_declarator "FUN_0028458c(char *param_1,char *param_2)" (identifier "FUN_0028458c") (parameter_list "(char *param_1,char *param_2)" (( "(") (parameter_declaration "char *param_1" (primitive_type "char") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) (, ",") (parameter_declaration "char *param_2" (primitive_type "char") (pointer_declarator "*param_2" (* "*") (identifier "param_2"))) () ")")))) (compound_statement "{\n  undefined1 uVar16;\n  char *pcVar1;\n  int iVar2;\n  int iVar3;\n  undefined1 *puVar4;\n  char cVar17;\n  int iVar5;\n  int iVar6;\n  byte bVar18;\n  int iVar7;\n  int iVar8;\n  int iVar9;\n  undefined4 uVar10;\n  int iVar11;\n  uint uVar12;\n  int iVar13;\n  int iVar14;\n  undefined4 uVar15;\n  undefined4 extraout_v1;\n  uint extraout_v1_00;\n  uint extraout_v1_01;\n  undefined4 extraout_v1_02;\n  undefined4 extraout_v1_03;\n  undefined4 extraout_v1_04;\n  undefined4 extraout_v1_05;\n  int iVar19;\n  int iVar20;\n  undefined1 *puVar21;\n  int iVar22;\n  char *unaff_s1;\n  char *pcVar23;\n  char *unaff_s2;\n  int iVar24;\n  int unaff_s3;\n  undefined4 *puVar25;\n  char *unaff_s4;\n  undefined4 uVar26;\n  char *unaff_s5;\n  char *pcVar27;\n  int unaff_s6;\n  int iVar28;\n  uint uVar29;\n  int unaff_s7;\n  undefined *puVar30;\n  int *unaff_s8;\n  code *pcVar31;\n  char *pcStack_10fc;\n  undefined1 *puStack_10ec;\n  uint uStack_10e4;\n  undefined1 *puStack_10dc;\n  uint uStack_10d4;\n  int iStack_10cc;\n  uint uStack_10c8;\n  undefined1 uStack_10b0;\n  undefined1 uStack_10af;\n  char cStack_10ae;\n  undefined1 uStack_10ad;\n  undefined4 uStack_10ac;\n  int iStack_10a8;\n  undefined4 uStack_10a4;\n  undefined4 uStack_10a0;\n  undefined4 uStack_109c;\n  undefined4 uStack_1098;\n  undefined1 auStack_1094 [4];\n  undefined4 uStack_1090;\n  undefined4 uStack_108c;\n  undefined1 uStack_1088;\n  undefined1 auStack_1084 [4096];\n  int iStack_84;\n  char *pcStack_80;\n  char *pcStack_7c;\n  char *pcStack_78;\n  int iStack_74;\n  char *pcStack_70;\n  char *pcStack_6c;\n  int iStack_68;\n  int iStack_64;\n  int *piStack_60;\n  code *pcStack_5c;\n  undefined1 local_30 [3];\n  char cStack_2d;\n  int local_2c;\n  \n  puVar30 = PTR_s__003f9950;\n  local_2c = *(int *)PTR___stack_chk_guard_003fa248;\n  if (*param_1 == '\0') {\n    pcVar1 = (char *)0x0;\n  }\n  else {\n    unaff_s2 = param_1;\n    if (*param_1 == ';') {\n      pcVar1 = (char *)0x1;\nLAB_0028466c:\n      if (param_1 == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar1 = param_1 + 1;\n      iVar20 = 1;\n      param_2 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }\n  }\nLAB_00284620:\n  if (local_2c == *(int *)PTR___stack_chk_guard_003fa248) {\n    return pcVar1;\n  }\n  pcVar31 = FUN_00284930;\n  iVar20 = local_2c;\n  puVar30 = PTR___stack_chk_fail_003fa07c;\n  (*(code *)PTR___stack_chk_fail_003fa07c)();\n  iStack_84 = **(int **)(puVar30 + 0x175918);\n  pcStack_80 = pcVar1;\n  pcStack_7c = unaff_s1;\n  pcStack_78 = unaff_s2;\n  iStack_74 = unaff_s3;\n  pcStack_70 = unaff_s4;\n  pcStack_6c = unaff_s5;\n  iStack_68 = unaff_s6;\n  iStack_64 = unaff_s7;\n  piStack_60 = unaff_s8;\n  pcStack_5c = pcVar31;\n  if (iVar20 == 0) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d48,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a5,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }\n  if (*(int *)(iVar20 + 0x3214) != -0x54535255) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d70,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a6,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }\n  if (*(int *)(iVar20 + 0x3210) != 0) {\n    (**(code **)(puVar30 + 0x1758c8))\n              (0x8000,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700,\n               0x4a8,*(int *)(puVar30 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210);\n  }\n  if (param_2 == (char *)0x0) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x4c80,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4aa,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }\n  if (*(int *)(param_2 + 0x1c) != -0x54535255) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x595c,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4ab,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }\n  pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175cf4))(iVar20,param_2);\n  iVar2 = (**(code **)(puVar30 + 0x175934))(iVar20,pcStack_10fc,2,param_2);\n  if (iVar2 == 0) {\n    (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n    pcStack_10fc = (char *)0x0;\n    goto LAB_00287858;\n  }\n  pcStack_10fc[0x18] = '\0';\n  pcStack_10fc[0x19] = '\0';\n  pcStack_10fc[0x1a] = '\0';\n  pcStack_10fc[0x1b] = '\x01';\n  pcStack_10fc[0x1c] = '\0';\n  pcStack_10fc[0x1d] = '\0';\n  pcStack_10fc[0x1e] = '\0';\n  pcStack_10fc[0x1f] = '\x01';\n  iVar2 = (**(code **)(puVar30 + 0x175578))(pcStack_10fc,param_2);\n  if (iVar2 == 0) {\n    (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n    pcStack_10fc = (char *)0x0;\n    goto LAB_00287858;\n  }\n  iVar2 = iVar20 + 0x210;\n  iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x7890,4);\n  if (iVar3 == 0) {\n    iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n    if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c2,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(1,1);\n    if (puVar4 == (undefined1 *)0x0) {\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c7,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    *puVar4 = 0;\n    (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),puVar4);\n    iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78a0);\n    if (iVar19 != 0) {\n      iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac);\n      if (iVar19 == 0) {\n        puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n        if (puVar4 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar11 = 0;\n          iVar13 = *(int *)(puVar30 + 0x175020);\n          iVar22 = *(int *)(puVar30 + 0x1752b0);\n          iVar14 = *(int *)(puVar30 + 0x174fb8);\n          puVar21 = puVar4;\nLAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }\n      uStack_10d4 = 1;\n      goto LAB_00286050;\n    }\n    puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n    if (puVar4 == (undefined1 *)0x0) {\nLAB_0028544c:\n      uStack_10d4 = 0xffffffff;\n    }\n    else {\n      uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n      iStack_10cc = 0x1000;\n      uStack_10d4 = 0;\n      uStack_10c8 = 0;\n      uStack_10e4 = 0;\n      cVar17 = '\0';\n      puStack_10dc = (undefined1 *)0x0;\n      iVar19 = 0;\n      iVar11 = 0;\n      iVar13 = *(int *)(puVar30 + 0x175020);\n      iVar22 = *(int *)(puVar30 + 0x1752b0);\n      iVar14 = *(int *)(puVar30 + 0x174fb8);\n      puVar21 = puVar4;\n      while( true ) {\n        while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar11 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar9 = *(int *)(puVar30 + 0x174fc8);\n        iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n        iVar8 = 0;\n        while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0) {\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }\n        iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n        iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n        puVar21 = puVar4;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }\n      }\nLAB_0028573c:\n      (**(code **)(puVar30 + 0x175450))(uVar15);\n      if (iVar11 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar30 + 0x17575c))(iVar11);\n      }\nLAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x17575c))(iVar19);\n      }\n      if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n      }\n      (**(code **)(puVar30 + 0x17575c))(puVar4);\n      if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }\nLAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }\n        goto LAB_00287858;\n      }\n      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n    }\n    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n    goto LAB_00286050;\n  }\n  uStack_10d4 = 1;\n  goto LAB_00284a7c;\nLAB_00286038:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);\n  uStack_10d4 = 1;\n  goto LAB_00286050;\nLAB_00285f24:\n  (**(code **)(puVar30 + 0x175450))(uVar15);\n  if (iVar11 != 0) {\nLAB_00287be8:\n    (**(code **)(puVar30 + 0x17575c))(iVar11);\n  }\nLAB_00287bf8:\n  if (iVar19 != 0) {\n    (**(code **)(puVar30 + 0x17575c))(iVar19);\n  }\n  if (puStack_10ec != (undefined1 *)0x0) {\n    (**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n  }\n  (**(code **)(puVar30 + 0x17575c))(puVar4);\n  if ((int)uStack_10c8 < 1) {\nLAB_00287cd8:\n    if (uStack_10d4 == 0) {\n      uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n      (**(code **)(puVar30 + 0x1756a8))(uVar15);\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,\n                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n  }\n  else {\n    iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n    if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n      (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n      iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n      if (-1 < iVar19) goto LAB_00287cd8;\n    }\nLAB_00287db0:\n    uStack_10d4 = 0xffffffff;\n  }\n  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\nLAB_00286050:\n  uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n  (**(code **)(puVar30 + 0x175ba0))(iVar3);\n  iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1);\n  if (iVar19 == 0) {\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4ee,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }\n    goto LAB_00287858;\n  }\n  iVar13 = (**(code **)(puVar30 + 0x175d80))\n                     (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f8,iVar19,param_2);\n  (**(code **)(puVar30 + 0x1754e4))(iVar19);\n  uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n  (**(code **)(puVar30 + 0x1756a8))(uVar15);\n  (**(code **)(puVar30 + 0x175634))(iVar3);\n  if (iVar13 == 0) {\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4f6,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }\n    goto LAB_00287858;\n  }\nLAB_00284a7c:\n  iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78b8,4);\n  if (iVar3 == 0) {\n    (**(code **)(puVar30 + 0x175464))(auStack_1084,0x1000,*(int *)(puVar30 + 0x175020) + -0x4858,1);\n    iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n    if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x500,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      }\n    }\n    else {\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n      if (iVar19 == 0) {\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);\n        if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }\n    }\n    goto LAB_00286534;\n  }\n  iVar3 = *(int *)(puVar30 + 0x174fb0);\n  goto LAB_00284aa4;\nLAB_00286b70:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);\n  goto LAB_00286b84;\nLAB_00286f40:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);\n  goto LAB_00286f50;\nLAB_00287414:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);\n  goto LAB_00287424;\nLAB_00287758:\n  (**(code **)(puVar30 + 0x1756a8))(iVar3);\n  goto LAB_00287768;\nLAB_002867c8:\n  do {\n    iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n  } while (iVar13 != -1);\nLAB_002867e4:\n  uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n  (**(code **)(puVar30 + 0x1756a8))(uVar15);\n  (**(code **)(puVar30 + 0x175634))(iVar19);\nLAB_00286b84:\n  uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n  (**(code **)(puVar30 + 0x175ba0))(iVar3);\n  iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_02);\n  if (iVar19 == 0) {\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x535,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }\n  }\n  else {\n    iVar13 = (**(code **)(puVar30 + 0x175d80))(pcStack_10fc,auStack_1084,iVar19,param_2);\n    (**(code **)(puVar30 + 0x1754e4))(iVar19);\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    iVar3 = *(int *)(puVar30 + 0x174fb0);\n    if (iVar13 != 0) {\nLAB_00284aa4:\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc);\n      if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0);\n      if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      iVar2 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4);\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar2 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);\n        (**(code **)(puVar30 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar2);\n      }\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc);\n      goto LAB_00287858;\n    }\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x53d,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }\n  }\nLAB_00286534:\n  pcStack_10fc = (char *)0x0;\nLAB_00287858:\n  if (iStack_84 != **(int **)(puVar30 + 0x175918)) {\n    pcVar31 = *(code **)(puVar30 + 0x17574c);\n    (*pcVar31)();\n    iVar19 = *(int *)(pcVar31 + 0x171abc);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x483c);\n    iVar3 = *(int *)(pcVar31 + 0x171dbc) + 0x4930;\n    *(int *)(iVar20 + 0x18) = iVar3;\n    iVar2 = *(int *)(pcVar31 + 0x171dbc) + 0x3578;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4820);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4800);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47dc);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47c0);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47a8);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4788);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d8,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78dc,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4760);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e8,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78f4,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    return (char *)0x810;\n  }\n  return pcStack_10fc;\n}" ({ "{") (declaration "undefined1 uVar16;" (type_identifier "undefined1") (identifier "uVar16") (; ";")) (declaration "char *pcVar1;" (primitive_type "char") (pointer_declarator "*pcVar1" (* "*") (identifier "pcVar1")) (; ";")) (declaration "int iVar2;" (primitive_type "int") (identifier "iVar2") (; ";")) (declaration "int iVar3;" (primitive_type "int") (identifier "iVar3") (; ";")) (declaration "undefined1 *puVar4;" (type_identifier "undefined1") (pointer_declarator "*puVar4" (* "*") (identifier "puVar4")) (; ";")) (declaration "char cVar17;" (primitive_type "char") (identifier "cVar17") (; ";")) (declaration "int iVar5;" (primitive_type "int") (identifier "iVar5") (; ";")) (declaration "int iVar6;" (primitive_type "int") (identifier "iVar6") (; ";")) (declaration "byte bVar18;" (type_identifier "byte") (identifier "bVar18") (; ";")) (declaration "int iVar7;" (primitive_type "int") (identifier "iVar7") (; ";")) (declaration "int iVar8;" (primitive_type "int") (identifier "iVar8") (; ";")) (declaration "int iVar9;" (primitive_type "int") (identifier "iVar9") (; ";")) (declaration "undefined4 uVar10;" (type_identifier "undefined4") (identifier "uVar10") (; ";")) (declaration "int iVar11;" (primitive_type "int") (identifier "iVar11") (; ";")) (declaration "uint uVar12;" (type_identifier "uint") (identifier "uVar12") (; ";")) (declaration "int iVar13;" (primitive_type "int") (identifier "iVar13") (; ";")) (declaration "int iVar14;" (primitive_type "int") (identifier "iVar14") (; ";")) (declaration "undefined4 uVar15;" (type_identifier "undefined4") (identifier "uVar15") (; ";")) (declaration "undefined4 extraout_v1;" (type_identifier "undefined4") (identifier "extraout_v1") (; ";")) (declaration "uint extraout_v1_00;" (type_identifier "uint") (identifier "extraout_v1_00") (; ";")) (declaration "uint extraout_v1_01;" (type_identifier "uint") (identifier "extraout_v1_01") (; ";")) (declaration "undefined4 extraout_v1_02;" (type_identifier "undefined4") (identifier "extraout_v1_02") (; ";")) (declaration "undefined4 extraout_v1_03;" (type_identifier "undefined4") (identifier "extraout_v1_03") (; ";")) (declaration "undefined4 extraout_v1_04;" (type_identifier "undefined4") (identifier "extraout_v1_04") (; ";")) (declaration "undefined4 extraout_v1_05;" (type_identifier "undefined4") (identifier "extraout_v1_05") (; ";")) (declaration "int iVar19;" (primitive_type "int") (identifier "iVar19") (; ";")) (declaration "int iVar20;" (primitive_type "int") (identifier "iVar20") (; ";")) (declaration "undefined1 *puVar21;" (type_identifier "undefined1") (pointer_declarator "*puVar21" (* "*") (identifier "puVar21")) (; ";")) (declaration "int iVar22;" (primitive_type "int") (identifier "iVar22") (; ";")) (declaration "char *unaff_s1;" (primitive_type "char") (pointer_declarator "*unaff_s1" (* "*") (identifier "unaff_s1")) (; ";")) (declaration "char *pcVar23;" (primitive_type "char") (pointer_declarator "*pcVar23" (* "*") (identifier "pcVar23")) (; ";")) (declaration "char *unaff_s2;" (primitive_type "char") (pointer_declarator "*unaff_s2" (* "*") (identifier "unaff_s2")) (; ";")) (declaration "int iVar24;" (primitive_type "int") (identifier "iVar24") (; ";")) (declaration "int unaff_s3;" (primitive_type "int") (identifier "unaff_s3") (; ";")) (declaration "undefined4 *puVar25;" (type_identifier "undefined4") (pointer_declarator "*puVar25" (* "*") (identifier "puVar25")) (; ";")) (declaration "char *unaff_s4;" (primitive_type "char") (pointer_declarator "*unaff_s4" (* "*") (identifier "unaff_s4")) (; ";")) (declaration "undefined4 uVar26;" (type_identifier "undefined4") (identifier "uVar26") (; ";")) (declaration "char *unaff_s5;" (primitive_type "char") (pointer_declarator "*unaff_s5" (* "*") (identifier "unaff_s5")) (; ";")) (declaration "char *pcVar27;" (primitive_type "char") (pointer_declarator "*pcVar27" (* "*") (identifier "pcVar27")) (; ";")) (declaration "int unaff_s6;" (primitive_type "int") (identifier "unaff_s6") (; ";")) (declaration "int iVar28;" (primitive_type "int") (identifier "iVar28") (; ";")) (declaration "uint uVar29;" (type_identifier "uint") (identifier "uVar29") (; ";")) (declaration "int unaff_s7;" (primitive_type "int") (identifier "unaff_s7") (; ";")) (declaration "undefined *puVar30;" (type_identifier "undefined") (pointer_declarator "*puVar30" (* "*") (identifier "puVar30")) (; ";")) (declaration "int *unaff_s8;" (primitive_type "int") (pointer_declarator "*unaff_s8" (* "*") (identifier "unaff_s8")) (; ";")) (declaration "code *pcVar31;" (type_identifier "code") (pointer_declarator "*pcVar31" (* "*") (identifier "pcVar31")) (; ";")) (declaration "char *pcStack_10fc;" (primitive_type "char") (pointer_declarator "*pcStack_10fc" (* "*") (identifier "pcStack_10fc")) (; ";")) (declaration "undefined1 *puStack_10ec;" (type_identifier "undefined1") (pointer_declarator "*puStack_10ec" (* "*") (identifier "puStack_10ec")) (; ";")) (declaration "uint uStack_10e4;" (type_identifier "uint") (identifier "uStack_10e4") (; ";")) (declaration "undefined1 *puStack_10dc;" (type_identifier "undefined1") (pointer_declarator "*puStack_10dc" (* "*") (identifier "puStack_10dc")) (; ";")) (declaration "uint uStack_10d4;" (type_identifier "uint") (identifier "uStack_10d4") (; ";")) (declaration "int iStack_10cc;" (primitive_type "int") (identifier "iStack_10cc") (; ";")) (declaration "uint uStack_10c8;" (type_identifier "uint") (identifier "uStack_10c8") (; ";")) (declaration "undefined1 uStack_10b0;" (type_identifier "undefined1") (identifier "uStack_10b0") (; ";")) (declaration "undefined1 uStack_10af;" (type_identifier "undefined1") (identifier "uStack_10af") (; ";")) (declaration "char cStack_10ae;" (primitive_type "char") (identifier "cStack_10ae") (; ";")) (declaration "undefined1 uStack_10ad;" (type_identifier "undefined1") (identifier "uStack_10ad") (; ";")) (declaration "undefined4 uStack_10ac;" (type_identifier "undefined4") (identifier "uStack_10ac") (; ";")) (declaration "int iStack_10a8;" (primitive_type "int") (identifier "iStack_10a8") (; ";")) (declaration "undefined4 uStack_10a4;" (type_identifier "undefined4") (identifier "uStack_10a4") (; ";")) (declaration "undefined4 uStack_10a0;" (type_identifier "undefined4") (identifier "uStack_10a0") (; ";")) (declaration "undefined4 uStack_109c;" (type_identifier "undefined4") (identifier "uStack_109c") (; ";")) (declaration "undefined4 uStack_1098;" (type_identifier "undefined4") (identifier "uStack_1098") (; ";")) (declaration "undefined1 auStack_1094 [4];" (type_identifier "undefined1") (array_declarator "auStack_1094 [4]" (identifier "auStack_1094") ([ "[") (number_literal "4") (] "]")) (; ";")) (declaration "undefined4 uStack_1090;" (type_identifier "undefined4") (identifier "uStack_1090") (; ";")) (declaration "undefined4 uStack_108c;" (type_identifier "undefined4") (identifier "uStack_108c") (; ";")) (declaration "undefined1 uStack_1088;" (type_identifier "undefined1") (identifier "uStack_1088") (; ";")) (declaration "undefined1 auStack_1084 [4096];" (type_identifier "undefined1") (array_declarator "auStack_1084 [4096]" (identifier "auStack_1084") ([ "[") (number_literal "4096") (] "]")) (; ";")) (declaration "int iStack_84;" (primitive_type "int") (identifier "iStack_84") (; ";")) (declaration "char *pcStack_80;" (primitive_type "char") (pointer_declarator "*pcStack_80" (* "*") (identifier "pcStack_80")) (; ";")) (declaration "char *pcStack_7c;" (primitive_type "char") (pointer_declarator "*pcStack_7c" (* "*") (identifier "pcStack_7c")) (; ";")) (declaration "char *pcStack_78;" (primitive_type "char") (pointer_declarator "*pcStack_78" (* "*") (identifier "pcStack_78")) (; ";")) (declaration "int iStack_74;" (primitive_type "int") (identifier "iStack_74") (; ";")) (declaration "char *pcStack_70;" (primitive_type "char") (pointer_declarator "*pcStack_70" (* "*") (identifier "pcStack_70")) (; ";")) (declaration "char *pcStack_6c;" (primitive_type "char") (pointer_declarator "*pcStack_6c" (* "*") (identifier "pcStack_6c")) (; ";")) (declaration "int iStack_68;" (primitive_type "int") (identifier "iStack_68") (; ";")) (declaration "int iStack_64;" (primitive_type "int") (identifier "iStack_64") (; ";")) (declaration "int *piStack_60;" (primitive_type "int") (pointer_declarator "*piStack_60" (* "*") (identifier "piStack_60")) (; ";")) (declaration "code *pcStack_5c;" (type_identifier "code") (pointer_declarator "*pcStack_5c" (* "*") (identifier "pcStack_5c")) (; ";")) (declaration "undefined1 local_30 [3];" (type_identifier "undefined1") (array_declarator "local_30 [3]" (identifier "local_30") ([ "[") (number_literal "3") (] "]")) (; ";")) (declaration "char cStack_2d;" (primitive_type "char") (identifier "cStack_2d") (; ";")) (declaration "int local_2c;" (primitive_type "int") (identifier "local_2c") (; ";")) (expression_statement "puVar30 = PTR_s__003f9950;" (assignment_expression "puVar30 = PTR_s__003f9950" (identifier "puVar30") (= "=") (identifier "PTR_s__003f9950")) (; ";")) (expression_statement "local_2c = *(int *)PTR___stack_chk_guard_003fa248;" (assignment_expression "local_2c = *(int *)PTR___stack_chk_guard_003fa248" (identifier "local_2c") (= "=") (pointer_expression "*(int *)PTR___stack_chk_guard_003fa248" (* "*") (cast_expression "(int *)PTR___stack_chk_guard_003fa248" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_guard_003fa248")))) (; ";")) (if_statement "if (*param_1 == '\0') {\n    pcVar1 = (char *)0x0;\n  }\n  else {\n    unaff_s2 = param_1;\n    if (*param_1 == ';') {\n      pcVar1 = (char *)0x1;\nLAB_0028466c:\n      if (param_1 == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar1 = param_1 + 1;\n      iVar20 = 1;\n      param_2 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }\n  }" (if "if") (parenthesized_expression "(*param_1 == '\0')" (( "(") (binary_expression "*param_1 == '\0'" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n    pcVar1 = (char *)0x0;\n  }" ({ "{") (expression_statement "pcVar1 = (char *)0x0;" (assignment_expression "pcVar1 = (char *)0x0" (identifier "pcVar1") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}")) (else_clause "else {\n    unaff_s2 = param_1;\n    if (*param_1 == ';') {\n      pcVar1 = (char *)0x1;\nLAB_0028466c:\n      if (param_1 == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar1 = param_1 + 1;\n      iVar20 = 1;\n      param_2 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }\n  }" (else "else") (compound_statement "{\n    unaff_s2 = param_1;\n    if (*param_1 == ';') {\n      pcVar1 = (char *)0x1;\nLAB_0028466c:\n      if (param_1 == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar1 = param_1 + 1;\n      iVar20 = 1;\n      param_2 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }\n  }" ({ "{") (expression_statement "unaff_s2 = param_1;" (assignment_expression "unaff_s2 = param_1" (identifier "unaff_s2") (= "=") (identifier "param_1")) (; ";")) (if_statement "if (*param_1 == ';') {\n      pcVar1 = (char *)0x1;\nLAB_0028466c:\n      if (param_1 == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar1 = param_1 + 1;\n      iVar20 = 1;\n      param_2 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }" (if "if") (parenthesized_expression "(*param_1 == ';')" (( "(") (binary_expression "*param_1 == ';'" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (== "==") (char_literal "';'" (' "'") (character ";") (' "'"))) () ")")) (compound_statement "{\n      pcVar1 = (char *)0x1;\nLAB_0028466c:\n      if (param_1 == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }\n    }" ({ "{") (expression_statement "pcVar1 = (char *)0x1;" (assignment_expression "pcVar1 = (char *)0x1" (identifier "pcVar1") (= "=") (cast_expression "(char *)0x1" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1"))) (; ";")) (labeled_statement "LAB_0028466c:\n      if (param_1 == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }" (statement_identifier "LAB_0028466c") (: ":") (if_statement "if (param_1 == (char *)0x0) {\n        pcVar1 = (char *)0x0;\n      }\n      else {\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }" (if "if") (parenthesized_expression "(param_1 == (char *)0x0)" (( "(") (binary_expression "param_1 == (char *)0x0" (identifier "param_1") (== "==") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        pcVar1 = (char *)0x0;\n      }" ({ "{") (expression_statement "pcVar1 = (char *)0x0;" (assignment_expression "pcVar1 = (char *)0x0" (identifier "pcVar1") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}")) (else_clause "else {\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }" (else "else") (compound_statement "{\n        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }\n        unaff_s4 = puVar30 + -0x46bf;\n        unaff_s6 = 0;\n        do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);\n        pcVar1 = (char *)0x0;\n      }" ({ "{") (if_statement "if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }" (if "if") (parenthesized_expression "(((char *)0x3 < pcVar1) && (param_1[1] == '#'))" (( "(") (binary_expression "((char *)0x3 < pcVar1) && (param_1[1] == '#')" (parenthesized_expression "((char *)0x3 < pcVar1)" (( "(") (binary_expression "(char *)0x3 < pcVar1" (cast_expression "(char *)0x3" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x3")) (< "<") (identifier "pcVar1")) () ")")) (&& "&&") (parenthesized_expression "(param_1[1] == '#')" (( "(") (binary_expression "param_1[1] == '#'" (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) (== "==") (char_literal "'#'" (' "'") (character "#") (' "'"))) () ")"))) () ")")) (compound_statement "{\n          param_2 = PTR_s__003f9950 + -0x4900;\n          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);\n          unaff_s4 = puVar30 + -0x46bf;\n          if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }\n        }" ({ "{") (expression_statement "param_2 = PTR_s__003f9950 + -0x4900;" (assignment_expression "param_2 = PTR_s__003f9950 + -0x4900" (identifier "param_2") (= "=") (binary_expression "PTR_s__003f9950 + -0x4900" (identifier "PTR_s__003f9950") (+ "+") (number_literal "-0x4900"))) (; ";")) (expression_statement "iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);" (assignment_expression "iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30)" (identifier "iVar20") (= "=") (call_expression "(*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30)" (parenthesized_expression "(*(code *)PTR_sscanf_003f9e4c)" (( "(") (pointer_expression "*(code *)PTR_sscanf_003f9e4c" (* "*") (cast_expression "(code *)PTR_sscanf_003f9e4c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_sscanf_003f9e4c"))) () ")")) (argument_list "(param_1,param_2,local_30)" (( "(") (identifier "param_1") (, ",") (identifier "param_2") (, ",") (identifier "local_30") () ")")))) (; ";")) (expression_statement "unaff_s4 = puVar30 + -0x46bf;" (assignment_expression "unaff_s4 = puVar30 + -0x46bf" (identifier "unaff_s4") (= "=") (binary_expression "puVar30 + -0x46bf" (identifier "puVar30") (+ "+") (number_literal "-0x46bf"))) (; ";")) (if_statement "if (iVar20 == 1) {\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }" (if "if") (parenthesized_expression "(iVar20 == 1)" (( "(") (binary_expression "iVar20 == 1" (identifier "iVar20") (== "==") (number_literal "1")) () ")")) (compound_statement "{\n            if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }\n            *param_1 = cStack_2d;\n            goto LAB_00284620;\n          }" ({ "{") (if_statement "if (param_1[3] == ';') {\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }\n            else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }" (if "if") (parenthesized_expression "(param_1[3] == ';')" (( "(") (binary_expression "param_1[3] == ';'" (subscript_expression "param_1[3]" (identifier "param_1") ([ "[") (number_literal "3") (] "]")) (== "==") (char_literal "';'" (' "'") (character ";") (' "'"))) () ")")) (compound_statement "{\n              pcVar1 = (char *)0x3;\nLAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);\n              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);\n              param_2 = unaff_s1;\n              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);\n            }" ({ "{") (expression_statement "pcVar1 = (char *)0x3;" (assignment_expression "pcVar1 = (char *)0x3" (identifier "pcVar1") (= "=") (cast_expression "(char *)0x3" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x3"))) (; ";")) (labeled_statement "LAB_002848d4:\n              unaff_s1 = param_1 + (int)(pcVar1 + 1);" (statement_identifier "LAB_002848d4") (: ":") (expression_statement "unaff_s1 = param_1 + (int)(pcVar1 + 1);" (assignment_expression "unaff_s1 = param_1 + (int)(pcVar1 + 1)" (identifier "unaff_s1") (= "=") (binary_expression "param_1 + (int)(pcVar1 + 1)" (identifier "param_1") (+ "+") (cast_expression "(int)(pcVar1 + 1)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(pcVar1 + 1)" (( "(") (binary_expression "pcVar1 + 1" (identifier "pcVar1") (+ "+") (number_literal "1")) () ")"))))) (; ";"))) (expression_statement "iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);" (assignment_expression "iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1)" (identifier "iVar20") (= "=") (call_expression "(*(code *)PTR_strlen_003fa350)(unaff_s1)" (parenthesized_expression "(*(code *)PTR_strlen_003fa350)" (( "(") (pointer_expression "*(code *)PTR_strlen_003fa350" (* "*") (cast_expression "(code *)PTR_strlen_003fa350" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_strlen_003fa350"))) () ")")) (argument_list "(unaff_s1)" (( "(") (identifier "unaff_s1") () ")")))) (; ";")) (expression_statement "param_2 = unaff_s1;" (assignment_expression "param_2 = unaff_s1" (identifier "param_2") (= "=") (identifier "unaff_s1")) (; ";")) (expression_statement "(*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);" (call_expression "(*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1)" (parenthesized_expression "(*(code *)PTR_memmove_003f9f68)" (( "(") (pointer_expression "*(code *)PTR_memmove_003f9f68" (* "*") (cast_expression "(code *)PTR_memmove_003f9f68" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_memmove_003f9f68"))) () ")")) (argument_list "(param_1 + 1,unaff_s1,iVar20 + 1)" (( "(") (binary_expression "param_1 + 1" (identifier "param_1") (+ "+") (number_literal "1")) (, ",") (identifier "unaff_s1") (, ",") (binary_expression "iVar20 + 1" (identifier "iVar20") (+ "+") (number_literal "1")) () ")"))) (; ";")) (} "}")) (else_clause "else {\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }" (else "else") (compound_statement "{\n              if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }\n              if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }\n              pcVar1 = &DAT_00000006;\n            }" ({ "{") (if_statement "if (param_1[4] == ';') {\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }" (if "if") (parenthesized_expression "(param_1[4] == ';')" (( "(") (binary_expression "param_1[4] == ';'" (subscript_expression "param_1[4]" (identifier "param_1") ([ "[") (number_literal "4") (] "]")) (== "==") (char_literal "';'" (' "'") (character ";") (' "'"))) () ")")) (compound_statement "{\n                pcVar1 = &DAT_00000004;\n                goto LAB_002848d4;\n              }" ({ "{") (expression_statement "pcVar1 = &DAT_00000004;" (assignment_expression "pcVar1 = &DAT_00000004" (identifier "pcVar1") (= "=") (pointer_expression "&DAT_00000004" (& "&") (identifier "DAT_00000004"))) (; ";")) (goto_statement "goto LAB_002848d4;" (goto "goto") (statement_identifier "LAB_002848d4") (; ";")) (} "}"))) (if_statement "if (param_1[5] == ';') {\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }" (if "if") (parenthesized_expression "(param_1[5] == ';')" (( "(") (binary_expression "param_1[5] == ';'" (subscript_expression "param_1[5]" (identifier "param_1") ([ "[") (number_literal "5") (] "]")) (== "==") (char_literal "';'" (' "'") (character ";") (' "'"))) () ")")) (compound_statement "{\n                pcVar1 = &DAT_00000005;\n                goto LAB_002848d4;\n              }" ({ "{") (expression_statement "pcVar1 = &DAT_00000005;" (assignment_expression "pcVar1 = &DAT_00000005" (identifier "pcVar1") (= "=") (pointer_expression "&DAT_00000005" (& "&") (identifier "DAT_00000005"))) (; ";")) (goto_statement "goto LAB_002848d4;" (goto "goto") (statement_identifier "LAB_002848d4") (; ";")) (} "}"))) (expression_statement "pcVar1 = &DAT_00000006;" (assignment_expression "pcVar1 = &DAT_00000006" (identifier "pcVar1") (= "=") (pointer_expression "&DAT_00000006" (& "&") (identifier "DAT_00000006"))) (; ";")) (} "}")))) (expression_statement "*param_1 = cStack_2d;" (assignment_expression "*param_1 = cStack_2d" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (= "=") (identifier "cStack_2d")) (; ";")) (goto_statement "goto LAB_00284620;" (goto "goto") (statement_identifier "LAB_00284620") (; ";")) (} "}"))) (} "}"))) (expression_statement "unaff_s4 = puVar30 + -0x46bf;" (assignment_expression "unaff_s4 = puVar30 + -0x46bf" (identifier "unaff_s4") (= "=") (binary_expression "puVar30 + -0x46bf" (identifier "puVar30") (+ "+") (number_literal "-0x46bf"))) (; ";")) (expression_statement "unaff_s6 = 0;" (assignment_expression "unaff_s6 = 0" (identifier "unaff_s6") (= "=") (number_literal "0")) (; ";")) (do_statement "do {\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        } while (unaff_s6 != 3);" (do "do") (compound_statement "{\n          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];\n          unaff_s1 = unaff_s4;\n          unaff_s5 = pcVar27;\n          if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }\nLAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;\n          unaff_s4 = unaff_s4 + 9;\n        }" ({ "{") (expression_statement "pcVar27 = (char *)(uint)(byte)unaff_s4[-1];" (assignment_expression "pcVar27 = (char *)(uint)(byte)unaff_s4[-1]" (identifier "pcVar27") (= "=") (cast_expression "(char *)(uint)(byte)unaff_s4[-1]" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (cast_expression "(uint)(byte)unaff_s4[-1]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (cast_expression "(byte)unaff_s4[-1]" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (subscript_expression "unaff_s4[-1]" (identifier "unaff_s4") ([ "[") (number_literal "-1") (] "]")))))) (; ";")) (expression_statement "unaff_s1 = unaff_s4;" (assignment_expression "unaff_s1 = unaff_s4" (identifier "unaff_s1") (= "=") (identifier "unaff_s4")) (; ";")) (expression_statement "unaff_s5 = pcVar27;" (assignment_expression "unaff_s5 = pcVar27" (identifier "unaff_s5") (= "=") (identifier "pcVar27")) (; ";")) (if_statement "if ((int)pcVar27 <= (int)pcVar1) {\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }" (if "if") (parenthesized_expression "((int)pcVar27 <= (int)pcVar1)" (( "(") (binary_expression "(int)pcVar27 <= (int)pcVar1" (cast_expression "(int)pcVar27" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar27")) (<= "<=") (cast_expression "(int)pcVar1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar1"))) () ")")) (compound_statement "{\n            if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }\n            param_2 = param_1 + (int)pcVar27;\n            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);\n            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);\n            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];\n            pcVar1 = pcVar27 + -1;\n            goto LAB_00284620;\n          }" ({ "{") (if_statement "if (param_1 != unaff_s4) {\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }" (if "if") (parenthesized_expression "(param_1 != unaff_s4)" (( "(") (binary_expression "param_1 != unaff_s4" (identifier "param_1") (!= "!=") (identifier "unaff_s4")) () ")")) (compound_statement "{\n              iVar20 = (int)*param_1;\n              unaff_s5 = param_1;\n              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }\n              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);\n              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);\n              if (unaff_s3 != iVar20) goto LAB_002847f0;\n            }" ({ "{") (expression_statement "iVar20 = (int)*param_1;" (assignment_expression "iVar20 = (int)*param_1" (identifier "iVar20") (= "=") (cast_expression "(int)*param_1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "*param_1" (* "*") (identifier "param_1")))) (; ";")) (expression_statement "unaff_s5 = param_1;" (assignment_expression "unaff_s5 = param_1" (identifier "unaff_s5") (= "=") (identifier "param_1")) (; ";")) (if_statement "if ((iVar20 != 0) && (*unaff_s4 != '\0')) {\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }" (if "if") (parenthesized_expression "((iVar20 != 0) && (*unaff_s4 != '\0'))" (( "(") (binary_expression "(iVar20 != 0) && (*unaff_s4 != '\0')" (parenthesized_expression "(iVar20 != 0)" (( "(") (binary_expression "iVar20 != 0" (identifier "iVar20") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(*unaff_s4 != '\0')" (( "(") (binary_expression "*unaff_s4 != '\0'" (pointer_expression "*unaff_s4" (* "*") (identifier "unaff_s4")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (compound_statement "{\n                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();\n                pcVar23 = unaff_s4;\n                while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }\n              }" ({ "{") (expression_statement "unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();" (assignment_expression "unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)()" (identifier "unaff_s8") (= "=") (cast_expression "(int *)(*(code *)PTR___ctype_b_loc_003fa44c)()" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)PTR___ctype_b_loc_003fa44c)()" (parenthesized_expression "(*(code *)PTR___ctype_b_loc_003fa44c)" (( "(") (pointer_expression "*(code *)PTR___ctype_b_loc_003fa44c" (* "*") (cast_expression "(code *)PTR___ctype_b_loc_003fa44c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___ctype_b_loc_003fa44c"))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "pcVar23 = unaff_s4;" (assignment_expression "pcVar23 = unaff_s4" (identifier "pcVar23") (= "=") (identifier "unaff_s4")) (; ";")) (while_statement "while( true ) {\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }" (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (compound_statement "{\n                  unaff_s7 = iVar20;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  iVar20 = (int)*pcVar23;\n                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }\n                  unaff_s1 = pcVar23;\n                  if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;\n                  unaff_s5 = unaff_s5 + 1;\n                  iVar20 = (int)*unaff_s5;\n                  pcVar23 = pcVar23 + 1;\n                  unaff_s1 = pcVar23;\n                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;\n                }" ({ "{") (expression_statement "unaff_s7 = iVar20;" (assignment_expression "unaff_s7 = iVar20" (identifier "unaff_s7") (= "=") (identifier "iVar20")) (; ";")) (if_statement "if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }" (if "if") (parenthesized_expression "((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0)" (( "(") (binary_expression "(*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0" (parenthesized_expression "(*(ushort *)(*unaff_s8 + iVar20 * 2) & 2)" (( "(") (binary_expression "*(ushort *)(*unaff_s8 + iVar20 * 2) & 2" (pointer_expression "*(ushort *)(*unaff_s8 + iVar20 * 2)" (* "*") (cast_expression "(ushort *)(*unaff_s8 + iVar20 * 2)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*unaff_s8 + iVar20 * 2)" (( "(") (binary_expression "*unaff_s8 + iVar20 * 2" (pointer_expression "*unaff_s8" (* "*") (identifier "unaff_s8")) (+ "+") (binary_expression "iVar20 * 2" (identifier "iVar20") (* "*") (number_literal "2"))) () ")")))) (& "&") (number_literal "2")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }" ({ "{") (expression_statement "unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);" (assignment_expression "unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20)" (identifier "unaff_s7") (= "=") (call_expression "(*(code *)PTR_LocaleUppercase_003fa768)(iVar20)" (parenthesized_expression "(*(code *)PTR_LocaleUppercase_003fa768)" (( "(") (pointer_expression "*(code *)PTR_LocaleUppercase_003fa768" (* "*") (cast_expression "(code *)PTR_LocaleUppercase_003fa768" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_LocaleUppercase_003fa768"))) () ")")) (argument_list "(iVar20)" (( "(") (identifier "iVar20") () ")")))) (; ";")) (} "}"))) (expression_statement "iVar20 = (int)*pcVar23;" (assignment_expression "iVar20 = (int)*pcVar23" (identifier "iVar20") (= "=") (cast_expression "(int)*pcVar23" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "*pcVar23" (* "*") (identifier "pcVar23")))) (; ";")) (if_statement "if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }" (if "if") (parenthesized_expression "((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0)" (( "(") (binary_expression "(*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0" (parenthesized_expression "(*(ushort *)(*unaff_s8 + iVar20 * 2) & 2)" (( "(") (binary_expression "*(ushort *)(*unaff_s8 + iVar20 * 2) & 2" (pointer_expression "*(ushort *)(*unaff_s8 + iVar20 * 2)" (* "*") (cast_expression "(ushort *)(*unaff_s8 + iVar20 * 2)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*unaff_s8 + iVar20 * 2)" (( "(") (binary_expression "*unaff_s8 + iVar20 * 2" (pointer_expression "*unaff_s8" (* "*") (identifier "unaff_s8")) (+ "+") (binary_expression "iVar20 * 2" (identifier "iVar20") (* "*") (number_literal "2"))) () ")")))) (& "&") (number_literal "2")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);\n                  }" ({ "{") (expression_statement "iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);" (assignment_expression "iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20)" (identifier "iVar20") (= "=") (call_expression "(*(code *)PTR_LocaleUppercase_003fa768)(iVar20)" (parenthesized_expression "(*(code *)PTR_LocaleUppercase_003fa768)" (( "(") (pointer_expression "*(code *)PTR_LocaleUppercase_003fa768" (* "*") (cast_expression "(code *)PTR_LocaleUppercase_003fa768" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_LocaleUppercase_003fa768"))) () ")")) (argument_list "(iVar20)" (( "(") (identifier "iVar20") () ")")))) (; ";")) (} "}"))) (expression_statement "unaff_s1 = pcVar23;" (assignment_expression "unaff_s1 = pcVar23" (identifier "unaff_s1") (= "=") (identifier "pcVar23")) (; ";")) (if_statement "if ((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;" (if "if") (parenthesized_expression "((unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23))" (( "(") (binary_expression "(unaff_s7 != iVar20) ||\n                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)" (parenthesized_expression "(unaff_s7 != iVar20)" (( "(") (binary_expression "unaff_s7 != iVar20" (identifier "unaff_s7") (!= "!=") (identifier "iVar20")) () ")")) (|| "||") (parenthesized_expression "(unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)" (( "(") (comma_expression "unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),\n                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23" (assignment_expression "unaff_s1 = unaff_s4 + (int)(pcVar27 + -1)" (identifier "unaff_s1") (= "=") (binary_expression "unaff_s4 + (int)(pcVar27 + -1)" (identifier "unaff_s4") (+ "+") (cast_expression "(int)(pcVar27 + -1)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(pcVar27 + -1)" (( "(") (binary_expression "pcVar27 + -1" (identifier "pcVar27") (+ "+") (number_literal "-1")) () ")"))))) (, ",") (binary_expression "unaff_s4 + (int)(pcVar27 + -1) == pcVar23" (binary_expression "unaff_s4 + (int)(pcVar27 + -1)" (identifier "unaff_s4") (+ "+") (cast_expression "(int)(pcVar27 + -1)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(pcVar27 + -1)" (( "(") (binary_expression "pcVar27 + -1" (identifier "pcVar27") (+ "+") (number_literal "-1")) () ")")))) (== "==") (identifier "pcVar23"))) () ")"))) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "unaff_s5 = unaff_s5 + 1;" (assignment_expression "unaff_s5 = unaff_s5 + 1" (identifier "unaff_s5") (= "=") (binary_expression "unaff_s5 + 1" (identifier "unaff_s5") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "iVar20 = (int)*unaff_s5;" (assignment_expression "iVar20 = (int)*unaff_s5" (identifier "iVar20") (= "=") (cast_expression "(int)*unaff_s5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "*unaff_s5" (* "*") (identifier "unaff_s5")))) (; ";")) (expression_statement "pcVar23 = pcVar23 + 1;" (assignment_expression "pcVar23 = pcVar23 + 1" (identifier "pcVar23") (= "=") (binary_expression "pcVar23 + 1" (identifier "pcVar23") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "unaff_s1 = pcVar23;" (assignment_expression "unaff_s1 = pcVar23" (identifier "unaff_s1") (= "=") (identifier "pcVar23")) (; ";")) (if_statement "if ((iVar20 == 0) || (*pcVar23 == '\0')) break;" (if "if") (parenthesized_expression "((iVar20 == 0) || (*pcVar23 == '\0'))" (( "(") (binary_expression "(iVar20 == 0) || (*pcVar23 == '\0')" (parenthesized_expression "(iVar20 == 0)" (( "(") (binary_expression "iVar20 == 0" (identifier "iVar20") (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(*pcVar23 == '\0')" (( "(") (binary_expression "*pcVar23 == '\0'" (pointer_expression "*pcVar23" (* "*") (identifier "pcVar23")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (break_statement "break;" (break "break") (; ";"))) (} "}"))) (} "}"))) (expression_statement "unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);" (assignment_expression "unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5)" (identifier "unaff_s3") (= "=") (call_expression "(*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5)" (parenthesized_expression "(*(code *)PTR_LocaleUppercase_003fa768)" (( "(") (pointer_expression "*(code *)PTR_LocaleUppercase_003fa768" (* "*") (cast_expression "(code *)PTR_LocaleUppercase_003fa768" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_LocaleUppercase_003fa768"))) () ")")) (argument_list "((int)*unaff_s5)" (( "(") (cast_expression "(int)*unaff_s5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "*unaff_s5" (* "*") (identifier "unaff_s5"))) () ")")))) (; ";")) (expression_statement "iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);" (assignment_expression "iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1)" (identifier "iVar20") (= "=") (call_expression "(*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1)" (parenthesized_expression "(*(code *)PTR_LocaleUppercase_003fa768)" (( "(") (pointer_expression "*(code *)PTR_LocaleUppercase_003fa768" (* "*") (cast_expression "(code *)PTR_LocaleUppercase_003fa768" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_LocaleUppercase_003fa768"))) () ")")) (argument_list "((int)*unaff_s1)" (( "(") (cast_expression "(int)*unaff_s1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "*unaff_s1" (* "*") (identifier "unaff_s1"))) () ")")))) (; ";")) (if_statement "if (unaff_s3 != iVar20) goto LAB_002847f0;" (if "if") (parenthesized_expression "(unaff_s3 != iVar20)" (( "(") (binary_expression "unaff_s3 != iVar20" (identifier "unaff_s3") (!= "!=") (identifier "iVar20")) () ")")) (goto_statement "goto LAB_002847f0;" (goto "goto") (statement_identifier "LAB_002847f0") (; ";"))) (} "}"))) (expression_statement "param_2 = param_1 + (int)pcVar27;" (assignment_expression "param_2 = param_1 + (int)pcVar27" (identifier "param_2") (= "=") (binary_expression "param_1 + (int)pcVar27" (identifier "param_1") (+ "+") (cast_expression "(int)pcVar27" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar27")))) (; ";")) (expression_statement "iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);" (assignment_expression "iVar20 = (*(code *)PTR_strlen_003fa350)(param_2)" (identifier "iVar20") (= "=") (call_expression "(*(code *)PTR_strlen_003fa350)(param_2)" (parenthesized_expression "(*(code *)PTR_strlen_003fa350)" (( "(") (pointer_expression "*(code *)PTR_strlen_003fa350" (* "*") (cast_expression "(code *)PTR_strlen_003fa350" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_strlen_003fa350"))) () ")")) (argument_list "(param_2)" (( "(") (identifier "param_2") () ")")))) (; ";")) (expression_statement "(*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);" (call_expression "(*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1)" (parenthesized_expression "(*(code *)PTR_memmove_003f9f68)" (( "(") (pointer_expression "*(code *)PTR_memmove_003f9f68" (* "*") (cast_expression "(code *)PTR_memmove_003f9f68" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_memmove_003f9f68"))) () ")")) (argument_list "(param_1 + 1,param_2,iVar20 + 1)" (( "(") (binary_expression "param_1 + 1" (identifier "param_1") (+ "+") (number_literal "1")) (, ",") (identifier "param_2") (, ",") (binary_expression "iVar20 + 1" (identifier "iVar20") (+ "+") (number_literal "1")) () ")"))) (; ";")) (expression_statement "*param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];" (assignment_expression "*param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8]" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (= "=") (subscript_expression "PTR_s__003f9950[unaff_s6 * 9 + -0x46b8]" (identifier "PTR_s__003f9950") ([ "[") (binary_expression "unaff_s6 * 9 + -0x46b8" (binary_expression "unaff_s6 * 9" (identifier "unaff_s6") (* "*") (number_literal "9")) (+ "+") (number_literal "-0x46b8")) (] "]"))) (; ";")) (expression_statement "pcVar1 = pcVar27 + -1;" (assignment_expression "pcVar1 = pcVar27 + -1" (identifier "pcVar1") (= "=") (binary_expression "pcVar27 + -1" (identifier "pcVar27") (+ "+") (number_literal "-1"))) (; ";")) (goto_statement "goto LAB_00284620;" (goto "goto") (statement_identifier "LAB_00284620") (; ";")) (} "}"))) (labeled_statement "LAB_002847f0:\n          unaff_s6 = unaff_s6 + 1;" (statement_identifier "LAB_002847f0") (: ":") (expression_statement "unaff_s6 = unaff_s6 + 1;" (assignment_expression "unaff_s6 = unaff_s6 + 1" (identifier "unaff_s6") (= "=") (binary_expression "unaff_s6 + 1" (identifier "unaff_s6") (+ "+") (number_literal "1"))) (; ";"))) (expression_statement "unaff_s4 = unaff_s4 + 9;" (assignment_expression "unaff_s4 = unaff_s4 + 9" (identifier "unaff_s4") (= "=") (binary_expression "unaff_s4 + 9" (identifier "unaff_s4") (+ "+") (number_literal "9"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(unaff_s6 != 3)" (( "(") (binary_expression "unaff_s6 != 3" (identifier "unaff_s6") (!= "!=") (number_literal "3")) () ")")) (; ";")) (expression_statement "pcVar1 = (char *)0x0;" (assignment_expression "pcVar1 = (char *)0x0" (identifier "pcVar1") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}"))))) (} "}")) (else_clause "else {\n      pcVar1 = param_1 + 1;\n      iVar20 = 1;\n      param_2 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }" (else "else") (compound_statement "{\n      pcVar1 = param_1 + 1;\n      iVar20 = 1;\n      param_2 = &DAT_00000007;\n      do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);\n      pcVar1 = (char *)0x0;\n    }" ({ "{") (expression_statement "pcVar1 = param_1 + 1;" (assignment_expression "pcVar1 = param_1 + 1" (identifier "pcVar1") (= "=") (binary_expression "param_1 + 1" (identifier "param_1") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "iVar20 = 1;" (assignment_expression "iVar20 = 1" (identifier "iVar20") (= "=") (number_literal "1")) (; ";")) (expression_statement "param_2 = &DAT_00000007;" (assignment_expression "param_2 = &DAT_00000007" (identifier "param_2") (= "=") (pointer_expression "&DAT_00000007" (& "&") (identifier "DAT_00000007"))) (; ";")) (do_statement "do {\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      } while (iVar20 != 7);" (do "do") (compound_statement "{\n        if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }\n        if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }\n        iVar20 = iVar20 + 1;\n        pcVar1 = pcVar1 + 1;\n      }" ({ "{") (if_statement "if (*pcVar1 == '\0') {\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }" (if "if") (parenthesized_expression "(*pcVar1 == '\0')" (( "(") (binary_expression "*pcVar1 == '\0'" (pointer_expression "*pcVar1" (* "*") (identifier "pcVar1")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n          pcVar1 = (char *)0x0;\n          goto LAB_00284620;\n        }" ({ "{") (expression_statement "pcVar1 = (char *)0x0;" (assignment_expression "pcVar1 = (char *)0x0" (identifier "pcVar1") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (goto_statement "goto LAB_00284620;" (goto "goto") (statement_identifier "LAB_00284620") (; ";")) (} "}"))) (if_statement "if (*pcVar1 == ';') {\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }" (if "if") (parenthesized_expression "(*pcVar1 == ';')" (( "(") (binary_expression "*pcVar1 == ';'" (pointer_expression "*pcVar1" (* "*") (identifier "pcVar1")) (== "==") (char_literal "';'" (' "'") (character ";") (' "'"))) () ")")) (compound_statement "{\n          pcVar1 = (char *)(iVar20 + 1);\n          if (pcVar1 == (char *)0x0) goto LAB_00284620;\n          goto LAB_0028466c;\n        }" ({ "{") (expression_statement "pcVar1 = (char *)(iVar20 + 1);" (assignment_expression "pcVar1 = (char *)(iVar20 + 1)" (identifier "pcVar1") (= "=") (cast_expression "(char *)(iVar20 + 1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 1)" (( "(") (binary_expression "iVar20 + 1" (identifier "iVar20") (+ "+") (number_literal "1")) () ")")))) (; ";")) (if_statement "if (pcVar1 == (char *)0x0) goto LAB_00284620;" (if "if") (parenthesized_expression "(pcVar1 == (char *)0x0)" (( "(") (binary_expression "pcVar1 == (char *)0x0" (identifier "pcVar1") (== "==") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_00284620;" (goto "goto") (statement_identifier "LAB_00284620") (; ";"))) (goto_statement "goto LAB_0028466c;" (goto "goto") (statement_identifier "LAB_0028466c") (; ";")) (} "}"))) (expression_statement "iVar20 = iVar20 + 1;" (assignment_expression "iVar20 = iVar20 + 1" (identifier "iVar20") (= "=") (binary_expression "iVar20 + 1" (identifier "iVar20") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pcVar1 = pcVar1 + 1;" (assignment_expression "pcVar1 = pcVar1 + 1" (identifier "pcVar1") (= "=") (binary_expression "pcVar1 + 1" (identifier "pcVar1") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar20 != 7)" (( "(") (binary_expression "iVar20 != 7" (identifier "iVar20") (!= "!=") (number_literal "7")) () ")")) (; ";")) (expression_statement "pcVar1 = (char *)0x0;" (assignment_expression "pcVar1 = (char *)0x0" (identifier "pcVar1") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}")))) (} "}")))) (labeled_statement "LAB_00284620:\n  if (local_2c == *(int *)PTR___stack_chk_guard_003fa248) {\n    return pcVar1;\n  }" (statement_identifier "LAB_00284620") (: ":") (if_statement "if (local_2c == *(int *)PTR___stack_chk_guard_003fa248) {\n    return pcVar1;\n  }" (if "if") (parenthesized_expression "(local_2c == *(int *)PTR___stack_chk_guard_003fa248)" (( "(") (binary_expression "local_2c == *(int *)PTR___stack_chk_guard_003fa248" (identifier "local_2c") (== "==") (pointer_expression "*(int *)PTR___stack_chk_guard_003fa248" (* "*") (cast_expression "(int *)PTR___stack_chk_guard_003fa248" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_guard_003fa248")))) () ")")) (compound_statement "{\n    return pcVar1;\n  }" ({ "{") (return_statement "return pcVar1;" (return "return") (identifier "pcVar1") (; ";")) (} "}")))) (expression_statement "pcVar31 = FUN_00284930;" (assignment_expression "pcVar31 = FUN_00284930" (identifier "pcVar31") (= "=") (identifier "FUN_00284930")) (; ";")) (expression_statement "iVar20 = local_2c;" (assignment_expression "iVar20 = local_2c" (identifier "iVar20") (= "=") (identifier "local_2c")) (; ";")) (expression_statement "puVar30 = PTR___stack_chk_fail_003fa07c;" (assignment_expression "puVar30 = PTR___stack_chk_fail_003fa07c" (identifier "puVar30") (= "=") (identifier "PTR___stack_chk_fail_003fa07c")) (; ";")) (expression_statement "(*(code *)PTR___stack_chk_fail_003fa07c)();" (call_expression "(*(code *)PTR___stack_chk_fail_003fa07c)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_003fa07c)" (( "(") (pointer_expression "*(code *)PTR___stack_chk_fail_003fa07c" (* "*") (cast_expression "(code *)PTR___stack_chk_fail_003fa07c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_fail_003fa07c"))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "iStack_84 = **(int **)(puVar30 + 0x175918);" (assignment_expression "iStack_84 = **(int **)(puVar30 + 0x175918)" (identifier "iStack_84") (= "=") (pointer_expression "**(int **)(puVar30 + 0x175918)" (* "*") (pointer_expression "*(int **)(puVar30 + 0x175918)" (* "*") (cast_expression "(int **)(puVar30 + 0x175918)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175918)" (( "(") (binary_expression "puVar30 + 0x175918" (identifier "puVar30") (+ "+") (number_literal "0x175918")) () ")")))))) (; ";")) (expression_statement "pcStack_80 = pcVar1;" (assignment_expression "pcStack_80 = pcVar1" (identifier "pcStack_80") (= "=") (identifier "pcVar1")) (; ";")) (expression_statement "pcStack_7c = unaff_s1;" (assignment_expression "pcStack_7c = unaff_s1" (identifier "pcStack_7c") (= "=") (identifier "unaff_s1")) (; ";")) (expression_statement "pcStack_78 = unaff_s2;" (assignment_expression "pcStack_78 = unaff_s2" (identifier "pcStack_78") (= "=") (identifier "unaff_s2")) (; ";")) (expression_statement "iStack_74 = unaff_s3;" (assignment_expression "iStack_74 = unaff_s3" (identifier "iStack_74") (= "=") (identifier "unaff_s3")) (; ";")) (expression_statement "pcStack_70 = unaff_s4;" (assignment_expression "pcStack_70 = unaff_s4" (identifier "pcStack_70") (= "=") (identifier "unaff_s4")) (; ";")) (expression_statement "pcStack_6c = unaff_s5;" (assignment_expression "pcStack_6c = unaff_s5" (identifier "pcStack_6c") (= "=") (identifier "unaff_s5")) (; ";")) (expression_statement "iStack_68 = unaff_s6;" (assignment_expression "iStack_68 = unaff_s6" (identifier "iStack_68") (= "=") (identifier "unaff_s6")) (; ";")) (expression_statement "iStack_64 = unaff_s7;" (assignment_expression "iStack_64 = unaff_s7" (identifier "iStack_64") (= "=") (identifier "unaff_s7")) (; ";")) (expression_statement "piStack_60 = unaff_s8;" (assignment_expression "piStack_60 = unaff_s8" (identifier "piStack_60") (= "=") (identifier "unaff_s8")) (; ";")) (expression_statement "pcStack_5c = pcVar31;" (assignment_expression "pcStack_5c = pcVar31" (identifier "pcStack_5c") (= "=") (identifier "pcVar31")) (; ";")) (if_statement "if (iVar20 == 0) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d48,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a5,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }" (if "if") (parenthesized_expression "(iVar20 == 0)" (( "(") (binary_expression "iVar20 == 0" (identifier "iVar20") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d48,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a5,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }" ({ "{") (expression_statement "pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d48,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a5,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);" (assignment_expression "pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d48,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a5,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" (identifier "pcVar1") (= "=") (cast_expression "(char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d48,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a5,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d48,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a5,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" (parenthesized_expression "(**(code **)(puVar30 + 0x175cf0))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175cf0)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175cf0)" (* "*") (cast_expression "(code **)(puVar30 + 0x175cf0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175cf0)" (( "(") (binary_expression "puVar30 + 0x175cf0" (identifier "puVar30") (+ "+") (number_literal "0x175cf0")) () ")"))))) () ")")) (argument_list "(*(int *)(puVar30 + 0x174fb0) + 0x3d48,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a5,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" (( "(") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x3d48" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x3d48")) (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x48cc")) (, ",") (number_literal "0x4a5") (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x46f0" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x46f0")) () ")"))))) (; ";")) (return_statement "return pcVar1;" (return "return") (identifier "pcVar1") (; ";")) (} "}"))) (if_statement "if (*(int *)(iVar20 + 0x3214) != -0x54535255) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d70,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a6,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }" (if "if") (parenthesized_expression "(*(int *)(iVar20 + 0x3214) != -0x54535255)" (( "(") (binary_expression "*(int *)(iVar20 + 0x3214) != -0x54535255" (pointer_expression "*(int *)(iVar20 + 0x3214)" (* "*") (cast_expression "(int *)(iVar20 + 0x3214)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x3214)" (( "(") (binary_expression "iVar20 + 0x3214" (identifier "iVar20") (+ "+") (number_literal "0x3214")) () ")")))) (!= "!=") (number_literal "-0x54535255")) () ")")) (compound_statement "{\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d70,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a6,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }" ({ "{") (expression_statement "pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d70,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a6,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);" (assignment_expression "pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d70,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a6,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" (identifier "pcVar1") (= "=") (cast_expression "(char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d70,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a6,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x3d70,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a6,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" (parenthesized_expression "(**(code **)(puVar30 + 0x175cf0))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175cf0)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175cf0)" (* "*") (cast_expression "(code **)(puVar30 + 0x175cf0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175cf0)" (( "(") (binary_expression "puVar30 + 0x175cf0" (identifier "puVar30") (+ "+") (number_literal "0x175cf0")) () ")"))))) () ")")) (argument_list "(*(int *)(puVar30 + 0x174fb0) + 0x3d70,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a6,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" (( "(") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x3d70" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x3d70")) (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x48cc")) (, ",") (number_literal "0x4a6") (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x46f0" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x46f0")) () ")"))))) (; ";")) (return_statement "return pcVar1;" (return "return") (identifier "pcVar1") (; ";")) (} "}"))) (if_statement "if (*(int *)(iVar20 + 0x3210) != 0) {\n    (**(code **)(puVar30 + 0x1758c8))\n              (0x8000,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700,\n               0x4a8,*(int *)(puVar30 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210);\n  }" (if "if") (parenthesized_expression "(*(int *)(iVar20 + 0x3210) != 0)" (( "(") (binary_expression "*(int *)(iVar20 + 0x3210) != 0" (pointer_expression "*(int *)(iVar20 + 0x3210)" (* "*") (cast_expression "(int *)(iVar20 + 0x3210)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x3210)" (( "(") (binary_expression "iVar20 + 0x3210" (identifier "iVar20") (+ "+") (number_literal "0x3210")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    (**(code **)(puVar30 + 0x1758c8))\n              (0x8000,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700,\n               0x4a8,*(int *)(puVar30 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210);\n  }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x1758c8))\n              (0x8000,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700,\n               0x4a8,*(int *)(puVar30 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x1758c8))\n              (0x8000,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700,\n               0x4a8,*(int *)(puVar30 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x1758c8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1758c8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1758c8)" (* "*") (cast_expression "(code **)(puVar30 + 0x1758c8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1758c8)" (( "(") (binary_expression "puVar30 + 0x1758c8" (identifier "puVar30") (+ "+") (number_literal "0x1758c8")) () ")"))))) () ")")) (argument_list "(0x8000,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700,\n               0x4a8,*(int *)(puVar30 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210)" (( "(") (number_literal "0x8000") (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x48cc")) (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x4700")) (, ",") (number_literal "0x4a8") (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb8) + -0x2f6c" (pointer_expression "*(int *)(puVar30 + 0x174fb8)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb8)" (( "(") (binary_expression "puVar30 + 0x174fb8" (identifier "puVar30") (+ "+") (number_literal "0x174fb8")) () ")")))) (+ "+") (number_literal "-0x2f6c")) (, ",") (binary_expression "iVar20 + 0x2210" (identifier "iVar20") (+ "+") (number_literal "0x2210")) () ")"))) (; ";")) (} "}"))) (if_statement "if (param_2 == (char *)0x0) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x4c80,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4aa,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }" (if "if") (parenthesized_expression "(param_2 == (char *)0x0)" (( "(") (binary_expression "param_2 == (char *)0x0" (identifier "param_2") (== "==") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x4c80,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4aa,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }" ({ "{") (expression_statement "pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x4c80,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4aa,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);" (assignment_expression "pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x4c80,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4aa,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" (identifier "pcVar1") (= "=") (cast_expression "(char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x4c80,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4aa,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x4c80,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4aa,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" (parenthesized_expression "(**(code **)(puVar30 + 0x175cf0))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175cf0)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175cf0)" (* "*") (cast_expression "(code **)(puVar30 + 0x175cf0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175cf0)" (( "(") (binary_expression "puVar30 + 0x175cf0" (identifier "puVar30") (+ "+") (number_literal "0x175cf0")) () ")"))))) () ")")) (argument_list "(*(int *)(puVar30 + 0x174fb0) + 0x4c80,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4aa,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" (( "(") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x4c80" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x4c80")) (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x48cc")) (, ",") (number_literal "0x4aa") (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x46f0" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x46f0")) () ")"))))) (; ";")) (return_statement "return pcVar1;" (return "return") (identifier "pcVar1") (; ";")) (} "}"))) (if_statement "if (*(int *)(param_2 + 0x1c) != -0x54535255) {\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x595c,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4ab,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }" (if "if") (parenthesized_expression "(*(int *)(param_2 + 0x1c) != -0x54535255)" (( "(") (binary_expression "*(int *)(param_2 + 0x1c) != -0x54535255" (pointer_expression "*(int *)(param_2 + 0x1c)" (* "*") (cast_expression "(int *)(param_2 + 0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 0x1c)" (( "(") (binary_expression "param_2 + 0x1c" (identifier "param_2") (+ "+") (number_literal "0x1c")) () ")")))) (!= "!=") (number_literal "-0x54535255")) () ")")) (compound_statement "{\n    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x595c,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4ab,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);\n    return pcVar1;\n  }" ({ "{") (expression_statement "pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x595c,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4ab,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0);" (assignment_expression "pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x595c,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4ab,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" (identifier "pcVar1") (= "=") (cast_expression "(char *)(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x595c,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4ab,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(puVar30 + 0x175cf0))\n                               (*(int *)(puVar30 + 0x174fb0) + 0x595c,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4ab,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" (parenthesized_expression "(**(code **)(puVar30 + 0x175cf0))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175cf0)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175cf0)" (* "*") (cast_expression "(code **)(puVar30 + 0x175cf0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175cf0)" (( "(") (binary_expression "puVar30 + 0x175cf0" (identifier "puVar30") (+ "+") (number_literal "0x175cf0")) () ")"))))) () ")")) (argument_list "(*(int *)(puVar30 + 0x174fb0) + 0x595c,\n                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4ab,\n                                *(int *)(puVar30 + 0x175020) + -0x46f0)" (( "(") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x595c" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x595c")) (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x48cc")) (, ",") (number_literal "0x4ab") (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x46f0" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x46f0")) () ")"))))) (; ";")) (return_statement "return pcVar1;" (return "return") (identifier "pcVar1") (; ";")) (} "}"))) (expression_statement "pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175cf4))(iVar20,param_2);" (assignment_expression "pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175cf4))(iVar20,param_2)" (identifier "pcStack_10fc") (= "=") (cast_expression "(char *)(**(code **)(puVar30 + 0x175cf4))(iVar20,param_2)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(puVar30 + 0x175cf4))(iVar20,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175cf4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175cf4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175cf4)" (* "*") (cast_expression "(code **)(puVar30 + 0x175cf4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175cf4)" (( "(") (binary_expression "puVar30 + 0x175cf4" (identifier "puVar30") (+ "+") (number_literal "0x175cf4")) () ")"))))) () ")")) (argument_list "(iVar20,param_2)" (( "(") (identifier "iVar20") (, ",") (identifier "param_2") () ")"))))) (; ";")) (expression_statement "iVar2 = (**(code **)(puVar30 + 0x175934))(iVar20,pcStack_10fc,2,param_2);" (assignment_expression "iVar2 = (**(code **)(puVar30 + 0x175934))(iVar20,pcStack_10fc,2,param_2)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(puVar30 + 0x175934))(iVar20,pcStack_10fc,2,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175934))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175934)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175934)" (* "*") (cast_expression "(code **)(puVar30 + 0x175934)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175934)" (( "(") (binary_expression "puVar30 + 0x175934" (identifier "puVar30") (+ "+") (number_literal "0x175934")) () ")"))))) () ")")) (argument_list "(iVar20,pcStack_10fc,2,param_2)" (( "(") (identifier "iVar20") (, ",") (identifier "pcStack_10fc") (, ",") (number_literal "2") (, ",") (identifier "param_2") () ")")))) (; ";")) (if_statement "if (iVar2 == 0) {\n    (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n    pcStack_10fc = (char *)0x0;\n    goto LAB_00287858;\n  }" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n    pcStack_10fc = (char *)0x0;\n    goto LAB_00287858;\n  }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf8)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf8)" (( "(") (binary_expression "puVar30 + 0x175bf8" (identifier "puVar30") (+ "+") (number_literal "0x175bf8")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" (identifier "pcStack_10fc") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (goto_statement "goto LAB_00287858;" (goto "goto") (statement_identifier "LAB_00287858") (; ";")) (} "}"))) (expression_statement "pcStack_10fc[0x18] = '\0';" (assignment_expression "pcStack_10fc[0x18] = '\0'" (subscript_expression "pcStack_10fc[0x18]" (identifier "pcStack_10fc") ([ "[") (number_literal "0x18") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcStack_10fc[0x19] = '\0';" (assignment_expression "pcStack_10fc[0x19] = '\0'" (subscript_expression "pcStack_10fc[0x19]" (identifier "pcStack_10fc") ([ "[") (number_literal "0x19") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcStack_10fc[0x1a] = '\0';" (assignment_expression "pcStack_10fc[0x1a] = '\0'" (subscript_expression "pcStack_10fc[0x1a]" (identifier "pcStack_10fc") ([ "[") (number_literal "0x1a") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcStack_10fc[0x1b] = '\x01';" (assignment_expression "pcStack_10fc[0x1b] = '\x01'" (subscript_expression "pcStack_10fc[0x1b]" (identifier "pcStack_10fc") ([ "[") (number_literal "0x1b") (] "]")) (= "=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) (; ";")) (expression_statement "pcStack_10fc[0x1c] = '\0';" (assignment_expression "pcStack_10fc[0x1c] = '\0'" (subscript_expression "pcStack_10fc[0x1c]" (identifier "pcStack_10fc") ([ "[") (number_literal "0x1c") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcStack_10fc[0x1d] = '\0';" (assignment_expression "pcStack_10fc[0x1d] = '\0'" (subscript_expression "pcStack_10fc[0x1d]" (identifier "pcStack_10fc") ([ "[") (number_literal "0x1d") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcStack_10fc[0x1e] = '\0';" (assignment_expression "pcStack_10fc[0x1e] = '\0'" (subscript_expression "pcStack_10fc[0x1e]" (identifier "pcStack_10fc") ([ "[") (number_literal "0x1e") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcStack_10fc[0x1f] = '\x01';" (assignment_expression "pcStack_10fc[0x1f] = '\x01'" (subscript_expression "pcStack_10fc[0x1f]" (identifier "pcStack_10fc") ([ "[") (number_literal "0x1f") (] "]")) (= "=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) (; ";")) (expression_statement "iVar2 = (**(code **)(puVar30 + 0x175578))(pcStack_10fc,param_2);" (assignment_expression "iVar2 = (**(code **)(puVar30 + 0x175578))(pcStack_10fc,param_2)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(puVar30 + 0x175578))(pcStack_10fc,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175578))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175578)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175578)" (* "*") (cast_expression "(code **)(puVar30 + 0x175578)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175578)" (( "(") (binary_expression "puVar30 + 0x175578" (identifier "puVar30") (+ "+") (number_literal "0x175578")) () ")"))))) () ")")) (argument_list "(pcStack_10fc,param_2)" (( "(") (identifier "pcStack_10fc") (, ",") (identifier "param_2") () ")")))) (; ";")) (if_statement "if (iVar2 == 0) {\n    (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n    pcStack_10fc = (char *)0x0;\n    goto LAB_00287858;\n  }" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n    pcStack_10fc = (char *)0x0;\n    goto LAB_00287858;\n  }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf8)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf8)" (( "(") (binary_expression "puVar30 + 0x175bf8" (identifier "puVar30") (+ "+") (number_literal "0x175bf8")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" (identifier "pcStack_10fc") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (goto_statement "goto LAB_00287858;" (goto "goto") (statement_identifier "LAB_00287858") (; ";")) (} "}"))) (expression_statement "iVar2 = iVar20 + 0x210;" (assignment_expression "iVar2 = iVar20 + 0x210" (identifier "iVar2") (= "=") (binary_expression "iVar20 + 0x210" (identifier "iVar20") (+ "+") (number_literal "0x210"))) (; ";")) (expression_statement "iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x7890,4);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x7890,4)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x7890,4)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d04))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175d04)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175d04)" (* "*") (cast_expression "(code **)(puVar30 + 0x175d04)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175d04)" (( "(") (binary_expression "puVar30 + 0x175d04" (identifier "puVar30") (+ "+") (number_literal "0x175d04")) () ")"))))) () ")")) (argument_list "(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x7890,4)" (( "(") (identifier "iVar2") (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x7890" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x7890")) (, ",") (number_literal "4") () ")")))) (; ";")) (if_statement "if (iVar3 == 0) {\n    iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n    if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c2,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(1,1);\n    if (puVar4 == (undefined1 *)0x0) {\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c7,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    *puVar4 = 0;\n    (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),puVar4);\n    iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78a0);\n    if (iVar19 != 0) {\n      iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac);\n      if (iVar19 == 0) {\n        puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n        if (puVar4 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar11 = 0;\n          iVar13 = *(int *)(puVar30 + 0x175020);\n          iVar22 = *(int *)(puVar30 + 0x1752b0);\n          iVar14 = *(int *)(puVar30 + 0x174fb8);\n          puVar21 = puVar4;\nLAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }\n      uStack_10d4 = 1;\n      goto LAB_00286050;\n    }\n    puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n    if (puVar4 == (undefined1 *)0x0) {\nLAB_0028544c:\n      uStack_10d4 = 0xffffffff;\n    }\n    else {\n      uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n      iStack_10cc = 0x1000;\n      uStack_10d4 = 0;\n      uStack_10c8 = 0;\n      uStack_10e4 = 0;\n      cVar17 = '\0';\n      puStack_10dc = (undefined1 *)0x0;\n      iVar19 = 0;\n      iVar11 = 0;\n      iVar13 = *(int *)(puVar30 + 0x175020);\n      iVar22 = *(int *)(puVar30 + 0x1752b0);\n      iVar14 = *(int *)(puVar30 + 0x174fb8);\n      puVar21 = puVar4;\n      while( true ) {\n        while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar11 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar9 = *(int *)(puVar30 + 0x174fc8);\n        iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n        iVar8 = 0;\n        while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0) {\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }\n        iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n        iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n        puVar21 = puVar4;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }\n      }\nLAB_0028573c:\n      (**(code **)(puVar30 + 0x175450))(uVar15);\n      if (iVar11 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar30 + 0x17575c))(iVar11);\n      }\nLAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x17575c))(iVar19);\n      }\n      if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n      }\n      (**(code **)(puVar30 + 0x17575c))(puVar4);\n      if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }\nLAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }\n        goto LAB_00287858;\n      }\n      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n    }\n    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n    goto LAB_00286050;\n  }" (if "if") (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n    if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c2,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(1,1);\n    if (puVar4 == (undefined1 *)0x0) {\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c7,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    *puVar4 = 0;\n    (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),puVar4);\n    iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78a0);\n    if (iVar19 != 0) {\n      iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac);\n      if (iVar19 == 0) {\n        puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n        if (puVar4 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar11 = 0;\n          iVar13 = *(int *)(puVar30 + 0x175020);\n          iVar22 = *(int *)(puVar30 + 0x1752b0);\n          iVar14 = *(int *)(puVar30 + 0x174fb8);\n          puVar21 = puVar4;\nLAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }\n      uStack_10d4 = 1;\n      goto LAB_00286050;\n    }\n    puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n    if (puVar4 == (undefined1 *)0x0) {\nLAB_0028544c:\n      uStack_10d4 = 0xffffffff;\n    }\n    else {\n      uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n      iStack_10cc = 0x1000;\n      uStack_10d4 = 0;\n      uStack_10c8 = 0;\n      uStack_10e4 = 0;\n      cVar17 = '\0';\n      puStack_10dc = (undefined1 *)0x0;\n      iVar19 = 0;\n      iVar11 = 0;\n      iVar13 = *(int *)(puVar30 + 0x175020);\n      iVar22 = *(int *)(puVar30 + 0x1752b0);\n      iVar14 = *(int *)(puVar30 + 0x174fb8);\n      puVar21 = puVar4;\n      while( true ) {\n        while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar11 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar9 = *(int *)(puVar30 + 0x174fc8);\n        iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n        iVar8 = 0;\n        while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0) {\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }\n        iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n        iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n        puVar21 = puVar4;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }\n      }\nLAB_0028573c:\n      (**(code **)(puVar30 + 0x175450))(uVar15);\n      if (iVar11 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar30 + 0x17575c))(iVar11);\n      }\nLAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x17575c))(iVar19);\n      }\n      if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n      }\n      (**(code **)(puVar30 + 0x17575c))(puVar4);\n      if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }\nLAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }\n        goto LAB_00287858;\n      }\n      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n    }\n    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n    goto LAB_00286050;\n  }" ({ "{") (expression_statement "iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(puVar30 + 0x175cf4))(0,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175cf4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175cf4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175cf4)" (* "*") (cast_expression "(code **)(puVar30 + 0x175cf4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175cf4)" (( "(") (binary_expression "puVar30 + 0x175cf4" (identifier "puVar30") (+ "+") (number_literal "0x175cf4")) () ")"))))) () ")")) (argument_list "(0,param_2)" (( "(") (number_literal "0") (, ",") (identifier "param_2") () ")")))) (; ";")) (if_statement "if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c2,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }" (if "if") (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c2,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c2,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c2,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175608)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175608)" (* "*") (cast_expression "(code **)(puVar30 + 0x175608)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175608)" (( "(") (binary_expression "puVar30 + 0x175608" (identifier "puVar30") (+ "+") (number_literal "0x175608")) () ")"))))) () ")")) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c2,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210)" (( "(") (identifier "param_2") (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x48cc")) (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x4700")) (, ",") (number_literal "0x4c2") (, ",") (number_literal "400") (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x46c8")) (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x6e78")) (, ",") (binary_expression "iVar20 + 0x2210" (identifier "iVar20") (+ "+") (number_literal "0x2210")) () ")"))) (; ";")) (if_statement "if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }" (if "if") (parenthesized_expression "(pcStack_10fc != (char *)0x0)" (( "(") (binary_expression "pcStack_10fc != (char *)0x0" (identifier "pcStack_10fc") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175d70)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175d70)" (* "*") (cast_expression "(code **)(puVar30 + 0x175d70)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175d70)" (( "(") (binary_expression "puVar30 + 0x175d70" (identifier "puVar30") (+ "+") (number_literal "0x175d70")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf8)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf8)" (( "(") (binary_expression "puVar30 + 0x175bf8" (identifier "puVar30") (+ "+") (number_literal "0x175bf8")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" (identifier "pcStack_10fc") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}"))) (goto_statement "goto LAB_00287858;" (goto "goto") (statement_identifier "LAB_00287858") (; ";")) (} "}"))) (expression_statement "puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(1,1);" (assignment_expression "puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(1,1)" (identifier "puVar4") (= "=") (cast_expression "(undefined1 *)(**(code **)(puVar30 + 0x175bf4))(1,1)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(puVar30 + 0x175bf4))(1,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf4)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf4)" (( "(") (binary_expression "puVar30 + 0x175bf4" (identifier "puVar30") (+ "+") (number_literal "0x175bf4")) () ")"))))) () ")")) (argument_list "(1,1)" (( "(") (number_literal "1") (, ",") (number_literal "1") () ")"))))) (; ";")) (if_statement "if (puVar4 == (undefined1 *)0x0) {\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c7,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }" (if "if") (parenthesized_expression "(puVar4 == (undefined1 *)0x0)" (( "(") (binary_expression "puVar4 == (undefined1 *)0x0" (identifier "puVar4") (== "==") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c7,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175634)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175634)" (* "*") (cast_expression "(code **)(puVar30 + 0x175634)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175634)" (( "(") (binary_expression "puVar30 + 0x175634" (identifier "puVar30") (+ "+") (number_literal "0x175634")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c7,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c7,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175608)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175608)" (* "*") (cast_expression "(code **)(puVar30 + 0x175608)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175608)" (( "(") (binary_expression "puVar30 + 0x175608" (identifier "puVar30") (+ "+") (number_literal "0x175608")) () ")"))))) () ")")) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c7,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210)" (( "(") (identifier "param_2") (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x48cc")) (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x4700")) (, ",") (number_literal "0x4c7") (, ",") (number_literal "400") (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x46c8")) (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x6e78")) (, ",") (binary_expression "iVar20 + 0x2210" (identifier "iVar20") (+ "+") (number_literal "0x2210")) () ")"))) (; ";")) (if_statement "if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }" (if "if") (parenthesized_expression "(pcStack_10fc != (char *)0x0)" (( "(") (binary_expression "pcStack_10fc != (char *)0x0" (identifier "pcStack_10fc") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175d70)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175d70)" (* "*") (cast_expression "(code **)(puVar30 + 0x175d70)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175d70)" (( "(") (binary_expression "puVar30 + 0x175d70" (identifier "puVar30") (+ "+") (number_literal "0x175d70")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf8)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf8)" (( "(") (binary_expression "puVar30 + 0x175bf8" (identifier "puVar30") (+ "+") (number_literal "0x175bf8")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" (identifier "pcStack_10fc") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}"))) (goto_statement "goto LAB_00287858;" (goto "goto") (statement_identifier "LAB_00287858") (; ";")) (} "}"))) (expression_statement "*puVar4 = 0;" (assignment_expression "*puVar4 = 0" (pointer_expression "*puVar4" (* "*") (identifier "puVar4")) (= "=") (number_literal "0")) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),puVar4);" (call_expression "(**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),puVar4)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759b0))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1759b0)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1759b0)" (* "*") (cast_expression "(code **)(puVar30 + 0x1759b0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1759b0)" (( "(") (binary_expression "puVar30 + 0x1759b0" (identifier "puVar30") (+ "+") (number_literal "0x1759b0")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(iVar3 + 0x3348),puVar4)" (( "(") (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" (* "*") (cast_expression "(undefined4 *)(iVar3 + 0x3348)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 0x3348)" (( "(") (binary_expression "iVar3 + 0x3348" (identifier "iVar3") (+ "+") (number_literal "0x3348")) () ")")))) (, ",") (identifier "puVar4") () ")"))) (; ";")) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78a0);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78a0)" (identifier "iVar19") (= "=") (call_expression "(**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78a0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1757f8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1757f8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1757f8)" (* "*") (cast_expression "(code **)(puVar30 + 0x1757f8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1757f8)" (( "(") (binary_expression "puVar30 + 0x1757f8" (identifier "puVar30") (+ "+") (number_literal "0x1757f8")) () ")"))))) () ")")) (argument_list "(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78a0)" (( "(") (identifier "iVar2") (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x78a0" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x78a0")) () ")")))) (; ";")) (if_statement "if (iVar19 != 0) {\n      iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac);\n      if (iVar19 == 0) {\n        puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n        if (puVar4 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar11 = 0;\n          iVar13 = *(int *)(puVar30 + 0x175020);\n          iVar22 = *(int *)(puVar30 + 0x1752b0);\n          iVar14 = *(int *)(puVar30 + 0x174fb8);\n          puVar21 = puVar4;\nLAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }\n      uStack_10d4 = 1;\n      goto LAB_00286050;\n    }" (if "if") (parenthesized_expression "(iVar19 != 0)" (( "(") (binary_expression "iVar19 != 0" (identifier "iVar19") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac);\n      if (iVar19 == 0) {\n        puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n        if (puVar4 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar11 = 0;\n          iVar13 = *(int *)(puVar30 + 0x175020);\n          iVar22 = *(int *)(puVar30 + 0x1752b0);\n          iVar14 = *(int *)(puVar30 + 0x174fb8);\n          puVar21 = puVar4;\nLAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }\n      uStack_10d4 = 1;\n      goto LAB_00286050;\n    }" ({ "{") (expression_statement "iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac)" (identifier "iVar19") (= "=") (call_expression "(**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac)" (parenthesized_expression "(**(code **)(puVar30 + 0x1757f8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1757f8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1757f8)" (* "*") (cast_expression "(code **)(puVar30 + 0x1757f8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1757f8)" (( "(") (binary_expression "puVar30 + 0x1757f8" (identifier "puVar30") (+ "+") (number_literal "0x1757f8")) () ")"))))) () ")")) (argument_list "(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac)" (( "(") (identifier "iVar2") (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x78ac" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x78ac")) () ")")))) (; ";")) (if_statement "if (iVar19 == 0) {\n        puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n        if (puVar4 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar11 = 0;\n          iVar13 = *(int *)(puVar30 + 0x175020);\n          iVar22 = *(int *)(puVar30 + 0x1752b0);\n          iVar14 = *(int *)(puVar30 + 0x174fb8);\n          puVar21 = puVar4;\nLAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }" (if "if") (parenthesized_expression "(iVar19 == 0)" (( "(") (binary_expression "iVar19 == 0" (identifier "iVar19") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);\n        if (puVar4 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar11 = 0;\n          iVar13 = *(int *)(puVar30 + 0x175020);\n          iVar22 = *(int *)(puVar30 + 0x1752b0);\n          iVar14 = *(int *)(puVar30 + 0x174fb8);\n          puVar21 = puVar4;\nLAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }\n        goto LAB_00287db0;\n      }" ({ "{") (expression_statement "puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);" (assignment_expression "puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1)" (identifier "puVar4") (= "=") (cast_expression "(undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(puVar30 + 0x175bf4))(0x1000,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf4)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf4)" (( "(") (binary_expression "puVar30 + 0x175bf4" (identifier "puVar30") (+ "+") (number_literal "0x175bf4")) () ")"))))) () ")")) (argument_list "(0x1000,1)" (( "(") (number_literal "0x1000") (, ",") (number_literal "1") () ")"))))) (; ";")) (if_statement "if (puVar4 != (undefined1 *)0x0) {\n          uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar11 = 0;\n          iVar13 = *(int *)(puVar30 + 0x175020);\n          iVar22 = *(int *)(puVar30 + 0x1752b0);\n          iVar14 = *(int *)(puVar30 + 0x174fb8);\n          puVar21 = puVar4;\nLAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }" (if "if") (parenthesized_expression "(puVar4 != (undefined1 *)0x0)" (( "(") (binary_expression "puVar4 != (undefined1 *)0x0" (identifier "puVar4") (!= "!=") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n          iStack_10cc = 0x1000;\n          uStack_10d4 = 0;\n          uStack_10c8 = 0;\n          puStack_10dc = (undefined1 *)0x0;\n          cVar17 = '\0';\n          puStack_10ec = (undefined1 *)0x0;\n          iVar19 = 0;\n          iVar11 = 0;\n          iVar13 = *(int *)(puVar30 + 0x175020);\n          iVar22 = *(int *)(puVar30 + 0x1752b0);\n          iVar14 = *(int *)(puVar30 + 0x174fb8);\n          puVar21 = puVar4;\nLAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );\n        }" ({ "{") (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175bdc))();" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175bdc))()" (identifier "uVar15") (= "=") (call_expression "(**(code **)(puVar30 + 0x175bdc))()" (parenthesized_expression "(**(code **)(puVar30 + 0x175bdc))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bdc)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bdc)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bdc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bdc)" (( "(") (binary_expression "puVar30 + 0x175bdc" (identifier "puVar30") (+ "+") (number_literal "0x175bdc")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "iStack_10cc = 0x1000;" (assignment_expression "iStack_10cc = 0x1000" (identifier "iStack_10cc") (= "=") (number_literal "0x1000")) (; ";")) (expression_statement "uStack_10d4 = 0;" (assignment_expression "uStack_10d4 = 0" (identifier "uStack_10d4") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_10c8 = 0;" (assignment_expression "uStack_10c8 = 0" (identifier "uStack_10c8") (= "=") (number_literal "0")) (; ";")) (expression_statement "puStack_10dc = (undefined1 *)0x0;" (assignment_expression "puStack_10dc = (undefined1 *)0x0" (identifier "puStack_10dc") (= "=") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "cVar17 = '\0';" (assignment_expression "cVar17 = '\0'" (identifier "cVar17") (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "puStack_10ec = (undefined1 *)0x0;" (assignment_expression "puStack_10ec = (undefined1 *)0x0" (identifier "puStack_10ec") (= "=") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "iVar19 = 0;" (assignment_expression "iVar19 = 0" (identifier "iVar19") (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar11 = 0;" (assignment_expression "iVar11 = 0" (identifier "iVar11") (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar13 = *(int *)(puVar30 + 0x175020);" (assignment_expression "iVar13 = *(int *)(puVar30 + 0x175020)" (identifier "iVar13") (= "=") (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")"))))) (; ";")) (expression_statement "iVar22 = *(int *)(puVar30 + 0x1752b0);" (assignment_expression "iVar22 = *(int *)(puVar30 + 0x1752b0)" (identifier "iVar22") (= "=") (pointer_expression "*(int *)(puVar30 + 0x1752b0)" (* "*") (cast_expression "(int *)(puVar30 + 0x1752b0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x1752b0)" (( "(") (binary_expression "puVar30 + 0x1752b0" (identifier "puVar30") (+ "+") (number_literal "0x1752b0")) () ")"))))) (; ";")) (expression_statement "iVar14 = *(int *)(puVar30 + 0x174fb8);" (assignment_expression "iVar14 = *(int *)(puVar30 + 0x174fb8)" (identifier "iVar14") (= "=") (pointer_expression "*(int *)(puVar30 + 0x174fb8)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb8)" (( "(") (binary_expression "puVar30 + 0x174fb8" (identifier "puVar30") (+ "+") (number_literal "0x174fb8")) () ")"))))) (; ";")) (expression_statement "puVar21 = puVar4;" (assignment_expression "puVar21 = puVar4" (identifier "puVar21") (= "=") (identifier "puVar4")) (; ";")) (labeled_statement "LAB_00285dec:\n          do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );" (statement_identifier "LAB_00285dec") (: ":") (do_statement "do {\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          } while( true );" (do "do") (compound_statement "{\n            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);\n            if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }\n            if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;\n            *puVar21 = 0;\n            uStack_10ac = 0;\n            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }\n            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n            if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }\n            iVar9 = *(int *)(puVar30 + 0x174fc8);\n            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n            iVar8 = 0;\n            while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }\n            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n            puVar21 = puVar4;\n            if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }\n          }" ({ "{") (expression_statement "iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);" (assignment_expression "iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc)" (identifier "iVar8") (= "=") (call_expression "(**(code **)(puVar30 + 0x175a78))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a78))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175a78)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175a78)" (* "*") (cast_expression "(code **)(puVar30 + 0x175a78)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175a78)" (( "(") (binary_expression "puVar30 + 0x175a78" (identifier "puVar30") (+ "+") (number_literal "0x175a78")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")")))) (; ";")) (if_statement "if ((iVar8 != -1) && (iVar8 != 10)) {\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }" (if "if") (parenthesized_expression "((iVar8 != -1) && (iVar8 != 10))" (( "(") (binary_expression "(iVar8 != -1) && (iVar8 != 10)" (parenthesized_expression "(iVar8 != -1)" (( "(") (binary_expression "iVar8 != -1" (identifier "iVar8") (!= "!=") (number_literal "-1")) () ")")) (&& "&&") (parenthesized_expression "(iVar8 != 10)" (( "(") (binary_expression "iVar8 != 10" (identifier "iVar8") (!= "!=") (number_literal "10")) () ")"))) () ")")) (compound_statement "{\n              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);\n              iVar24 = (int)puVar21 - (int)puVar4;\n              if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }\n            }" ({ "{") (expression_statement "iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);" (assignment_expression "iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc)" (identifier "iVar9") (= "=") (call_expression "(**(code **)(puVar30 + 0x175e30))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175e30))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175e30)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175e30)" (* "*") (cast_expression "(code **)(puVar30 + 0x175e30)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175e30)" (( "(") (binary_expression "puVar30 + 0x175e30" (identifier "puVar30") (+ "+") (number_literal "0x175e30")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")")))) (; ";")) (expression_statement "iVar24 = (int)puVar21 - (int)puVar4;" (assignment_expression "iVar24 = (int)puVar21 - (int)puVar4" (identifier "iVar24") (= "=") (binary_expression "(int)puVar21 - (int)puVar4" (cast_expression "(int)puVar21" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar21")) (- "-") (cast_expression "(int)puVar4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar4")))) (; ";")) (if_statement "if (iVar9 == 0) {\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }" (if "if") (parenthesized_expression "(iVar9 == 0)" (( "(") (binary_expression "iVar9 == 0" (identifier "iVar9") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }\n                *puVar21 = (char)iVar8;\n                puVar21 = puVar21 + 1;\n                goto LAB_00285dec;\n              }" ({ "{") (if_statement "if (iStack_10cc <= iVar24 + 1) {\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }" (if "if") (parenthesized_expression "(iStack_10cc <= iVar24 + 1)" (( "(") (binary_expression "iStack_10cc <= iVar24 + 1" (identifier "iStack_10cc") (<= "<=") (binary_expression "iVar24 + 1" (identifier "iVar24") (+ "+") (number_literal "1"))) () ")")) (compound_statement "{\n                  iStack_10cc = iStack_10cc * 2;\n                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;\n                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;\n                  puVar21 = puVar4 + iVar24;\n                }" ({ "{") (expression_statement "iStack_10cc = iStack_10cc * 2;" (assignment_expression "iStack_10cc = iStack_10cc * 2" (identifier "iStack_10cc") (= "=") (binary_expression "iStack_10cc * 2" (identifier "iStack_10cc") (* "*") (number_literal "2"))) (; ";")) (expression_statement "puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)\n                  ;" (assignment_expression "puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)" (identifier "puVar4") (= "=") (cast_expression "(undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175b08))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175b08)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175b08)" (* "*") (cast_expression "(code **)(puVar30 + 0x175b08)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175b08)" (( "(") (binary_expression "puVar30 + 0x175b08" (identifier "puVar30") (+ "+") (number_literal "0x175b08")) () ")"))))) () ")")) (argument_list "(puVar4,iStack_10cc + 2,1)" (( "(") (identifier "puVar4") (, ",") (binary_expression "iStack_10cc + 2" (identifier "iStack_10cc") (+ "+") (number_literal "2")) (, ",") (number_literal "1") () ")"))))) (; ";")) (if_statement "if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;" (if "if") (parenthesized_expression "(puVar4 == (undefined1 *)0x0)" (( "(") (binary_expression "puVar4 == (undefined1 *)0x0" (identifier "puVar4") (== "==") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_00285f24;" (goto "goto") (statement_identifier "LAB_00285f24") (; ";"))) (expression_statement "puVar21 = puVar4 + iVar24;" (assignment_expression "puVar21 = puVar4 + iVar24" (identifier "puVar21") (= "=") (binary_expression "puVar4 + iVar24" (identifier "puVar4") (+ "+") (identifier "iVar24"))) (; ";")) (} "}"))) (expression_statement "*puVar21 = (char)iVar8;" (assignment_expression "*puVar21 = (char)iVar8" (pointer_expression "*puVar21" (* "*") (identifier "puVar21")) (= "=") (cast_expression "(char)iVar8" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "iVar8"))) (; ";")) (expression_statement "puVar21 = puVar21 + 1;" (assignment_expression "puVar21 = puVar21 + 1" (identifier "puVar21") (= "=") (binary_expression "puVar21 + 1" (identifier "puVar21") (+ "+") (number_literal "1"))) (; ";")) (goto_statement "goto LAB_00285dec;" (goto "goto") (statement_identifier "LAB_00285dec") (; ";")) (} "}"))) (} "}"))) (if_statement "if ((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))\n            goto LAB_00285f24;" (if "if") (parenthesized_expression "((puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))" (( "(") (binary_expression "(puVar4 == (undefined1 *)0x0) ||\n               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)" (parenthesized_expression "(puVar4 == (undefined1 *)0x0)" (( "(") (binary_expression "puVar4 == (undefined1 *)0x0" (identifier "puVar4") (== "==") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (|| "||") (parenthesized_expression "(iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)" (( "(") (comma_expression "iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0" (assignment_expression "iStack_10cc = ((int)puVar21 - (int)puVar4) + 1" (identifier "iStack_10cc") (= "=") (binary_expression "((int)puVar21 - (int)puVar4) + 1" (parenthesized_expression "((int)puVar21 - (int)puVar4)" (( "(") (binary_expression "(int)puVar21 - (int)puVar4" (cast_expression "(int)puVar21" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar21")) (- "-") (cast_expression "(int)puVar4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar4"))) () ")")) (+ "+") (number_literal "1"))) (, ",") (binary_expression "(int)puVar21 - (int)puVar4 == 0" (binary_expression "(int)puVar21 - (int)puVar4" (cast_expression "(int)puVar21" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar21")) (- "-") (cast_expression "(int)puVar4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar4"))) (== "==") (number_literal "0"))) () ")"))) () ")")) (goto_statement "goto LAB_00285f24;" (goto "goto") (statement_identifier "LAB_00285f24") (; ";"))) (expression_statement "*puVar21 = 0;" (assignment_expression "*puVar21 = 0" (pointer_expression "*puVar21" (* "*") (identifier "puVar21")) (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_10ac = 0;" (assignment_expression "uStack_10ac = 0" (identifier "uStack_10ac") (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);" (assignment_expression "iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1)" (identifier "iVar11") (= "=") (call_expression "(**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf4)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf4)" (( "(") (binary_expression "puVar30 + 0x175bf4" (identifier "puVar30") (+ "+") (number_literal "0x175bf4")) () ")"))))) () ")")) (argument_list "(iStack_10cc,1)" (( "(") (identifier "iStack_10cc") (, ",") (number_literal "1") () ")")))) (; ";")) (if_statement "if (iVar11 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }" (if "if") (parenthesized_expression "(iVar11 == 0)" (( "(") (binary_expression "iVar11 == 0" (identifier "iVar11") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              goto LAB_00287bf8;\n            }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175450))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x175450))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x175450))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175450)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175450)" (* "*") (cast_expression "(code **)(puVar30 + 0x175450)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175450)" (( "(") (binary_expression "puVar30 + 0x175450" (identifier "puVar30") (+ "+") (number_literal "0x175450")) () ")"))))) () ")")) (argument_list "(uVar15)" (( "(") (identifier "uVar15") () ")"))) (; ";")) (goto_statement "goto LAB_00287bf8;" (goto "goto") (statement_identifier "LAB_00287bf8") (; ";")) (} "}"))) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1)" (identifier "iVar19") (= "=") (call_expression "(**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf4)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf4)" (( "(") (binary_expression "puVar30 + 0x175bf4" (identifier "puVar30") (+ "+") (number_literal "0x175bf4")) () ")"))))) () ")")) (argument_list "(iStack_10cc,1)" (( "(") (identifier "iStack_10cc") (, ",") (number_literal "1") () ")")))) (; ";")) (if_statement "if (iVar19 == 0) {\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }" (if "if") (parenthesized_expression "(iVar19 == 0)" (( "(") (binary_expression "iVar19 == 0" (identifier "iVar19") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n              (**(code **)(puVar30 + 0x175450))(uVar15);\n              iVar19 = 0;\n              goto LAB_00287be8;\n            }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175450))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x175450))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x175450))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175450)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175450)" (* "*") (cast_expression "(code **)(puVar30 + 0x175450)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175450)" (( "(") (binary_expression "puVar30 + 0x175450" (identifier "puVar30") (+ "+") (number_literal "0x175450")) () ")"))))) () ")")) (argument_list "(uVar15)" (( "(") (identifier "uVar15") () ")"))) (; ";")) (expression_statement "iVar19 = 0;" (assignment_expression "iVar19 = 0" (identifier "iVar19") (= "=") (number_literal "0")) (; ";")) (goto_statement "goto LAB_00287be8;" (goto "goto") (statement_identifier "LAB_00287be8") (; ";")) (} "}"))) (expression_statement "iVar9 = *(int *)(puVar30 + 0x174fc8);" (assignment_expression "iVar9 = *(int *)(puVar30 + 0x174fc8)" (identifier "iVar9") (= "=") (pointer_expression "*(int *)(puVar30 + 0x174fc8)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fc8)" (( "(") (binary_expression "puVar30 + 0x174fc8" (identifier "puVar30") (+ "+") (number_literal "0x174fc8")) () ")"))))) (; ";")) (expression_statement "iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;" (assignment_expression "iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8" (identifier "iVar24") (= "=") (binary_expression "*(int *)(puVar30 + 0x174fb8) + -0x2d8" (pointer_expression "*(int *)(puVar30 + 0x174fb8)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb8)" (( "(") (binary_expression "puVar30 + 0x174fb8" (identifier "puVar30") (+ "+") (number_literal "0x174fb8")) () ")")))) (+ "+") (number_literal "-0x2d8"))) (; ";")) (expression_statement "iVar8 = 0;" (assignment_expression "iVar8 = 0" (identifier "iVar8") (= "=") (number_literal "0")) (; ";")) (while_statement "while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0) {\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }" (while "while") (parenthesized_expression "(iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0)" (( "(") (comma_expression "iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n                  iVar6 == 0" (assignment_expression "iVar6 = (**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af)" (identifier "iVar6") (= "=") (call_expression "(**(code **)(puVar30 + 0x175720))\n                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af)" (parenthesized_expression "(**(code **)(puVar30 + 0x175720))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175720)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175720)" (* "*") (cast_expression "(code **)(puVar30 + 0x175720)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175720)" (( "(") (binary_expression "puVar30 + 0x175720" (identifier "puVar30") (+ "+") (number_literal "0x175720")) () ")"))))) () ")")) (argument_list "(uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af)" (( "(") (identifier "uVar15") (, ",") (number_literal "0") (, ",") (identifier "iVar11") (, ",") (identifier "iStack_10cc") (, ",") (identifier "puVar4") (, ",") (identifier "iVar24") (, ",") (binary_expression "iVar9 + 0x2c44" (identifier "iVar9") (+ "+") (number_literal "0x2c44")) (, ",") (binary_expression "iVar13 + 0x7178" (identifier "iVar13") (+ "+") (number_literal "0x7178")) (, ",") (number_literal "0") (, ",") (pointer_expression "&uStack_10b0" (& "&") (identifier "uStack_10b0")) (, ",") (pointer_expression "&uStack_10ac" (& "&") (identifier "uStack_10ac")) (, ",") (pointer_expression "&uStack_10af" (& "&") (identifier "uStack_10af")) () ")")))) (, ",") (binary_expression "iVar6 == 0" (identifier "iVar6") (== "==") (number_literal "0"))) () ")")) (compound_statement "{\n              if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }\n              if (iVar8 != 1) goto LAB_00285914;\n              iStack_10a8 = 0;\n              uVar12 = (**(code **)(puVar30 + 0x175a20))();\n              while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }\n              if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }\n            }" ({ "{") (if_statement "if (iVar8 == 0) {\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                iStack_10a8 = 0;\n                iVar7 = *(int *)(puVar30 + 0x174fc8);\n                iVar28 = *(int *)(puVar30 + 0x174fb0);\n                iVar6 = 0;\nLAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );\n              }" ({ "{") (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" (identifier "iStack_10a8") (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar7 = *(int *)(puVar30 + 0x174fc8);" (assignment_expression "iVar7 = *(int *)(puVar30 + 0x174fc8)" (identifier "iVar7") (= "=") (pointer_expression "*(int *)(puVar30 + 0x174fc8)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fc8)" (( "(") (binary_expression "puVar30 + 0x174fc8" (identifier "puVar30") (+ "+") (number_literal "0x174fc8")) () ")"))))) (; ";")) (expression_statement "iVar28 = *(int *)(puVar30 + 0x174fb0);" (assignment_expression "iVar28 = *(int *)(puVar30 + 0x174fb0)" (identifier "iVar28") (= "=") (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")"))))) (; ";")) (expression_statement "iVar6 = 0;" (assignment_expression "iVar6 = 0" (identifier "iVar6") (= "=") (number_literal "0")) (; ";")) (labeled_statement "LAB_002857fc:\n                do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );" (statement_identifier "LAB_002857fc") (: ":") (do_statement "do {\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                } while( true );" (do "do") (compound_statement "{\n                  iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);\n                  if (iVar5 != 0) goto LAB_00285914;\n                  if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }\n                  iVar6 = iVar6 + 1;\n                }" ({ "{") (expression_statement "iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);" (assignment_expression "iVar5 = (**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" (identifier "iVar5") (= "=") (call_expression "(**(code **)(puVar30 + 0x175720))\n                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" (parenthesized_expression "(**(code **)(puVar30 + 0x175720))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175720)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175720)" (* "*") (cast_expression "(code **)(puVar30 + 0x175720)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175720)" (( "(") (binary_expression "puVar30 + 0x175720" (identifier "puVar30") (+ "+") (number_literal "0x175720")) () ")"))))) () ")")) (argument_list "(uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,\n                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" (( "(") (identifier "uVar15") (, ",") (number_literal "0") (, ",") (identifier "iVar19") (, ",") (identifier "iStack_10cc") (, ",") (identifier "iVar11") (, ",") (identifier "iVar24") (, ",") (binary_expression "iVar7 + 0xabc" (identifier "iVar7") (+ "+") (number_literal "0xabc")) (, ",") (identifier "iVar24") (, ",") (number_literal "0") (, ",") (pointer_expression "&cStack_10ae" (& "&") (identifier "cStack_10ae")) (, ",") (pointer_expression "&iStack_10a8" (& "&") (identifier "iStack_10a8")) (, ",") (pointer_expression "&uStack_10ad" (& "&") (identifier "uStack_10ad")) () ")")))) (; ";")) (if_statement "if (iVar5 != 0) goto LAB_00285914;" (if "if") (parenthesized_expression "(iVar5 != 0)" (( "(") (binary_expression "iVar5 != 0" (identifier "iVar5") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00285914;" (goto "goto") (statement_identifier "LAB_00285914") (; ";"))) (if_statement "if (iVar6 == 1) {\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }\n                  else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }" (if "if") (parenthesized_expression "(iVar6 == 1)" (( "(") (binary_expression "iVar6 == 1" (identifier "iVar6") (== "==") (number_literal "1")) () ")")) (compound_statement "{\n                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n                  }" ({ "{") (expression_statement "puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);" (assignment_expression "puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10)" (identifier "puStack_10dc") (= "=") (cast_expression "(undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(puVar30 + 0x175a28))(iVar19,0,10)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a28))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175a28)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175a28)" (* "*") (cast_expression "(code **)(puVar30 + 0x175a28)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175a28)" (( "(") (binary_expression "puVar30 + 0x175a28" (identifier "puVar30") (+ "+") (number_literal "0x175a28")) () ")"))))) () ")")) (argument_list "(iVar19,0,10)" (( "(") (identifier "iVar19") (, ",") (number_literal "0") (, ",") (number_literal "10") () ")"))))) (; ";")) (} "}")) (else_clause "else if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }" (else "else") (if_statement "if (iVar6 == 2) {\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }\n                  else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }" (if "if") (parenthesized_expression "(iVar6 == 2)" (( "(") (binary_expression "iVar6 == 2" (identifier "iVar6") (== "==") (number_literal "2")) () ")")) (compound_statement "{\n                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;\n                    if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }\n                  }" ({ "{") (expression_statement "iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);" (assignment_expression "iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19)" (identifier "iVar5") (= "=") (call_expression "(**(code **)(puVar30 + 0x175a20))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a20))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175a20)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175a20)" (* "*") (cast_expression "(code **)(puVar30 + 0x175a20)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175a20)" (( "(") (binary_expression "puVar30 + 0x175a20" (identifier "puVar30") (+ "+") (number_literal "0x175a20")) () ")"))))) () ")")) (argument_list "(iVar19)" (( "(") (identifier "iVar19") () ")")))) (; ";")) (expression_statement "puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)\n                    ;" (assignment_expression "puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)" (identifier "puStack_10ec") (= "=") (cast_expression "(undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf4)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf4)" (( "(") (binary_expression "puVar30 + 0x175bf4" (identifier "puVar30") (+ "+") (number_literal "0x175bf4")) () ")"))))) () ")")) (argument_list "(iVar5 + 0x1000,1)" (( "(") (binary_expression "iVar5 + 0x1000" (identifier "iVar5") (+ "+") (number_literal "0x1000")) (, ",") (number_literal "1") () ")"))))) (; ";")) (if_statement "if (puStack_10ec != (undefined1 *)0x0) {\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }" (if "if") (parenthesized_expression "(puStack_10ec != (undefined1 *)0x0)" (( "(") (binary_expression "puStack_10ec != (undefined1 *)0x0" (identifier "puStack_10ec") (!= "!=") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);\n                      iVar6 = 3;\n                      goto LAB_002857fc;\n                    }" ({ "{") (expression_statement "iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);" (assignment_expression "iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19)" (identifier "iVar6") (= "=") (call_expression "(**(code **)(puVar30 + 0x175a20))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a20))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175a20)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175a20)" (* "*") (cast_expression "(code **)(puVar30 + 0x175a20)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175a20)" (( "(") (binary_expression "puVar30 + 0x175a20" (identifier "puVar30") (+ "+") (number_literal "0x175a20")) () ")"))))) () ")")) (argument_list "(iVar19)" (( "(") (identifier "iVar19") () ")")))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);" (call_expression "(**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000)" (parenthesized_expression "(**(code **)(puVar30 + 0x175f24))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175f24)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175f24)" (* "*") (cast_expression "(code **)(puVar30 + 0x175f24)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175f24)" (( "(") (binary_expression "puVar30 + 0x175f24" (identifier "puVar30") (+ "+") (number_literal "0x175f24")) () ")"))))) () ")")) (argument_list "(puStack_10ec,iVar19,iVar6 + 0x1000)" (( "(") (identifier "puStack_10ec") (, ",") (identifier "iVar19") (, ",") (binary_expression "iVar6 + 0x1000" (identifier "iVar6") (+ "+") (number_literal "0x1000")) () ")"))) (; ";")) (expression_statement "iVar6 = 3;" (assignment_expression "iVar6 = 3" (identifier "iVar6") (= "=") (number_literal "3")) (; ";")) (goto_statement "goto LAB_002857fc;" (goto "goto") (statement_identifier "LAB_002857fc") (; ";")) (} "}"))) (} "}")) (else_clause "else if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }" (else "else") (if_statement "if (iVar6 == 0) {\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }" (if "if") (parenthesized_expression "(iVar6 == 0)" (( "(") (binary_expression "iVar6 == 0" (identifier "iVar6") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                    if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }\n                  }" ({ "{") (expression_statement "iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);" (assignment_expression "iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890)" (identifier "iVar5") (= "=") (call_expression "(**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890)" (parenthesized_expression "(**(code **)(puVar30 + 0x1753e4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1753e4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1753e4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1753e4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1753e4)" (( "(") (binary_expression "puVar30 + 0x1753e4" (identifier "puVar30") (+ "+") (number_literal "0x1753e4")) () ")"))))) () ")")) (argument_list "(iVar19,iVar28 + 0x7890)" (( "(") (identifier "iVar19") (, ",") (binary_expression "iVar28 + 0x7890" (identifier "iVar28") (+ "+") (number_literal "0x7890")) () ")")))) (; ";")) (if_statement "if (iVar5 == 0) {\n                      cVar17 = -1;\n                    }\n                    else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }" (if "if") (parenthesized_expression "(iVar5 == 0)" (( "(") (binary_expression "iVar5 == 0" (identifier "iVar5") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                      cVar17 = -1;\n                    }" ({ "{") (expression_statement "cVar17 = -1;" (assignment_expression "cVar17 = -1" (identifier "cVar17") (= "=") (number_literal "-1")) (; ";")) (} "}")) (else_clause "else {\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }" (else "else") (compound_statement "{\n                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                    }" ({ "{") (expression_statement "cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);" (assignment_expression "cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10)" (identifier "cVar17") (= "=") (call_expression "(**(code **)(puVar30 + 0x175c34))(iVar19,0,10)" (parenthesized_expression "(**(code **)(puVar30 + 0x175c34))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175c34)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175c34)" (* "*") (cast_expression "(code **)(puVar30 + 0x175c34)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175c34)" (( "(") (binary_expression "puVar30 + 0x175c34" (identifier "puVar30") (+ "+") (number_literal "0x175c34")) () ")"))))) () ")")) (argument_list "(iVar19,0,10)" (( "(") (identifier "iVar19") (, ",") (number_literal "0") (, ",") (number_literal "10") () ")")))) (; ";")) (} "}")))) (} "}"))))))) (expression_statement "iVar6 = iVar6 + 1;" (assignment_expression "iVar6 = iVar6 + 1" (identifier "iVar6") (= "=") (binary_expression "iVar6 + 1" (identifier "iVar6") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";"))) (} "}"))) (if_statement "if (iVar8 != 1) goto LAB_00285914;" (if "if") (parenthesized_expression "(iVar8 != 1)" (( "(") (binary_expression "iVar8 != 1" (identifier "iVar8") (!= "!=") (number_literal "1")) () ")")) (goto_statement "goto LAB_00285914;" (goto "goto") (statement_identifier "LAB_00285914") (; ";"))) (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" (identifier "iStack_10a8") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar12 = (**(code **)(puVar30 + 0x175a20))();" (assignment_expression "uVar12 = (**(code **)(puVar30 + 0x175a20))()" (identifier "uVar12") (= "=") (call_expression "(**(code **)(puVar30 + 0x175a20))()" (parenthesized_expression "(**(code **)(puVar30 + 0x175a20))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175a20)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175a20)" (* "*") (cast_expression "(code **)(puVar30 + 0x175a20)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175a20)" (( "(") (binary_expression "puVar30 + 0x175a20" (identifier "puVar30") (+ "+") (number_literal "0x175a20")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (while_statement "while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    ) {\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }" (while "while") (parenthesized_expression "(iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0\n                    )" (( "(") (comma_expression "iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0" (assignment_expression "iVar6 = (**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" (identifier "iVar6") (= "=") (call_expression "(**(code **)(puVar30 + 0x175720))\n                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" (parenthesized_expression "(**(code **)(puVar30 + 0x175720))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175720)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175720)" (* "*") (cast_expression "(code **)(puVar30 + 0x175720)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175720)" (( "(") (binary_expression "puVar30 + 0x175720" (identifier "puVar30") (+ "+") (number_literal "0x175720")) () ")"))))) () ")")) (argument_list "(uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,\n                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" (( "(") (identifier "uVar15") (, ",") (number_literal "0") (, ",") (identifier "iVar19") (, ",") (identifier "iStack_10cc") (, ",") (identifier "iVar11") (, ",") (identifier "iVar24") (, ",") (binary_expression "iVar14 + -0x3bc" (identifier "iVar14") (+ "+") (number_literal "-0x3bc")) (, ",") (identifier "iVar24") (, ",") (number_literal "0") (, ",") (pointer_expression "&cStack_10ae" (& "&") (identifier "cStack_10ae")) (, ",") (pointer_expression "&iStack_10a8" (& "&") (identifier "iStack_10a8")) (, ",") (pointer_expression "&uStack_10ad" (& "&") (identifier "uStack_10ad")) () ")")))) (, ",") (binary_expression "iVar6 == 0" (identifier "iVar6") (== "==") (number_literal "0"))) () ")")) (compound_statement "{\n                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }\n              }" ({ "{") (if_statement "if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }" (if "if") (parenthesized_expression "((cStack_10ae != '\0') && (0 < iStack_10a8))" (( "(") (binary_expression "(cStack_10ae != '\0') && (0 < iStack_10a8)" (parenthesized_expression "(cStack_10ae != '\0')" (( "(") (binary_expression "cStack_10ae != '\0'" (identifier "cStack_10ae") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "(0 < iStack_10a8)" (( "(") (binary_expression "0 < iStack_10a8" (number_literal "0") (< "<") (identifier "iStack_10a8")) () ")"))) () ")")) (compound_statement "{\n                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n                  if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }\n                }" ({ "{") (expression_statement "iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);" (assignment_expression "iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1)" (identifier "iVar6") (= "=") (call_expression "(*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1)" (parenthesized_expression "(*(code *)(iVar22 + 0x458c))" (( "(") (pointer_expression "*(code *)(iVar22 + 0x458c)" (* "*") (cast_expression "(code *)(iVar22 + 0x458c)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar22 + 0x458c)" (( "(") (binary_expression "iVar22 + 0x458c" (identifier "iVar22") (+ "+") (number_literal "0x458c")) () ")")))) () ")")) (argument_list "(iVar11 + iStack_10a8 + -1)" (( "(") (binary_expression "iVar11 + iStack_10a8 + -1" (binary_expression "iVar11 + iStack_10a8" (identifier "iVar11") (+ "+") (identifier "iStack_10a8")) (+ "+") (number_literal "-1")) () ")")))) (; ";")) (if_statement "if ((int)uVar12 < iVar6) {\n                    uVar12 = 0;\n                  }\n                  else {\n                    uVar12 = uVar12 - iVar6;\n                  }" (if "if") (parenthesized_expression "((int)uVar12 < iVar6)" (( "(") (binary_expression "(int)uVar12 < iVar6" (cast_expression "(int)uVar12" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar12")) (< "<") (identifier "iVar6")) () ")")) (compound_statement "{\n                    uVar12 = 0;\n                  }" ({ "{") (expression_statement "uVar12 = 0;" (assignment_expression "uVar12 = 0" (identifier "uVar12") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n                    uVar12 = uVar12 - iVar6;\n                  }" (else "else") (compound_statement "{\n                    uVar12 = uVar12 - iVar6;\n                  }" ({ "{") (expression_statement "uVar12 = uVar12 - iVar6;" (assignment_expression "uVar12 = uVar12 - iVar6" (identifier "uVar12") (= "=") (binary_expression "uVar12 - iVar6" (identifier "uVar12") (- "-") (identifier "iVar6"))) (; ";")) (} "}")))) (} "}"))) (} "}"))) (if_statement "if (cVar17 == -1) {\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }\n              else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }" (if "if") (parenthesized_expression "(cVar17 == -1)" (( "(") (binary_expression "cVar17 == -1" (identifier "cVar17") (== "==") (number_literal "-1")) () ")")) (compound_statement "{\n                if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }\n                if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }\n                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);\n                if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }\n                if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }\nLAB_00285914:\n                iVar8 = iVar8 + 1;\n              }" ({ "{") (if_statement "if (0 < (int)uStack_10c8) {\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }" (if "if") (parenthesized_expression "(0 < (int)uStack_10c8)" (( "(") (binary_expression "0 < (int)uStack_10c8" (number_literal "0") (< "<") (cast_expression "(int)uStack_10c8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uStack_10c8"))) () ")")) (compound_statement "{\n                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n                  if (iVar6 < 0) goto LAB_00287db0;\n                  uStack_10c8 = 0;\n                }" ({ "{") (expression_statement "iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);" (assignment_expression "iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3)" (identifier "iVar6") (= "=") (call_expression "(**(code **)(puVar30 + 0x175a04))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a04))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175a04)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175a04)" (* "*") (cast_expression "(code **)(puVar30 + 0x175a04)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175a04)" (( "(") (binary_expression "puVar30 + 0x175a04" (identifier "puVar30") (+ "+") (number_literal "0x175a04")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")")))) (; ";")) (if_statement "if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))\n                  goto LAB_00287db0;" (if "if") (parenthesized_expression "((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))" (( "(") (binary_expression "(iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0)" (parenthesized_expression "(iVar6 < 0)" (( "(") (binary_expression "iVar6 < 0" (identifier "iVar6") (< "<") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0)" (( "(") (comma_expression "iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0" (assignment_expression "iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3)" (identifier "iVar6") (= "=") (call_expression "(**(code **)(puVar30 + 0x175a10))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a10))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175a10)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175a10)" (* "*") (cast_expression "(code **)(puVar30 + 0x175a10)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175a10)" (( "(") (binary_expression "puVar30 + 0x175a10" (identifier "puVar30") (+ "+") (number_literal "0x175a10")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")")))) (, ",") (binary_expression "iVar6 < 0" (identifier "iVar6") (< "<") (number_literal "0"))) () ")"))) () ")")) (goto_statement "goto LAB_00287db0;" (goto "goto") (statement_identifier "LAB_00287db0") (; ";"))) (expression_statement "(**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);" (call_expression "(**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759bc))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1759bc)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1759bc)" (* "*") (cast_expression "(code **)(puVar30 + 0x1759bc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1759bc)" (( "(") (binary_expression "puVar30 + 0x1759bc" (identifier "puVar30") (+ "+") (number_literal "0x1759bc")) () ")"))))) () ")")) (argument_list "(iVar3,uStack_10d4 - uStack_10c8)" (( "(") (identifier "iVar3") (, ",") (binary_expression "uStack_10d4 - uStack_10c8" (identifier "uStack_10d4") (- "-") (identifier "uStack_10c8")) () ")"))) (; ";")) (expression_statement "iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);" (assignment_expression "iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3)" (identifier "iVar6") (= "=") (call_expression "(**(code **)(puVar30 + 0x175a10))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a10))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175a10)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175a10)" (* "*") (cast_expression "(code **)(puVar30 + 0x175a10)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175a10)" (( "(") (binary_expression "puVar30 + 0x175a10" (identifier "puVar30") (+ "+") (number_literal "0x175a10")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")")))) (; ";")) (if_statement "if (iVar6 < 0) goto LAB_00287db0;" (if "if") (parenthesized_expression "(iVar6 < 0)" (( "(") (binary_expression "iVar6 < 0" (identifier "iVar6") (< "<") (number_literal "0")) () ")")) (goto_statement "goto LAB_00287db0;" (goto "goto") (statement_identifier "LAB_00287db0") (; ";"))) (expression_statement "uStack_10c8 = 0;" (assignment_expression "uStack_10c8 = 0" (identifier "uStack_10c8") (= "=") (number_literal "0")) (; ";")) (} "}"))) (if_statement "if ((uStack_10d4 & 1) != 0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }" (if "if") (parenthesized_expression "((uStack_10d4 & 1) != 0)" (( "(") (binary_expression "(uStack_10d4 & 1) != 0" (parenthesized_expression "(uStack_10d4 & 1)" (( "(") (binary_expression "uStack_10d4 & 1" (identifier "uStack_10d4") (& "&") (number_literal "1")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  uStack_10d4 = uStack_10d4 + 1;\n                }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756c4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756c4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756c4)" (( "(") (binary_expression "puVar30 + 0x1756c4" (identifier "puVar30") (+ "+") (number_literal "0x1756c4")) () ")"))))) () ")")) (argument_list "(iVar3,0)" (( "(") (identifier "iVar3") (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "uStack_10d4 = uStack_10d4 + 1;" (assignment_expression "uStack_10d4 = uStack_10d4 + 1" (identifier "uStack_10d4") (= "=") (binary_expression "uStack_10d4 + 1" (identifier "uStack_10d4") (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (expression_statement "(**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);" (call_expression "(**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890)" (parenthesized_expression "(**(code **)(puVar30 + 0x175c90))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175c90)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175c90)" (* "*") (cast_expression "(code **)(puVar30 + 0x175c90)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175c90)" (( "(") (binary_expression "puVar30 + 0x175c90" (identifier "puVar30") (+ "+") (number_literal "0x175c90")) () ")"))))) () ")")) (argument_list "(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890)" (( "(") (identifier "iVar3") (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x7890" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x7890")) () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);" (call_expression "(**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff)" (parenthesized_expression "(**(code **)(puVar30 + 0x175970))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175970)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175970)" (* "*") (cast_expression "(code **)(puVar30 + 0x175970)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175970)" (( "(") (binary_expression "puVar30 + 0x175970" (identifier "puVar30") (+ "+") (number_literal "0x175970")) () ")"))))) () ")")) (argument_list "(iVar3,(uint)puStack_10dc & 0xffff)" (( "(") (identifier "iVar3") (, ",") (binary_expression "(uint)puStack_10dc & 0xffff" (cast_expression "(uint)puStack_10dc" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "puStack_10dc")) (& "&") (number_literal "0xffff")) () ")"))) (; ";")) (if_statement "if (puStack_10ec == (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }\n                else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }" (if "if") (parenthesized_expression "(puStack_10ec == (undefined1 *)0x0)" (( "(") (binary_expression "puStack_10ec == (undefined1 *)0x0" (identifier "puStack_10ec") (== "==") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = uStack_10d4 + 7;\nLAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                  iVar6 = iVar6 + 1;\n                }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756c4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756c4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756c4)" (( "(") (binary_expression "puVar30 + 0x1756c4" (identifier "puVar30") (+ "+") (number_literal "0x1756c4")) () ")"))))) () ")")) (argument_list "(iVar3,0)" (( "(") (identifier "iVar3") (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "iVar6 = uStack_10d4 + 7;" (assignment_expression "iVar6 = uStack_10d4 + 7" (identifier "iVar6") (= "=") (binary_expression "uStack_10d4 + 7" (identifier "uStack_10d4") (+ "+") (number_literal "7"))) (; ";")) (labeled_statement "LAB_00287bac:\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (statement_identifier "LAB_00287bac") (: ":") (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756c4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756c4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756c4)" (( "(") (binary_expression "puVar30 + 0x1756c4" (identifier "puVar30") (+ "+") (number_literal "0x1756c4")) () ")"))))) () ")")) (argument_list "(iVar3,0)" (( "(") (identifier "iVar3") (, ",") (number_literal "0") () ")"))) (; ";"))) (expression_statement "iVar6 = iVar6 + 1;" (assignment_expression "iVar6 = iVar6 + 1" (identifier "iVar6") (= "=") (binary_expression "iVar6 + 1" (identifier "iVar6") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (else_clause "else {\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }" (else "else") (compound_statement "{\n                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n                  uVar29 = (uint)bVar18;\n                  if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }\n                  iVar6 = uStack_10d4 + 7 + uVar29;\n                  if ((bVar18 & 1) == 0) goto LAB_00287bac;\n                }" ({ "{") (expression_statement "bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);" (assignment_expression "bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec)" (identifier "bVar18") (= "=") (call_expression "(**(code **)(puVar30 + 0x175a20))(puStack_10ec)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a20))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175a20)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175a20)" (* "*") (cast_expression "(code **)(puVar30 + 0x175a20)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175a20)" (( "(") (binary_expression "puVar30 + 0x175a20" (identifier "puVar30") (+ "+") (number_literal "0x175a20")) () ")"))))) () ")")) (argument_list "(puStack_10ec)" (( "(") (identifier "puStack_10ec") () ")")))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756c4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756c4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756c4)" (( "(") (binary_expression "puVar30 + 0x1756c4" (identifier "puVar30") (+ "+") (number_literal "0x1756c4")) () ")"))))) () ")")) (argument_list "(iVar3,bVar18)" (( "(") (identifier "iVar3") (, ",") (identifier "bVar18") () ")"))) (; ";")) (expression_statement "uVar29 = (uint)bVar18;" (assignment_expression "uVar29 = (uint)bVar18" (identifier "uVar29") (= "=") (cast_expression "(uint)bVar18" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar18"))) (; ";")) (if_statement "if (uVar29 != 0) {\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }" (if "if") (parenthesized_expression "(uVar29 != 0)" (( "(") (binary_expression "uVar29 != 0" (identifier "uVar29") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                    puVar21 = puStack_10ec;\n                    do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);\n                  }" ({ "{") (expression_statement "puVar21 = puStack_10ec;" (assignment_expression "puVar21 = puStack_10ec" (identifier "puVar21") (= "=") (identifier "puStack_10ec")) (; ";")) (do_statement "do {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    } while (puVar21 != puStack_10ec + uVar29);" (do "do") (compound_statement "{\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      puVar21 = puVar21 + 1;\n                    }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756c4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756c4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756c4)" (( "(") (binary_expression "puVar30 + 0x1756c4" (identifier "puVar30") (+ "+") (number_literal "0x1756c4")) () ")"))))) () ")")) (argument_list "(iVar3,*puVar21)" (( "(") (identifier "iVar3") (, ",") (pointer_expression "*puVar21" (* "*") (identifier "puVar21")) () ")"))) (; ";")) (expression_statement "puVar21 = puVar21 + 1;" (assignment_expression "puVar21 = puVar21 + 1" (identifier "puVar21") (= "=") (binary_expression "puVar21 + 1" (identifier "puVar21") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(puVar21 != puStack_10ec + uVar29)" (( "(") (binary_expression "puVar21 != puStack_10ec + uVar29" (identifier "puVar21") (!= "!=") (binary_expression "puStack_10ec + uVar29" (identifier "puStack_10ec") (+ "+") (identifier "uVar29"))) () ")")) (; ";")) (} "}"))) (expression_statement "iVar6 = uStack_10d4 + 7 + uVar29;" (assignment_expression "iVar6 = uStack_10d4 + 7 + uVar29" (identifier "iVar6") (= "=") (binary_expression "uStack_10d4 + 7 + uVar29" (binary_expression "uStack_10d4 + 7" (identifier "uStack_10d4") (+ "+") (number_literal "7")) (+ "+") (identifier "uVar29"))) (; ";")) (if_statement "if ((bVar18 & 1) == 0) goto LAB_00287bac;" (if "if") (parenthesized_expression "((bVar18 & 1) == 0)" (( "(") (binary_expression "(bVar18 & 1) == 0" (parenthesized_expression "(bVar18 & 1)" (( "(") (binary_expression "bVar18 & 1" (identifier "bVar18") (& "&") (number_literal "1")) () ")")) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00287bac;" (goto "goto") (statement_identifier "LAB_00287bac") (; ";"))) (} "}")))) (if_statement "if (puStack_10dc == (undefined1 *)0x404) {\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }\n                else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }" (if "if") (parenthesized_expression "(puStack_10dc == (undefined1 *)0x404)" (( "(") (binary_expression "puStack_10dc == (undefined1 *)0x404" (identifier "puStack_10dc") (== "==") (cast_expression "(undefined1 *)0x404" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x404"))) () ")")) (compound_statement "{\n                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n                  if (iVar7 < 0) goto LAB_00287db0;\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n                  uStack_10d4 = iVar6 + 4;\n                  uStack_10c8 = uStack_10d4;\n                }" ({ "{") (expression_statement "iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);" (assignment_expression "iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3)" (identifier "iVar7") (= "=") (call_expression "(**(code **)(puVar30 + 0x175a04))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a04))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175a04)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175a04)" (* "*") (cast_expression "(code **)(puVar30 + 0x175a04)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175a04)" (( "(") (binary_expression "puVar30 + 0x175a04" (identifier "puVar30") (+ "+") (number_literal "0x175a04")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")")))) (; ";")) (if_statement "if (iVar7 < 0) goto LAB_00287db0;" (if "if") (parenthesized_expression "(iVar7 < 0)" (( "(") (binary_expression "iVar7 < 0" (identifier "iVar7") (< "<") (number_literal "0")) () ")")) (goto_statement "goto LAB_00287db0;" (goto "goto") (statement_identifier "LAB_00287db0") (; ";"))) (expression_statement "(**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);" (call_expression "(**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759bc))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1759bc)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1759bc)" (* "*") (cast_expression "(code **)(puVar30 + 0x1759bc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1759bc)" (( "(") (binary_expression "puVar30 + 0x1759bc" (identifier "puVar30") (+ "+") (number_literal "0x1759bc")) () ")"))))) () ")")) (argument_list "(iVar3,0xffffffff)" (( "(") (identifier "iVar3") (, ",") (number_literal "0xffffffff") () ")"))) (; ";")) (expression_statement "uStack_10d4 = iVar6 + 4;" (assignment_expression "uStack_10d4 = iVar6 + 4" (identifier "uStack_10d4") (= "=") (binary_expression "iVar6 + 4" (identifier "iVar6") (+ "+") (number_literal "4"))) (; ";")) (expression_statement "uStack_10c8 = uStack_10d4;" (assignment_expression "uStack_10c8 = uStack_10d4" (identifier "uStack_10c8") (= "=") (identifier "uStack_10d4")) (; ";")) (} "}")) (else_clause "else {\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }" (else "else") (compound_statement "{\n                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n                  iStack_10a8 = 0;\n                  uStack_10d4 = uVar12 + iVar6 + 4;\n                  iVar6 = uVar12 - 1;\n                  if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }\n                  if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }\n                }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);" (call_expression "(**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759bc))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1759bc)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1759bc)" (* "*") (cast_expression "(code **)(puVar30 + 0x1759bc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1759bc)" (( "(") (binary_expression "puVar30 + 0x1759bc" (identifier "puVar30") (+ "+") (number_literal "0x1759bc")) () ")"))))) () ")")) (argument_list "(iVar3,uVar12)" (( "(") (identifier "iVar3") (, ",") (identifier "uVar12") () ")"))) (; ";")) (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" (identifier "iStack_10a8") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_10d4 = uVar12 + iVar6 + 4;" (assignment_expression "uStack_10d4 = uVar12 + iVar6 + 4" (identifier "uStack_10d4") (= "=") (binary_expression "uVar12 + iVar6 + 4" (binary_expression "uVar12 + iVar6" (identifier "uVar12") (+ "+") (identifier "iVar6")) (+ "+") (number_literal "4"))) (; ";")) (expression_statement "iVar6 = uVar12 - 1;" (assignment_expression "iVar6 = uVar12 - 1" (identifier "iVar6") (= "=") (binary_expression "uVar12 - 1" (identifier "uVar12") (- "-") (number_literal "1"))) (; ";")) (if_statement "if (uVar12 != 0) {\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }" (if "if") (parenthesized_expression "(uVar12 != 0)" (( "(") (binary_expression "uVar12 != 0" (identifier "uVar12") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                    iStack_10a8 = 0;\n                    do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);\n                  }" ({ "{") (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" (identifier "iStack_10a8") (= "=") (number_literal "0")) (; ";")) (do_statement "do {\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    } while (iVar6 != -1);" (do "do") (compound_statement "{\n                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                      iStack_10a8 = iStack_10a8 + 1;\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                      iVar6 = iVar6 + -1;\n                    }" ({ "{") (expression_statement "puVar21 = (undefined1 *)(iVar11 + iStack_10a8);" (assignment_expression "puVar21 = (undefined1 *)(iVar11 + iStack_10a8)" (identifier "puVar21") (= "=") (cast_expression "(undefined1 *)(iVar11 + iStack_10a8)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar11 + iStack_10a8)" (( "(") (binary_expression "iVar11 + iStack_10a8" (identifier "iVar11") (+ "+") (identifier "iStack_10a8")) () ")")))) (; ";")) (expression_statement "iStack_10a8 = iStack_10a8 + 1;" (assignment_expression "iStack_10a8 = iStack_10a8 + 1" (identifier "iStack_10a8") (= "=") (binary_expression "iStack_10a8 + 1" (identifier "iStack_10a8") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756c4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756c4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756c4)" (( "(") (binary_expression "puVar30 + 0x1756c4" (identifier "puVar30") (+ "+") (number_literal "0x1756c4")) () ")"))))) () ")")) (argument_list "(iVar3,*puVar21)" (( "(") (identifier "iVar3") (, ",") (pointer_expression "*puVar21" (* "*") (identifier "puVar21")) () ")"))) (; ";")) (expression_statement "iVar6 = iVar6 + -1;" (assignment_expression "iVar6 = iVar6 + -1" (identifier "iVar6") (= "=") (binary_expression "iVar6 + -1" (identifier "iVar6") (+ "+") (number_literal "-1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar6 != -1)" (( "(") (binary_expression "iVar6 != -1" (identifier "iVar6") (!= "!=") (number_literal "-1")) () ")")) (; ";")) (} "}"))) (if_statement "if ((uStack_10d4 & 1) != 0) {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }" (if "if") (parenthesized_expression "((uStack_10d4 & 1) != 0)" (( "(") (binary_expression "(uStack_10d4 & 1) != 0" (parenthesized_expression "(uStack_10d4 & 1)" (( "(") (binary_expression "uStack_10d4 & 1" (identifier "uStack_10d4") (& "&") (number_literal "1")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                    uStack_10d4 = uStack_10d4 + 1;\n                  }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756c4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756c4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756c4)" (( "(") (binary_expression "puVar30 + 0x1756c4" (identifier "puVar30") (+ "+") (number_literal "0x1756c4")) () ")"))))) () ")")) (argument_list "(iVar3,0)" (( "(") (identifier "iVar3") (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "uStack_10d4 = uStack_10d4 + 1;" (assignment_expression "uStack_10d4 = uStack_10d4 + 1" (identifier "uStack_10d4") (= "=") (binary_expression "uStack_10d4 + 1" (identifier "uStack_10d4") (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (} "}")))) (labeled_statement "LAB_00285914:\n                iVar8 = iVar8 + 1;" (statement_identifier "LAB_00285914") (: ":") (expression_statement "iVar8 = iVar8 + 1;" (assignment_expression "iVar8 = iVar8 + 1" (identifier "iVar8") (= "=") (binary_expression "iVar8 + 1" (identifier "iVar8") (+ "+") (number_literal "1"))) (; ";"))) (} "}")) (else_clause "else {\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }" (else "else") (compound_statement "{\n                if (0x7fff < (int)uVar12) goto LAB_00285914;\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);\n                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n                iStack_10a8 = 0;\n                uStack_10d4 = uVar12 + uStack_10d4 + 5;\n                iVar6 = uVar12 - 1;\n                if (uVar12 == 0) goto LAB_00285914;\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n                iVar8 = 2;\n              }" ({ "{") (if_statement "if (0x7fff < (int)uVar12) goto LAB_00285914;" (if "if") (parenthesized_expression "(0x7fff < (int)uVar12)" (( "(") (binary_expression "0x7fff < (int)uVar12" (number_literal "0x7fff") (< "<") (cast_expression "(int)uVar12" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar12"))) () ")")) (goto_statement "goto LAB_00285914;" (goto "goto") (statement_identifier "LAB_00285914") (; ";"))) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756c4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756c4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756c4)" (( "(") (binary_expression "puVar30 + 0x1756c4" (identifier "puVar30") (+ "+") (number_literal "0x1756c4")) () ")"))))) () ")")) (argument_list "(iVar3,0x1c)" (( "(") (identifier "iVar3") (, ",") (number_literal "0x1c") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756c4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756c4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756c4)" (( "(") (binary_expression "puVar30 + 0x1756c4" (identifier "puVar30") (+ "+") (number_literal "0x1756c4")) () ")"))))) () ")")) (argument_list "(iVar3,cVar17)" (( "(") (identifier "iVar3") (, ",") (identifier "cVar17") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756c4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756c4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756c4)" (( "(") (binary_expression "puVar30 + 0x1756c4" (identifier "puVar30") (+ "+") (number_literal "0x1756c4")) () ")"))))) () ")")) (argument_list "(iVar3,(uint)puStack_10dc & 0xff)" (( "(") (identifier "iVar3") (, ",") (binary_expression "(uint)puStack_10dc & 0xff" (cast_expression "(uint)puStack_10dc" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "puStack_10dc")) (& "&") (number_literal "0xff")) () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);" (call_expression "(**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff)" (parenthesized_expression "(**(code **)(puVar30 + 0x175970))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175970)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175970)" (* "*") (cast_expression "(code **)(puVar30 + 0x175970)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175970)" (( "(") (binary_expression "puVar30 + 0x175970" (identifier "puVar30") (+ "+") (number_literal "0x175970")) () ")"))))) () ")")) (argument_list "(iVar3,uVar12 & 0xffff)" (( "(") (identifier "iVar3") (, ",") (binary_expression "uVar12 & 0xffff" (identifier "uVar12") (& "&") (number_literal "0xffff")) () ")"))) (; ";")) (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" (identifier "iStack_10a8") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_10d4 = uVar12 + uStack_10d4 + 5;" (assignment_expression "uStack_10d4 = uVar12 + uStack_10d4 + 5" (identifier "uStack_10d4") (= "=") (binary_expression "uVar12 + uStack_10d4 + 5" (binary_expression "uVar12 + uStack_10d4" (identifier "uVar12") (+ "+") (identifier "uStack_10d4")) (+ "+") (number_literal "5"))) (; ";")) (expression_statement "iVar6 = uVar12 - 1;" (assignment_expression "iVar6 = uVar12 - 1" (identifier "iVar6") (= "=") (binary_expression "uVar12 - 1" (identifier "uVar12") (- "-") (number_literal "1"))) (; ";")) (if_statement "if (uVar12 == 0) goto LAB_00285914;" (if "if") (parenthesized_expression "(uVar12 == 0)" (( "(") (binary_expression "uVar12 == 0" (identifier "uVar12") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00285914;" (goto "goto") (statement_identifier "LAB_00285914") (; ";"))) (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" (identifier "iStack_10a8") (= "=") (number_literal "0")) (; ";")) (do_statement "do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);" (do "do") (compound_statement "{\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                }" ({ "{") (expression_statement "puVar21 = (undefined1 *)(iVar11 + iStack_10a8);" (assignment_expression "puVar21 = (undefined1 *)(iVar11 + iStack_10a8)" (identifier "puVar21") (= "=") (cast_expression "(undefined1 *)(iVar11 + iStack_10a8)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar11 + iStack_10a8)" (( "(") (binary_expression "iVar11 + iStack_10a8" (identifier "iVar11") (+ "+") (identifier "iStack_10a8")) () ")")))) (; ";")) (expression_statement "iStack_10a8 = iStack_10a8 + 1;" (assignment_expression "iStack_10a8 = iStack_10a8 + 1" (identifier "iStack_10a8") (= "=") (binary_expression "iStack_10a8 + 1" (identifier "iStack_10a8") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756c4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756c4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756c4)" (( "(") (binary_expression "puVar30 + 0x1756c4" (identifier "puVar30") (+ "+") (number_literal "0x1756c4")) () ")"))))) () ")")) (argument_list "(iVar3,*puVar21)" (( "(") (identifier "iVar3") (, ",") (pointer_expression "*puVar21" (* "*") (identifier "puVar21")) () ")"))) (; ";")) (expression_statement "iVar6 = iVar6 + -1;" (assignment_expression "iVar6 = iVar6 + -1" (identifier "iVar6") (= "=") (binary_expression "iVar6 + -1" (identifier "iVar6") (+ "+") (number_literal "-1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar6 != -1)" (( "(") (binary_expression "iVar6 != -1" (identifier "iVar6") (!= "!=") (number_literal "-1")) () ")")) (; ";")) (expression_statement "iVar8 = 2;" (assignment_expression "iVar8 = 2" (identifier "iVar8") (= "=") (number_literal "2")) (; ";")) (} "}")))) (} "}"))) (expression_statement "iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);" (assignment_expression "iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11)" (identifier "iVar11") (= "=") (call_expression "(**(code **)(puVar30 + 0x17575c))(iVar11)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x17575c)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x17575c)" (* "*") (cast_expression "(code **)(puVar30 + 0x17575c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x17575c)" (( "(") (binary_expression "puVar30 + 0x17575c" (identifier "puVar30") (+ "+") (number_literal "0x17575c")) () ")"))))) () ")")) (argument_list "(iVar11)" (( "(") (identifier "iVar11") () ")")))) (; ";")) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19)" (identifier "iVar19") (= "=") (call_expression "(**(code **)(puVar30 + 0x17575c))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x17575c)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x17575c)" (* "*") (cast_expression "(code **)(puVar30 + 0x17575c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x17575c)" (( "(") (binary_expression "puVar30 + 0x17575c" (identifier "puVar30") (+ "+") (number_literal "0x17575c")) () ")"))))) () ")")) (argument_list "(iVar19)" (( "(") (identifier "iVar19") () ")")))) (; ";")) (expression_statement "puVar21 = puVar4;" (assignment_expression "puVar21 = puVar4" (identifier "puVar21") (= "=") (identifier "puVar4")) (; ";")) (if_statement "if (puStack_10ec != (undefined1 *)0x0) {\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }" (if "if") (parenthesized_expression "(puStack_10ec != (undefined1 *)0x0)" (( "(") (binary_expression "puStack_10ec != (undefined1 *)0x0" (identifier "puStack_10ec") (!= "!=") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n            }" ({ "{") (expression_statement "puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);" (assignment_expression "puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec)" (identifier "puStack_10ec") (= "=") (cast_expression "(undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(puVar30 + 0x17575c))(puStack_10ec)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x17575c)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x17575c)" (* "*") (cast_expression "(code **)(puVar30 + 0x17575c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x17575c)" (( "(") (binary_expression "puVar30 + 0x17575c" (identifier "puVar30") (+ "+") (number_literal "0x17575c")) () ")"))))) () ")")) (argument_list "(puStack_10ec)" (( "(") (identifier "puStack_10ec") () ")"))))) (; ";")) (} "}"))) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";"))) (} "}"))) (goto_statement "goto LAB_00287db0;" (goto "goto") (statement_identifier "LAB_00287db0") (; ";")) (} "}"))) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1)" (identifier "iVar19") (= "=") (call_expression "(**(code **)(puVar30 + 0x175bf4))(0x14000,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf4)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf4)" (( "(") (binary_expression "puVar30 + 0x175bf4" (identifier "puVar30") (+ "+") (number_literal "0x175bf4")) () ")"))))) () ")")) (argument_list "(0x14000,1)" (( "(") (number_literal "0x14000") (, ",") (number_literal "1") () ")")))) (; ";")) (if_statement "if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }" (if "if") (parenthesized_expression "(iVar19 != 0)" (( "(") (binary_expression "iVar19 != 0" (identifier "iVar19") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n        do {\n          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );\n      }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);" (call_expression "(**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000)" (parenthesized_expression "(**(code **)(puVar30 + 0x175dbc))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175dbc)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175dbc)" (* "*") (cast_expression "(code **)(puVar30 + 0x175dbc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175dbc)" (( "(") (binary_expression "puVar30 + 0x175dbc" (identifier "puVar30") (+ "+") (number_literal "0x175dbc")) () ")"))))) () ")")) (argument_list "(iVar19,0,0x14000)" (( "(") (identifier "iVar19") (, ",") (number_literal "0") (, ",") (number_literal "0x14000") () ")"))) (; ";")) (do_statement "do {\n          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        } while( true );" (do "do") (compound_statement "{\n          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n          if (iVar13 == 0) goto LAB_00286038;\n          iVar22 = 0;\n          if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }\n        }" ({ "{") (expression_statement "iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);" (assignment_expression "iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19)" (identifier "iVar13") (= "=") (call_expression "(**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175494))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175494)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175494)" (* "*") (cast_expression "(code **)(puVar30 + 0x175494)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175494)" (( "(") (binary_expression "puVar30 + 0x175494" (identifier "puVar30") (+ "+") (number_literal "0x175494")) () ")"))))) () ")")) (argument_list "(pcStack_10fc,0x14000,iVar19)" (( "(") (identifier "pcStack_10fc") (, ",") (number_literal "0x14000") (, ",") (identifier "iVar19") () ")")))) (; ";")) (if_statement "if (iVar13 == 0) goto LAB_00286038;" (if "if") (parenthesized_expression "(iVar13 == 0)" (( "(") (binary_expression "iVar13 == 0" (identifier "iVar13") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00286038;" (goto "goto") (statement_identifier "LAB_00286038") (; ";"))) (expression_statement "iVar22 = 0;" (assignment_expression "iVar22 = 0" (identifier "iVar22") (= "=") (number_literal "0")) (; ";")) (if_statement "if (0 < iVar13) {\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }" (if "if") (parenthesized_expression "(0 < iVar13)" (( "(") (binary_expression "0 < iVar13" (number_literal "0") (< "<") (identifier "iVar13")) () ")")) (compound_statement "{\n            do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);\n          }" ({ "{") (do_statement "do {\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            } while (iVar22 < iVar13);" (do "do") (compound_statement "{\n              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n              if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }\n              iVar22 = iVar22 + iVar14;\n            }" ({ "{") (expression_statement "iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);" (assignment_expression "iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22)" (identifier "iVar14") (= "=") (call_expression "(**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22)" (parenthesized_expression "(**(code **)(puVar30 + 0x17607c))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x17607c)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x17607c)" (* "*") (cast_expression "(code **)(puVar30 + 0x17607c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x17607c)" (( "(") (binary_expression "puVar30 + 0x17607c" (identifier "puVar30") (+ "+") (number_literal "0x17607c")) () ")"))))) () ")")) (argument_list "(iVar3,iVar13 - iVar22,iVar19 + iVar22)" (( "(") (identifier "iVar3") (, ",") (binary_expression "iVar13 - iVar22" (identifier "iVar13") (- "-") (identifier "iVar22")) (, ",") (binary_expression "iVar19 + iVar22" (identifier "iVar19") (+ "+") (identifier "iVar22")) () ")")))) (; ";")) (if_statement "if (iVar14 < 1) {\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }" (if "if") (parenthesized_expression "(iVar14 < 1)" (( "(") (binary_expression "iVar14 < 1" (identifier "iVar14") (< "<") (number_literal "1")) () ")")) (compound_statement "{\n                if (iVar22 < iVar13) goto LAB_00286038;\n                break;\n              }" ({ "{") (if_statement "if (iVar22 < iVar13) goto LAB_00286038;" (if "if") (parenthesized_expression "(iVar22 < iVar13)" (( "(") (binary_expression "iVar22 < iVar13" (identifier "iVar22") (< "<") (identifier "iVar13")) () ")")) (goto_statement "goto LAB_00286038;" (goto "goto") (statement_identifier "LAB_00286038") (; ";"))) (break_statement "break;" (break "break") (; ";")) (} "}"))) (expression_statement "iVar22 = iVar22 + iVar14;" (assignment_expression "iVar22 = iVar22 + iVar14" (identifier "iVar22") (= "=") (binary_expression "iVar22 + iVar14" (identifier "iVar22") (+ "+") (identifier "iVar14"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar22 < iVar13)" (( "(") (binary_expression "iVar22 < iVar13" (identifier "iVar22") (< "<") (identifier "iVar13")) () ")")) (; ";")) (} "}"))) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";")) (} "}"))) (expression_statement "uStack_10d4 = 1;" (assignment_expression "uStack_10d4 = 1" (identifier "uStack_10d4") (= "=") (number_literal "1")) (; ";")) (goto_statement "goto LAB_00286050;" (goto "goto") (statement_identifier "LAB_00286050") (; ";")) (} "}"))) (expression_statement "puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);" (assignment_expression "puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1)" (identifier "puVar4") (= "=") (cast_expression "(undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(puVar30 + 0x175bf4))(0x1000,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf4)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf4)" (( "(") (binary_expression "puVar30 + 0x175bf4" (identifier "puVar30") (+ "+") (number_literal "0x175bf4")) () ")"))))) () ")")) (argument_list "(0x1000,1)" (( "(") (number_literal "0x1000") (, ",") (number_literal "1") () ")"))))) (; ";")) (if_statement "if (puVar4 == (undefined1 *)0x0) {\nLAB_0028544c:\n      uStack_10d4 = 0xffffffff;\n    }\n    else {\n      uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n      iStack_10cc = 0x1000;\n      uStack_10d4 = 0;\n      uStack_10c8 = 0;\n      uStack_10e4 = 0;\n      cVar17 = '\0';\n      puStack_10dc = (undefined1 *)0x0;\n      iVar19 = 0;\n      iVar11 = 0;\n      iVar13 = *(int *)(puVar30 + 0x175020);\n      iVar22 = *(int *)(puVar30 + 0x1752b0);\n      iVar14 = *(int *)(puVar30 + 0x174fb8);\n      puVar21 = puVar4;\n      while( true ) {\n        while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar11 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar9 = *(int *)(puVar30 + 0x174fc8);\n        iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n        iVar8 = 0;\n        while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0) {\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }\n        iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n        iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n        puVar21 = puVar4;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }\n      }\nLAB_0028573c:\n      (**(code **)(puVar30 + 0x175450))(uVar15);\n      if (iVar11 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar30 + 0x17575c))(iVar11);\n      }\nLAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x17575c))(iVar19);\n      }\n      if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n      }\n      (**(code **)(puVar30 + 0x17575c))(puVar4);\n      if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }\nLAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }\n        goto LAB_00287858;\n      }\n      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n    }" (if "if") (parenthesized_expression "(puVar4 == (undefined1 *)0x0)" (( "(") (binary_expression "puVar4 == (undefined1 *)0x0" (identifier "puVar4") (== "==") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\nLAB_0028544c:\n      uStack_10d4 = 0xffffffff;\n    }" ({ "{") (labeled_statement "LAB_0028544c:\n      uStack_10d4 = 0xffffffff;" (statement_identifier "LAB_0028544c") (: ":") (expression_statement "uStack_10d4 = 0xffffffff;" (assignment_expression "uStack_10d4 = 0xffffffff" (identifier "uStack_10d4") (= "=") (number_literal "0xffffffff")) (; ";"))) (} "}")) (else_clause "else {\n      uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n      iStack_10cc = 0x1000;\n      uStack_10d4 = 0;\n      uStack_10c8 = 0;\n      uStack_10e4 = 0;\n      cVar17 = '\0';\n      puStack_10dc = (undefined1 *)0x0;\n      iVar19 = 0;\n      iVar11 = 0;\n      iVar13 = *(int *)(puVar30 + 0x175020);\n      iVar22 = *(int *)(puVar30 + 0x1752b0);\n      iVar14 = *(int *)(puVar30 + 0x174fb8);\n      puVar21 = puVar4;\n      while( true ) {\n        while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar11 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar9 = *(int *)(puVar30 + 0x174fc8);\n        iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n        iVar8 = 0;\n        while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0) {\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }\n        iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n        iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n        puVar21 = puVar4;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }\n      }\nLAB_0028573c:\n      (**(code **)(puVar30 + 0x175450))(uVar15);\n      if (iVar11 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar30 + 0x17575c))(iVar11);\n      }\nLAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x17575c))(iVar19);\n      }\n      if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n      }\n      (**(code **)(puVar30 + 0x17575c))(puVar4);\n      if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }\nLAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }\n        goto LAB_00287858;\n      }\n      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n    }" (else "else") (compound_statement "{\n      uVar15 = (**(code **)(puVar30 + 0x175bdc))();\n      iStack_10cc = 0x1000;\n      uStack_10d4 = 0;\n      uStack_10c8 = 0;\n      uStack_10e4 = 0;\n      cVar17 = '\0';\n      puStack_10dc = (undefined1 *)0x0;\n      iVar19 = 0;\n      iVar11 = 0;\n      iVar13 = *(int *)(puVar30 + 0x175020);\n      iVar22 = *(int *)(puVar30 + 0x1752b0);\n      iVar14 = *(int *)(puVar30 + 0x174fb8);\n      puVar21 = puVar4;\n      while( true ) {\n        while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar11 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar9 = *(int *)(puVar30 + 0x174fc8);\n        iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n        iVar8 = 0;\n        while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0) {\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }\n        iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n        iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n        puVar21 = puVar4;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }\n      }\nLAB_0028573c:\n      (**(code **)(puVar30 + 0x175450))(uVar15);\n      if (iVar11 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar30 + 0x17575c))(iVar11);\n      }\nLAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x17575c))(iVar19);\n      }\n      if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n      }\n      (**(code **)(puVar30 + 0x17575c))(puVar4);\n      if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }\nLAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }\n        goto LAB_00287858;\n      }\n      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n    }" ({ "{") (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175bdc))();" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175bdc))()" (identifier "uVar15") (= "=") (call_expression "(**(code **)(puVar30 + 0x175bdc))()" (parenthesized_expression "(**(code **)(puVar30 + 0x175bdc))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bdc)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bdc)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bdc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bdc)" (( "(") (binary_expression "puVar30 + 0x175bdc" (identifier "puVar30") (+ "+") (number_literal "0x175bdc")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "iStack_10cc = 0x1000;" (assignment_expression "iStack_10cc = 0x1000" (identifier "iStack_10cc") (= "=") (number_literal "0x1000")) (; ";")) (expression_statement "uStack_10d4 = 0;" (assignment_expression "uStack_10d4 = 0" (identifier "uStack_10d4") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_10c8 = 0;" (assignment_expression "uStack_10c8 = 0" (identifier "uStack_10c8") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_10e4 = 0;" (assignment_expression "uStack_10e4 = 0" (identifier "uStack_10e4") (= "=") (number_literal "0")) (; ";")) (expression_statement "cVar17 = '\0';" (assignment_expression "cVar17 = '\0'" (identifier "cVar17") (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "puStack_10dc = (undefined1 *)0x0;" (assignment_expression "puStack_10dc = (undefined1 *)0x0" (identifier "puStack_10dc") (= "=") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "iVar19 = 0;" (assignment_expression "iVar19 = 0" (identifier "iVar19") (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar11 = 0;" (assignment_expression "iVar11 = 0" (identifier "iVar11") (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar13 = *(int *)(puVar30 + 0x175020);" (assignment_expression "iVar13 = *(int *)(puVar30 + 0x175020)" (identifier "iVar13") (= "=") (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")"))))) (; ";")) (expression_statement "iVar22 = *(int *)(puVar30 + 0x1752b0);" (assignment_expression "iVar22 = *(int *)(puVar30 + 0x1752b0)" (identifier "iVar22") (= "=") (pointer_expression "*(int *)(puVar30 + 0x1752b0)" (* "*") (cast_expression "(int *)(puVar30 + 0x1752b0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x1752b0)" (( "(") (binary_expression "puVar30 + 0x1752b0" (identifier "puVar30") (+ "+") (number_literal "0x1752b0")) () ")"))))) (; ";")) (expression_statement "iVar14 = *(int *)(puVar30 + 0x174fb8);" (assignment_expression "iVar14 = *(int *)(puVar30 + 0x174fb8)" (identifier "iVar14") (= "=") (pointer_expression "*(int *)(puVar30 + 0x174fb8)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb8)" (( "(") (binary_expression "puVar30 + 0x174fb8" (identifier "puVar30") (+ "+") (number_literal "0x174fb8")) () ")"))))) (; ";")) (expression_statement "puVar21 = puVar4;" (assignment_expression "puVar21 = puVar4" (identifier "puVar21") (= "=") (identifier "puVar4")) (; ";")) (while_statement "while( true ) {\n        while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar11 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar9 = *(int *)(puVar30 + 0x174fc8);\n        iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n        iVar8 = 0;\n        while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0) {\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }\n        iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n        iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n        puVar21 = puVar4;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }\n      }" (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (compound_statement "{\n        while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }\n        if ((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;\n        *puVar21 = 0;\n        uStack_10ac = 0;\n        iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar11 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }\n        iVar9 = *(int *)(puVar30 + 0x174fc8);\n        iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;\n        iVar8 = 0;\n        while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0) {\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }\n        iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);\n        iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);\n        puVar21 = puVar4;\n        if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }\n      }" ({ "{") (while_statement "while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }" (while "while") (parenthesized_expression "((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10)))" (( "(") (parenthesized_expression "(iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))" (( "(") (comma_expression "iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10)" (assignment_expression "iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" (identifier "iVar8") (= "=") (call_expression "(**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ed8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175ed8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175ed8)" (* "*") (cast_expression "(code **)(puVar30 + 0x175ed8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175ed8)" (( "(") (binary_expression "puVar30 + 0x175ed8" (identifier "puVar30") (+ "+") (number_literal "0x175ed8")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")")))) (, ",") (binary_expression "iVar8 != -1 &&\n               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10)" (binary_expression "iVar8 != -1" (identifier "iVar8") (!= "!=") (number_literal "-1")) (&& "&&") (parenthesized_expression "(iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10)" (( "(") (comma_expression "iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10" (assignment_expression "iVar9 = (int)puVar21 - (int)puVar4" (identifier "iVar9") (= "=") (binary_expression "(int)puVar21 - (int)puVar4" (cast_expression "(int)puVar21" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar21")) (- "-") (cast_expression "(int)puVar4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar4")))) (, ",") (binary_expression "iVar8 != 10" (identifier "iVar8") (!= "!=") (number_literal "10"))) () ")")))) () ")")) () ")")) (compound_statement "{\n          if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }\n          *puVar21 = (char)iVar8;\n          puVar21 = puVar21 + 1;\n        }" ({ "{") (if_statement "if (iStack_10cc <= iVar9 + 1) {\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }" (if "if") (parenthesized_expression "(iStack_10cc <= iVar9 + 1)" (( "(") (binary_expression "iStack_10cc <= iVar9 + 1" (identifier "iStack_10cc") (<= "<=") (binary_expression "iVar9 + 1" (identifier "iVar9") (+ "+") (number_literal "1"))) () ")")) (compound_statement "{\n            iStack_10cc = iStack_10cc * 2;\n            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);\n            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;\n            puVar21 = puVar4 + iVar9;\n          }" ({ "{") (expression_statement "iStack_10cc = iStack_10cc * 2;" (assignment_expression "iStack_10cc = iStack_10cc * 2" (identifier "iStack_10cc") (= "=") (binary_expression "iStack_10cc * 2" (identifier "iStack_10cc") (* "*") (number_literal "2"))) (; ";")) (expression_statement "puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);" (assignment_expression "puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)" (identifier "puVar4") (= "=") (cast_expression "(undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175b08))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175b08)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175b08)" (* "*") (cast_expression "(code **)(puVar30 + 0x175b08)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175b08)" (( "(") (binary_expression "puVar30 + 0x175b08" (identifier "puVar30") (+ "+") (number_literal "0x175b08")) () ")"))))) () ")")) (argument_list "(puVar4,iStack_10cc + 2,1)" (( "(") (identifier "puVar4") (, ",") (binary_expression "iStack_10cc + 2" (identifier "iStack_10cc") (+ "+") (number_literal "2")) (, ",") (number_literal "1") () ")"))))) (; ";")) (if_statement "if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;" (if "if") (parenthesized_expression "(puVar4 == (undefined1 *)0x0)" (( "(") (binary_expression "puVar4 == (undefined1 *)0x0" (identifier "puVar4") (== "==") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_0028573c;" (goto "goto") (statement_identifier "LAB_0028573c") (; ";"))) (expression_statement "puVar21 = puVar4 + iVar9;" (assignment_expression "puVar21 = puVar4 + iVar9" (identifier "puVar21") (= "=") (binary_expression "puVar4 + iVar9" (identifier "puVar4") (+ "+") (identifier "iVar9"))) (; ";")) (} "}"))) (expression_statement "*puVar21 = (char)iVar8;" (assignment_expression "*puVar21 = (char)iVar8" (pointer_expression "*puVar21" (* "*") (identifier "puVar21")) (= "=") (cast_expression "(char)iVar8" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "iVar8"))) (; ";")) (expression_statement "puVar21 = puVar21 + 1;" (assignment_expression "puVar21 = puVar21 + 1" (identifier "puVar21") (= "=") (binary_expression "puVar21 + 1" (identifier "puVar21") (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (if_statement "if ((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;" (if "if") (parenthesized_expression "((puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))" (( "(") (binary_expression "(puVar4 == (undefined1 *)0x0) ||\n           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)" (parenthesized_expression "(puVar4 == (undefined1 *)0x0)" (( "(") (binary_expression "puVar4 == (undefined1 *)0x0" (identifier "puVar4") (== "==") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (|| "||") (parenthesized_expression "(iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)" (( "(") (comma_expression "iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0" (assignment_expression "iStack_10cc = ((int)puVar21 - (int)puVar4) + 1" (identifier "iStack_10cc") (= "=") (binary_expression "((int)puVar21 - (int)puVar4) + 1" (parenthesized_expression "((int)puVar21 - (int)puVar4)" (( "(") (binary_expression "(int)puVar21 - (int)puVar4" (cast_expression "(int)puVar21" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar21")) (- "-") (cast_expression "(int)puVar4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar4"))) () ")")) (+ "+") (number_literal "1"))) (, ",") (binary_expression "(int)puVar21 - (int)puVar4 == 0" (binary_expression "(int)puVar21 - (int)puVar4" (cast_expression "(int)puVar21" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar21")) (- "-") (cast_expression "(int)puVar4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar4"))) (== "==") (number_literal "0"))) () ")"))) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "*puVar21 = 0;" (assignment_expression "*puVar21 = 0" (pointer_expression "*puVar21" (* "*") (identifier "puVar21")) (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_10ac = 0;" (assignment_expression "uStack_10ac = 0" (identifier "uStack_10ac") (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);" (assignment_expression "iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1)" (identifier "iVar11") (= "=") (call_expression "(**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf4)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf4)" (( "(") (binary_expression "puVar30 + 0x175bf4" (identifier "puVar30") (+ "+") (number_literal "0x175bf4")) () ")"))))) () ")")) (argument_list "(iStack_10cc,1)" (( "(") (identifier "iStack_10cc") (, ",") (number_literal "1") () ")")))) (; ";")) (if_statement "if (iVar11 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }" (if "if") (parenthesized_expression "(iVar11 == 0)" (( "(") (binary_expression "iVar11 == 0" (identifier "iVar11") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          goto LAB_002879d4;\n        }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175450))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x175450))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x175450))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175450)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175450)" (* "*") (cast_expression "(code **)(puVar30 + 0x175450)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175450)" (( "(") (binary_expression "puVar30 + 0x175450" (identifier "puVar30") (+ "+") (number_literal "0x175450")) () ")"))))) () ")")) (argument_list "(uVar15)" (( "(") (identifier "uVar15") () ")"))) (; ";")) (goto_statement "goto LAB_002879d4;" (goto "goto") (statement_identifier "LAB_002879d4") (; ";")) (} "}"))) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1)" (identifier "iVar19") (= "=") (call_expression "(**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf4)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf4)" (( "(") (binary_expression "puVar30 + 0x175bf4" (identifier "puVar30") (+ "+") (number_literal "0x175bf4")) () ")"))))) () ")")) (argument_list "(iStack_10cc,1)" (( "(") (identifier "iStack_10cc") (, ",") (number_literal "1") () ")")))) (; ";")) (if_statement "if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }" (if "if") (parenthesized_expression "(iVar19 == 0)" (( "(") (binary_expression "iVar19 == 0" (identifier "iVar19") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          (**(code **)(puVar30 + 0x175450))(uVar15);\n          iVar19 = 0;\n          goto LAB_002879c4;\n        }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175450))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x175450))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x175450))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175450)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175450)" (* "*") (cast_expression "(code **)(puVar30 + 0x175450)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175450)" (( "(") (binary_expression "puVar30 + 0x175450" (identifier "puVar30") (+ "+") (number_literal "0x175450")) () ")"))))) () ")")) (argument_list "(uVar15)" (( "(") (identifier "uVar15") () ")"))) (; ";")) (expression_statement "iVar19 = 0;" (assignment_expression "iVar19 = 0" (identifier "iVar19") (= "=") (number_literal "0")) (; ";")) (goto_statement "goto LAB_002879c4;" (goto "goto") (statement_identifier "LAB_002879c4") (; ";")) (} "}"))) (expression_statement "iVar9 = *(int *)(puVar30 + 0x174fc8);" (assignment_expression "iVar9 = *(int *)(puVar30 + 0x174fc8)" (identifier "iVar9") (= "=") (pointer_expression "*(int *)(puVar30 + 0x174fc8)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fc8)" (( "(") (binary_expression "puVar30 + 0x174fc8" (identifier "puVar30") (+ "+") (number_literal "0x174fc8")) () ")"))))) (; ";")) (expression_statement "iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;" (assignment_expression "iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8" (identifier "iVar24") (= "=") (binary_expression "*(int *)(puVar30 + 0x174fb8) + -0x2d8" (pointer_expression "*(int *)(puVar30 + 0x174fb8)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb8)" (( "(") (binary_expression "puVar30 + 0x174fb8" (identifier "puVar30") (+ "+") (number_literal "0x174fb8")) () ")")))) (+ "+") (number_literal "-0x2d8"))) (; ";")) (expression_statement "iVar8 = 0;" (assignment_expression "iVar8 = 0" (identifier "iVar8") (= "=") (number_literal "0")) (; ";")) (while_statement "while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0) {\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }" (while "while") (parenthesized_expression "(iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0)" (( "(") (comma_expression "iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),\n              iVar6 == 0" (assignment_expression "iVar6 = (**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af)" (identifier "iVar6") (= "=") (call_expression "(**(code **)(puVar30 + 0x175720))\n                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af)" (parenthesized_expression "(**(code **)(puVar30 + 0x175720))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175720)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175720)" (* "*") (cast_expression "(code **)(puVar30 + 0x175720)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175720)" (( "(") (binary_expression "puVar30 + 0x175720" (identifier "puVar30") (+ "+") (number_literal "0x175720")) () ")"))))) () ")")) (argument_list "(uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,\n                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af)" (( "(") (identifier "uVar15") (, ",") (number_literal "0") (, ",") (identifier "iVar11") (, ",") (identifier "iStack_10cc") (, ",") (identifier "puVar4") (, ",") (identifier "iVar24") (, ",") (binary_expression "iVar9 + 0x2c44" (identifier "iVar9") (+ "+") (number_literal "0x2c44")) (, ",") (binary_expression "iVar13 + 0x7178" (identifier "iVar13") (+ "+") (number_literal "0x7178")) (, ",") (number_literal "0") (, ",") (pointer_expression "&uStack_10b0" (& "&") (identifier "uStack_10b0")) (, ",") (pointer_expression "&uStack_10ac" (& "&") (identifier "uStack_10ac")) (, ",") (pointer_expression "&uStack_10af" (& "&") (identifier "uStack_10af")) () ")")))) (, ",") (binary_expression "iVar6 == 0" (identifier "iVar6") (== "==") (number_literal "0"))) () ")")) (compound_statement "{\n          if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }\n          if (iVar8 != 1) goto LAB_002850f4;\n          iStack_10a8 = 0;\n          uVar12 = (**(code **)(puVar30 + 0x175a20))();\n          while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }\n          if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }\n        }" ({ "{") (if_statement "if (iVar8 == 0) {\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            iStack_10a8 = 0;\n            iVar7 = *(int *)(puVar30 + 0x174fc8);\n            iVar28 = *(int *)(puVar30 + 0x174fb0);\n            iVar6 = 0;\nLAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );\n          }" ({ "{") (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" (identifier "iStack_10a8") (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar7 = *(int *)(puVar30 + 0x174fc8);" (assignment_expression "iVar7 = *(int *)(puVar30 + 0x174fc8)" (identifier "iVar7") (= "=") (pointer_expression "*(int *)(puVar30 + 0x174fc8)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fc8)" (( "(") (binary_expression "puVar30 + 0x174fc8" (identifier "puVar30") (+ "+") (number_literal "0x174fc8")) () ")"))))) (; ";")) (expression_statement "iVar28 = *(int *)(puVar30 + 0x174fb0);" (assignment_expression "iVar28 = *(int *)(puVar30 + 0x174fb0)" (identifier "iVar28") (= "=") (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")"))))) (; ";")) (expression_statement "iVar6 = 0;" (assignment_expression "iVar6 = 0" (identifier "iVar6") (= "=") (number_literal "0")) (; ";")) (labeled_statement "LAB_00284ff4:\n            do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );" (statement_identifier "LAB_00284ff4") (: ":") (do_statement "do {\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            } while( true );" (do "do") (compound_statement "{\n              iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);\n              if (iVar5 != 0) goto LAB_002850f4;\n              if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }\n              iVar6 = iVar6 + 1;\n            }" ({ "{") (expression_statement "iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);" (assignment_expression "iVar5 = (**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad)" (identifier "iVar5") (= "=") (call_expression "(**(code **)(puVar30 + 0x175720))\n                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad)" (parenthesized_expression "(**(code **)(puVar30 + 0x175720))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175720)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175720)" (* "*") (cast_expression "(code **)(puVar30 + 0x175720)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175720)" (( "(") (binary_expression "puVar30 + 0x175720" (identifier "puVar30") (+ "+") (number_literal "0x175720")) () ")"))))) () ")")) (argument_list "(uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,\n                                 &cStack_10ae,&iStack_10a8,&uStack_10ad)" (( "(") (identifier "uVar15") (, ",") (number_literal "0") (, ",") (identifier "iVar19") (, ",") (identifier "iStack_10cc") (, ",") (identifier "iVar11") (, ",") (identifier "iVar24") (, ",") (binary_expression "iVar7 + 0xabc" (identifier "iVar7") (+ "+") (number_literal "0xabc")) (, ",") (identifier "iVar24") (, ",") (number_literal "0") (, ",") (pointer_expression "&cStack_10ae" (& "&") (identifier "cStack_10ae")) (, ",") (pointer_expression "&iStack_10a8" (& "&") (identifier "iStack_10a8")) (, ",") (pointer_expression "&uStack_10ad" (& "&") (identifier "uStack_10ad")) () ")")))) (; ";")) (if_statement "if (iVar5 != 0) goto LAB_002850f4;" (if "if") (parenthesized_expression "(iVar5 != 0)" (( "(") (binary_expression "iVar5 != 0" (identifier "iVar5") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_002850f4;" (goto "goto") (statement_identifier "LAB_002850f4") (; ";"))) (if_statement "if (iVar6 == 1) {\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }\n              else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }" (if "if") (parenthesized_expression "(iVar6 == 1)" (( "(") (binary_expression "iVar6 == 1" (identifier "iVar6") (== "==") (number_literal "1")) () ")")) (compound_statement "{\n                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);\n              }" ({ "{") (expression_statement "uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);" (assignment_expression "uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10)" (identifier "uStack_10e4") (= "=") (call_expression "(**(code **)(puVar30 + 0x175a28))(iVar19,0,10)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a28))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175a28)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175a28)" (* "*") (cast_expression "(code **)(puVar30 + 0x175a28)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175a28)" (( "(") (binary_expression "puVar30 + 0x175a28" (identifier "puVar30") (+ "+") (number_literal "0x175a28")) () ")"))))) () ")")) (argument_list "(iVar19,0,10)" (( "(") (identifier "iVar19") (, ",") (number_literal "0") (, ",") (number_literal "10") () ")")))) (; ";")) (} "}")) (else_clause "else if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }" (else "else") (if_statement "if (iVar6 == 2) {\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }\n              else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }" (if "if") (parenthesized_expression "(iVar6 == 2)" (( "(") (binary_expression "iVar6 == 2" (identifier "iVar6") (== "==") (number_literal "2")) () ")")) (compound_statement "{\n                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);\n                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);\n                if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }\n              }" ({ "{") (expression_statement "iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);" (assignment_expression "iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19)" (identifier "iVar5") (= "=") (call_expression "(**(code **)(puVar30 + 0x175a20))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a20))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175a20)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175a20)" (* "*") (cast_expression "(code **)(puVar30 + 0x175a20)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175a20)" (( "(") (binary_expression "puVar30 + 0x175a20" (identifier "puVar30") (+ "+") (number_literal "0x175a20")) () ")"))))) () ")")) (argument_list "(iVar19)" (( "(") (identifier "iVar19") () ")")))) (; ";")) (expression_statement "puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);" (assignment_expression "puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)" (identifier "puStack_10dc") (= "=") (cast_expression "(undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf4)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf4)" (( "(") (binary_expression "puVar30 + 0x175bf4" (identifier "puVar30") (+ "+") (number_literal "0x175bf4")) () ")"))))) () ")")) (argument_list "(iVar5 + 0x1000,1)" (( "(") (binary_expression "iVar5 + 0x1000" (identifier "iVar5") (+ "+") (number_literal "0x1000")) (, ",") (number_literal "1") () ")"))))) (; ";")) (if_statement "if (puStack_10dc != (undefined1 *)0x0) {\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }" (if "if") (parenthesized_expression "(puStack_10dc != (undefined1 *)0x0)" (( "(") (binary_expression "puStack_10dc != (undefined1 *)0x0" (identifier "puStack_10dc") (!= "!=") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);\n                  iVar6 = 3;\n                  goto LAB_00284ff4;\n                }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);" (call_expression "(**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x17595c))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x17595c)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x17595c)" (* "*") (cast_expression "(code **)(puVar30 + 0x17595c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x17595c)" (( "(") (binary_expression "puVar30 + 0x17595c" (identifier "puVar30") (+ "+") (number_literal "0x17595c")) () ")"))))) () ")")) (argument_list "(puStack_10dc,iVar19)" (( "(") (identifier "puStack_10dc") (, ",") (identifier "iVar19") () ")"))) (; ";")) (expression_statement "iVar6 = 3;" (assignment_expression "iVar6 = 3" (identifier "iVar6") (= "=") (number_literal "3")) (; ";")) (goto_statement "goto LAB_00284ff4;" (goto "goto") (statement_identifier "LAB_00284ff4") (; ";")) (} "}"))) (} "}")) (else_clause "else if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }" (else "else") (if_statement "if (iVar6 == 0) {\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }" (if "if") (parenthesized_expression "(iVar6 == 0)" (( "(") (binary_expression "iVar6 == 0" (identifier "iVar6") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);\n                if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }\n              }" ({ "{") (expression_statement "iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);" (assignment_expression "iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890)" (identifier "iVar5") (= "=") (call_expression "(**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890)" (parenthesized_expression "(**(code **)(puVar30 + 0x1753e4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1753e4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1753e4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1753e4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1753e4)" (( "(") (binary_expression "puVar30 + 0x1753e4" (identifier "puVar30") (+ "+") (number_literal "0x1753e4")) () ")"))))) () ")")) (argument_list "(iVar19,iVar28 + 0x7890)" (( "(") (identifier "iVar19") (, ",") (binary_expression "iVar28 + 0x7890" (identifier "iVar28") (+ "+") (number_literal "0x7890")) () ")")))) (; ";")) (if_statement "if (iVar5 == 0) {\n                  cVar17 = -1;\n                }\n                else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }" (if "if") (parenthesized_expression "(iVar5 == 0)" (( "(") (binary_expression "iVar5 == 0" (identifier "iVar5") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                  cVar17 = -1;\n                }" ({ "{") (expression_statement "cVar17 = -1;" (assignment_expression "cVar17 = -1" (identifier "cVar17") (= "=") (number_literal "-1")) (; ";")) (} "}")) (else_clause "else {\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }" (else "else") (compound_statement "{\n                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);\n                }" ({ "{") (expression_statement "cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);" (assignment_expression "cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10)" (identifier "cVar17") (= "=") (call_expression "(**(code **)(puVar30 + 0x175c34))(iVar19,0,10)" (parenthesized_expression "(**(code **)(puVar30 + 0x175c34))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175c34)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175c34)" (* "*") (cast_expression "(code **)(puVar30 + 0x175c34)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175c34)" (( "(") (binary_expression "puVar30 + 0x175c34" (identifier "puVar30") (+ "+") (number_literal "0x175c34")) () ")"))))) () ")")) (argument_list "(iVar19,0,10)" (( "(") (identifier "iVar19") (, ",") (number_literal "0") (, ",") (number_literal "10") () ")")))) (; ";")) (} "}")))) (} "}"))))))) (expression_statement "iVar6 = iVar6 + 1;" (assignment_expression "iVar6 = iVar6 + 1" (identifier "iVar6") (= "=") (binary_expression "iVar6 + 1" (identifier "iVar6") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";"))) (} "}"))) (if_statement "if (iVar8 != 1) goto LAB_002850f4;" (if "if") (parenthesized_expression "(iVar8 != 1)" (( "(") (binary_expression "iVar8 != 1" (identifier "iVar8") (!= "!=") (number_literal "1")) () ")")) (goto_statement "goto LAB_002850f4;" (goto "goto") (statement_identifier "LAB_002850f4") (; ";"))) (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" (identifier "iStack_10a8") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar12 = (**(code **)(puVar30 + 0x175a20))();" (assignment_expression "uVar12 = (**(code **)(puVar30 + 0x175a20))()" (identifier "uVar12") (= "=") (call_expression "(**(code **)(puVar30 + 0x175a20))()" (parenthesized_expression "(**(code **)(puVar30 + 0x175a20))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175a20)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175a20)" (* "*") (cast_expression "(code **)(puVar30 + 0x175a20)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175a20)" (( "(") (binary_expression "puVar30 + 0x175a20" (identifier "puVar30") (+ "+") (number_literal "0x175a20")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (while_statement "while (iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }" (while "while") (parenthesized_expression "(iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0)" (( "(") (comma_expression "iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0" (assignment_expression "iVar6 = (**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" (identifier "iVar6") (= "=") (call_expression "(**(code **)(puVar30 + 0x175720))\n                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" (parenthesized_expression "(**(code **)(puVar30 + 0x175720))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175720)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175720)" (* "*") (cast_expression "(code **)(puVar30 + 0x175720)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175720)" (( "(") (binary_expression "puVar30 + 0x175720" (identifier "puVar30") (+ "+") (number_literal "0x175720")) () ")"))))) () ")")) (argument_list "(uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24\n                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad)" (( "(") (identifier "uVar15") (, ",") (number_literal "0") (, ",") (identifier "iVar19") (, ",") (identifier "iStack_10cc") (, ",") (identifier "iVar11") (, ",") (identifier "iVar24") (, ",") (binary_expression "iVar14 + -0x3bc" (identifier "iVar14") (+ "+") (number_literal "-0x3bc")) (, ",") (identifier "iVar24") (, ",") (number_literal "0") (, ",") (pointer_expression "&cStack_10ae" (& "&") (identifier "cStack_10ae")) (, ",") (pointer_expression "&iStack_10a8" (& "&") (identifier "iStack_10a8")) (, ",") (pointer_expression "&uStack_10ad" (& "&") (identifier "uStack_10ad")) () ")")))) (, ",") (binary_expression "iVar6 == 0" (identifier "iVar6") (== "==") (number_literal "0"))) () ")")) (compound_statement "{\n            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }\n          }" ({ "{") (if_statement "if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }" (if "if") (parenthesized_expression "((cStack_10ae != '\0') && (0 < iStack_10a8))" (( "(") (binary_expression "(cStack_10ae != '\0') && (0 < iStack_10a8)" (parenthesized_expression "(cStack_10ae != '\0')" (( "(") (binary_expression "cStack_10ae != '\0'" (identifier "cStack_10ae") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "(0 < iStack_10a8)" (( "(") (binary_expression "0 < iStack_10a8" (number_literal "0") (< "<") (identifier "iStack_10a8")) () ")"))) () ")")) (compound_statement "{\n              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);\n              if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }\n            }" ({ "{") (expression_statement "iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);" (assignment_expression "iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1)" (identifier "iVar6") (= "=") (call_expression "(*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1)" (parenthesized_expression "(*(code *)(iVar22 + 0x458c))" (( "(") (pointer_expression "*(code *)(iVar22 + 0x458c)" (* "*") (cast_expression "(code *)(iVar22 + 0x458c)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar22 + 0x458c)" (( "(") (binary_expression "iVar22 + 0x458c" (identifier "iVar22") (+ "+") (number_literal "0x458c")) () ")")))) () ")")) (argument_list "(iVar11 + iStack_10a8 + -1)" (( "(") (binary_expression "iVar11 + iStack_10a8 + -1" (binary_expression "iVar11 + iStack_10a8" (identifier "iVar11") (+ "+") (identifier "iStack_10a8")) (+ "+") (number_literal "-1")) () ")")))) (; ";")) (if_statement "if ((int)uVar12 < iVar6) {\n                uVar12 = 0;\n              }\n              else {\n                uVar12 = uVar12 - iVar6;\n              }" (if "if") (parenthesized_expression "((int)uVar12 < iVar6)" (( "(") (binary_expression "(int)uVar12 < iVar6" (cast_expression "(int)uVar12" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar12")) (< "<") (identifier "iVar6")) () ")")) (compound_statement "{\n                uVar12 = 0;\n              }" ({ "{") (expression_statement "uVar12 = 0;" (assignment_expression "uVar12 = 0" (identifier "uVar12") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n                uVar12 = uVar12 - iVar6;\n              }" (else "else") (compound_statement "{\n                uVar12 = uVar12 - iVar6;\n              }" ({ "{") (expression_statement "uVar12 = uVar12 - iVar6;" (assignment_expression "uVar12 = uVar12 - iVar6" (identifier "uVar12") (= "=") (binary_expression "uVar12 - iVar6" (identifier "uVar12") (- "-") (identifier "iVar6"))) (; ";")) (} "}")))) (} "}"))) (} "}"))) (if_statement "if (cVar17 == -1) {\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }\n          else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }" (if "if") (parenthesized_expression "(cVar17 == -1)" (( "(") (binary_expression "cVar17 == -1" (identifier "cVar17") (== "==") (number_literal "-1")) () ")")) (compound_statement "{\n            if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }\n            if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }\n            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);\n            if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }\n            if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }\nLAB_002850f4:\n            iVar8 = iVar8 + 1;\n          }" ({ "{") (if_statement "if (0 < (int)uStack_10c8) {\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }" (if "if") (parenthesized_expression "(0 < (int)uStack_10c8)" (( "(") (binary_expression "0 < (int)uStack_10c8" (number_literal "0") (< "<") (cast_expression "(int)uStack_10c8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uStack_10c8"))) () ")")) (compound_statement "{\n              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }\n              (**(code **)(puVar30 + 0x1759bc))(iVar3);\n              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n              if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }\n              uStack_10c8 = 0;\n            }" ({ "{") (expression_statement "iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);" (assignment_expression "iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3)" (identifier "iVar6") (= "=") (call_expression "(**(code **)(puVar30 + 0x175a04))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a04))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175a04)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175a04)" (* "*") (cast_expression "(code **)(puVar30 + 0x175a04)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175a04)" (( "(") (binary_expression "puVar30 + 0x175a04" (identifier "puVar30") (+ "+") (number_literal "0x175a04")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")")))) (; ";")) (if_statement "if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }" (if "if") (parenthesized_expression "(iVar6 < 0)" (( "(") (binary_expression "iVar6 < 0" (identifier "iVar6") (< "<") (number_literal "0")) () ")")) (compound_statement "{\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x17575c))(puVar4);" (call_expression "(**(code **)(puVar30 + 0x17575c))(puVar4)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x17575c)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x17575c)" (* "*") (cast_expression "(code **)(puVar30 + 0x17575c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x17575c)" (( "(") (binary_expression "puVar30 + 0x17575c" (identifier "puVar30") (+ "+") (number_literal "0x17575c")) () ")"))))) () ")")) (argument_list "(puVar4)" (( "(") (identifier "puVar4") () ")"))) (; ";")) (goto_statement "goto LAB_0028544c;" (goto "goto") (statement_identifier "LAB_0028544c") (; ";")) (} "}"))) (expression_statement "iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);" (assignment_expression "iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3)" (identifier "iVar6") (= "=") (call_expression "(**(code **)(puVar30 + 0x175a10))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a10))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175a10)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175a10)" (* "*") (cast_expression "(code **)(puVar30 + 0x175a10)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175a10)" (( "(") (binary_expression "puVar30 + 0x175a10" (identifier "puVar30") (+ "+") (number_literal "0x175a10")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")")))) (; ";")) (if_statement "if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }" (if "if") (parenthesized_expression "(iVar6 < 0)" (( "(") (binary_expression "iVar6 < 0" (identifier "iVar6") (< "<") (number_literal "0")) () ")")) (compound_statement "{\n                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);\n                goto LAB_0028544c;\n              }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);" (call_expression "(**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x17575c)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x17575c)" (* "*") (cast_expression "(code **)(puVar30 + 0x17575c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x17575c)" (( "(") (binary_expression "puVar30 + 0x17575c" (identifier "puVar30") (+ "+") (number_literal "0x17575c")) () ")"))))) () ")")) (argument_list "(puVar4,uStack_10d4 - uStack_10c8)" (( "(") (identifier "puVar4") (, ",") (binary_expression "uStack_10d4 - uStack_10c8" (identifier "uStack_10d4") (- "-") (identifier "uStack_10c8")) () ")"))) (; ";")) (goto_statement "goto LAB_0028544c;" (goto "goto") (statement_identifier "LAB_0028544c") (; ";")) (} "}"))) (expression_statement "(**(code **)(puVar30 + 0x1759bc))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x1759bc))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759bc))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1759bc)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1759bc)" (* "*") (cast_expression "(code **)(puVar30 + 0x1759bc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1759bc)" (( "(") (binary_expression "puVar30 + 0x1759bc" (identifier "puVar30") (+ "+") (number_literal "0x1759bc")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))) (; ";")) (expression_statement "iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);" (assignment_expression "iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3)" (identifier "iVar6") (= "=") (call_expression "(**(code **)(puVar30 + 0x175a10))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a10))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175a10)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175a10)" (* "*") (cast_expression "(code **)(puVar30 + 0x175a10)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175a10)" (( "(") (binary_expression "puVar30 + 0x175a10" (identifier "puVar30") (+ "+") (number_literal "0x175a10")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")")))) (; ";")) (if_statement "if (iVar6 < 0) {\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }" (if "if") (parenthesized_expression "(iVar6 < 0)" (( "(") (binary_expression "iVar6 < 0" (identifier "iVar6") (< "<") (number_literal "0")) () ")")) (compound_statement "{\n                (**(code **)(puVar30 + 0x17575c))(puVar4);\n                goto LAB_0028544c;\n              }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x17575c))(puVar4);" (call_expression "(**(code **)(puVar30 + 0x17575c))(puVar4)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x17575c)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x17575c)" (* "*") (cast_expression "(code **)(puVar30 + 0x17575c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x17575c)" (( "(") (binary_expression "puVar30 + 0x17575c" (identifier "puVar30") (+ "+") (number_literal "0x17575c")) () ")"))))) () ")")) (argument_list "(puVar4)" (( "(") (identifier "puVar4") () ")"))) (; ";")) (goto_statement "goto LAB_0028544c;" (goto "goto") (statement_identifier "LAB_0028544c") (; ";")) (} "}"))) (expression_statement "uStack_10c8 = 0;" (assignment_expression "uStack_10c8 = 0" (identifier "uStack_10c8") (= "=") (number_literal "0")) (; ";")) (} "}"))) (if_statement "if ((uStack_10d4 & 1) != 0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }" (if "if") (parenthesized_expression "((uStack_10d4 & 1) != 0)" (( "(") (binary_expression "(uStack_10d4 & 1) != 0" (parenthesized_expression "(uStack_10d4 & 1)" (( "(") (binary_expression "uStack_10d4 & 1" (identifier "uStack_10d4") (& "&") (number_literal "1")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              uStack_10d4 = uStack_10d4 + 1;\n            }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756c4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756c4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756c4)" (( "(") (binary_expression "puVar30 + 0x1756c4" (identifier "puVar30") (+ "+") (number_literal "0x1756c4")) () ")"))))) () ")")) (argument_list "(iVar3,0)" (( "(") (identifier "iVar3") (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "uStack_10d4 = uStack_10d4 + 1;" (assignment_expression "uStack_10d4 = uStack_10d4 + 1" (identifier "uStack_10d4") (= "=") (binary_expression "uStack_10d4 + 1" (identifier "uStack_10d4") (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (expression_statement "(**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);" (call_expression "(**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890)" (parenthesized_expression "(**(code **)(puVar30 + 0x175c90))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175c90)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175c90)" (* "*") (cast_expression "(code **)(puVar30 + 0x175c90)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175c90)" (( "(") (binary_expression "puVar30 + 0x175c90" (identifier "puVar30") (+ "+") (number_literal "0x175c90")) () ")"))))) () ")")) (argument_list "(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890)" (( "(") (identifier "iVar3") (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x7890" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x7890")) () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);" (call_expression "(**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff)" (parenthesized_expression "(**(code **)(puVar30 + 0x175970))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175970)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175970)" (* "*") (cast_expression "(code **)(puVar30 + 0x175970)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175970)" (( "(") (binary_expression "puVar30 + 0x175970" (identifier "puVar30") (+ "+") (number_literal "0x175970")) () ")"))))) () ")")) (argument_list "(iVar3,uStack_10e4 & 0xffff)" (( "(") (identifier "iVar3") (, ",") (binary_expression "uStack_10e4 & 0xffff" (identifier "uStack_10e4") (& "&") (number_literal "0xffff")) () ")"))) (; ";")) (if_statement "if (puStack_10dc == (undefined1 *)0x0) {\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }\n            else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }" (if "if") (parenthesized_expression "(puStack_10dc == (undefined1 *)0x0)" (( "(") (binary_expression "puStack_10dc == (undefined1 *)0x0" (identifier "puStack_10dc") (== "==") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = uStack_10d4 + 7;\nLAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n              iVar6 = iVar6 + 1;\n            }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756c4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756c4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756c4)" (( "(") (binary_expression "puVar30 + 0x1756c4" (identifier "puVar30") (+ "+") (number_literal "0x1756c4")) () ")"))))) () ")")) (argument_list "(iVar3,0)" (( "(") (identifier "iVar3") (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "iVar6 = uStack_10d4 + 7;" (assignment_expression "iVar6 = uStack_10d4 + 7" (identifier "iVar6") (= "=") (binary_expression "uStack_10d4 + 7" (identifier "uStack_10d4") (+ "+") (number_literal "7"))) (; ";")) (labeled_statement "LAB_00287988:\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (statement_identifier "LAB_00287988") (: ":") (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756c4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756c4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756c4)" (( "(") (binary_expression "puVar30 + 0x1756c4" (identifier "puVar30") (+ "+") (number_literal "0x1756c4")) () ")"))))) () ")")) (argument_list "(iVar3,0)" (( "(") (identifier "iVar3") (, ",") (number_literal "0") () ")"))) (; ";"))) (expression_statement "iVar6 = iVar6 + 1;" (assignment_expression "iVar6 = iVar6 + 1" (identifier "iVar6") (= "=") (binary_expression "iVar6 + 1" (identifier "iVar6") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (else_clause "else {\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }" (else "else") (compound_statement "{\n              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);\n              uVar29 = (uint)bVar18;\n              if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }\n              iVar6 = uStack_10d4 + 7 + uVar29;\n              if ((bVar18 & 1) == 0) goto LAB_00287988;\n            }" ({ "{") (expression_statement "bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);" (assignment_expression "bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc)" (identifier "bVar18") (= "=") (call_expression "(**(code **)(puVar30 + 0x175a20))(puStack_10dc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a20))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175a20)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175a20)" (* "*") (cast_expression "(code **)(puVar30 + 0x175a20)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175a20)" (( "(") (binary_expression "puVar30 + 0x175a20" (identifier "puVar30") (+ "+") (number_literal "0x175a20")) () ")"))))) () ")")) (argument_list "(puStack_10dc)" (( "(") (identifier "puStack_10dc") () ")")))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756c4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756c4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756c4)" (( "(") (binary_expression "puVar30 + 0x1756c4" (identifier "puVar30") (+ "+") (number_literal "0x1756c4")) () ")"))))) () ")")) (argument_list "(iVar3,bVar18)" (( "(") (identifier "iVar3") (, ",") (identifier "bVar18") () ")"))) (; ";")) (expression_statement "uVar29 = (uint)bVar18;" (assignment_expression "uVar29 = (uint)bVar18" (identifier "uVar29") (= "=") (cast_expression "(uint)bVar18" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar18"))) (; ";")) (if_statement "if (uVar29 != 0) {\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }" (if "if") (parenthesized_expression "(uVar29 != 0)" (( "(") (binary_expression "uVar29 != 0" (identifier "uVar29") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                puVar21 = puStack_10dc;\n                do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);\n              }" ({ "{") (expression_statement "puVar21 = puStack_10dc;" (assignment_expression "puVar21 = puStack_10dc" (identifier "puVar21") (= "=") (identifier "puStack_10dc")) (; ";")) (do_statement "do {\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                } while (puVar21 != puStack_10dc + uVar29);" (do "do") (compound_statement "{\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  puVar21 = puVar21 + 1;\n                }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756c4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756c4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756c4)" (( "(") (binary_expression "puVar30 + 0x1756c4" (identifier "puVar30") (+ "+") (number_literal "0x1756c4")) () ")"))))) () ")")) (argument_list "(iVar3,*puVar21)" (( "(") (identifier "iVar3") (, ",") (pointer_expression "*puVar21" (* "*") (identifier "puVar21")) () ")"))) (; ";")) (expression_statement "puVar21 = puVar21 + 1;" (assignment_expression "puVar21 = puVar21 + 1" (identifier "puVar21") (= "=") (binary_expression "puVar21 + 1" (identifier "puVar21") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(puVar21 != puStack_10dc + uVar29)" (( "(") (binary_expression "puVar21 != puStack_10dc + uVar29" (identifier "puVar21") (!= "!=") (binary_expression "puStack_10dc + uVar29" (identifier "puStack_10dc") (+ "+") (identifier "uVar29"))) () ")")) (; ";")) (} "}"))) (expression_statement "iVar6 = uStack_10d4 + 7 + uVar29;" (assignment_expression "iVar6 = uStack_10d4 + 7 + uVar29" (identifier "iVar6") (= "=") (binary_expression "uStack_10d4 + 7 + uVar29" (binary_expression "uStack_10d4 + 7" (identifier "uStack_10d4") (+ "+") (number_literal "7")) (+ "+") (identifier "uVar29"))) (; ";")) (if_statement "if ((bVar18 & 1) == 0) goto LAB_00287988;" (if "if") (parenthesized_expression "((bVar18 & 1) == 0)" (( "(") (binary_expression "(bVar18 & 1) == 0" (parenthesized_expression "(bVar18 & 1)" (( "(") (binary_expression "bVar18 & 1" (identifier "bVar18") (& "&") (number_literal "1")) () ")")) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00287988;" (goto "goto") (statement_identifier "LAB_00287988") (; ";"))) (} "}")))) (if_statement "if (uStack_10e4 == 0x404) {\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }\n            else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }" (if "if") (parenthesized_expression "(uStack_10e4 == 0x404)" (( "(") (binary_expression "uStack_10e4 == 0x404" (identifier "uStack_10e4") (== "==") (number_literal "0x404")) () ")")) (compound_statement "{\n              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n              if (iVar7 < 0) goto LAB_0028544c;\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);\n              uStack_10d4 = iVar6 + 4;\n              uStack_10c8 = uStack_10d4;\n            }" ({ "{") (expression_statement "iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);" (assignment_expression "iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3)" (identifier "iVar7") (= "=") (call_expression "(**(code **)(puVar30 + 0x175a04))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a04))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175a04)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175a04)" (* "*") (cast_expression "(code **)(puVar30 + 0x175a04)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175a04)" (( "(") (binary_expression "puVar30 + 0x175a04" (identifier "puVar30") (+ "+") (number_literal "0x175a04")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")")))) (; ";")) (if_statement "if (iVar7 < 0) goto LAB_0028544c;" (if "if") (parenthesized_expression "(iVar7 < 0)" (( "(") (binary_expression "iVar7 < 0" (identifier "iVar7") (< "<") (number_literal "0")) () ")")) (goto_statement "goto LAB_0028544c;" (goto "goto") (statement_identifier "LAB_0028544c") (; ";"))) (expression_statement "(**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);" (call_expression "(**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759bc))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1759bc)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1759bc)" (* "*") (cast_expression "(code **)(puVar30 + 0x1759bc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1759bc)" (( "(") (binary_expression "puVar30 + 0x1759bc" (identifier "puVar30") (+ "+") (number_literal "0x1759bc")) () ")"))))) () ")")) (argument_list "(iVar3,0xffffffff)" (( "(") (identifier "iVar3") (, ",") (number_literal "0xffffffff") () ")"))) (; ";")) (expression_statement "uStack_10d4 = iVar6 + 4;" (assignment_expression "uStack_10d4 = iVar6 + 4" (identifier "uStack_10d4") (= "=") (binary_expression "iVar6 + 4" (identifier "iVar6") (+ "+") (number_literal "4"))) (; ";")) (expression_statement "uStack_10c8 = uStack_10d4;" (assignment_expression "uStack_10c8 = uStack_10d4" (identifier "uStack_10c8") (= "=") (identifier "uStack_10d4")) (; ";")) (} "}")) (else_clause "else {\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }" (else "else") (compound_statement "{\n              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);\n              iStack_10a8 = 0;\n              uStack_10d4 = uVar12 + iVar6 + 4;\n              iVar6 = uVar12 - 1;\n              if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }\n              if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }\n            }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);" (call_expression "(**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759bc))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1759bc)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1759bc)" (* "*") (cast_expression "(code **)(puVar30 + 0x1759bc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1759bc)" (( "(") (binary_expression "puVar30 + 0x1759bc" (identifier "puVar30") (+ "+") (number_literal "0x1759bc")) () ")"))))) () ")")) (argument_list "(iVar3,uVar12)" (( "(") (identifier "iVar3") (, ",") (identifier "uVar12") () ")"))) (; ";")) (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" (identifier "iStack_10a8") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_10d4 = uVar12 + iVar6 + 4;" (assignment_expression "uStack_10d4 = uVar12 + iVar6 + 4" (identifier "uStack_10d4") (= "=") (binary_expression "uVar12 + iVar6 + 4" (binary_expression "uVar12 + iVar6" (identifier "uVar12") (+ "+") (identifier "iVar6")) (+ "+") (number_literal "4"))) (; ";")) (expression_statement "iVar6 = uVar12 - 1;" (assignment_expression "iVar6 = uVar12 - 1" (identifier "iVar6") (= "=") (binary_expression "uVar12 - 1" (identifier "uVar12") (- "-") (number_literal "1"))) (; ";")) (if_statement "if (0 < (int)uVar12) {\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }" (if "if") (parenthesized_expression "(0 < (int)uVar12)" (( "(") (binary_expression "0 < (int)uVar12" (number_literal "0") (< "<") (cast_expression "(int)uVar12" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar12"))) () ")")) (compound_statement "{\n                iStack_10a8 = 0;\n                do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);\n              }" ({ "{") (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" (identifier "iStack_10a8") (= "=") (number_literal "0")) (; ";")) (do_statement "do {\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                } while (iVar6 != -1);" (do "do") (compound_statement "{\n                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n                  iStack_10a8 = iStack_10a8 + 1;\n                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n                  iVar6 = iVar6 + -1;\n                }" ({ "{") (expression_statement "puVar21 = (undefined1 *)(iVar11 + iStack_10a8);" (assignment_expression "puVar21 = (undefined1 *)(iVar11 + iStack_10a8)" (identifier "puVar21") (= "=") (cast_expression "(undefined1 *)(iVar11 + iStack_10a8)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar11 + iStack_10a8)" (( "(") (binary_expression "iVar11 + iStack_10a8" (identifier "iVar11") (+ "+") (identifier "iStack_10a8")) () ")")))) (; ";")) (expression_statement "iStack_10a8 = iStack_10a8 + 1;" (assignment_expression "iStack_10a8 = iStack_10a8 + 1" (identifier "iStack_10a8") (= "=") (binary_expression "iStack_10a8 + 1" (identifier "iStack_10a8") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756c4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756c4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756c4)" (( "(") (binary_expression "puVar30 + 0x1756c4" (identifier "puVar30") (+ "+") (number_literal "0x1756c4")) () ")"))))) () ")")) (argument_list "(iVar3,*puVar21)" (( "(") (identifier "iVar3") (, ",") (pointer_expression "*puVar21" (* "*") (identifier "puVar21")) () ")"))) (; ";")) (expression_statement "iVar6 = iVar6 + -1;" (assignment_expression "iVar6 = iVar6 + -1" (identifier "iVar6") (= "=") (binary_expression "iVar6 + -1" (identifier "iVar6") (+ "+") (number_literal "-1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar6 != -1)" (( "(") (binary_expression "iVar6 != -1" (identifier "iVar6") (!= "!=") (number_literal "-1")) () ")")) (; ";")) (} "}"))) (if_statement "if ((uStack_10d4 & 1) != 0) {\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }" (if "if") (parenthesized_expression "((uStack_10d4 & 1) != 0)" (( "(") (binary_expression "(uStack_10d4 & 1) != 0" (parenthesized_expression "(uStack_10d4 & 1)" (( "(") (binary_expression "uStack_10d4 & 1" (identifier "uStack_10d4") (& "&") (number_literal "1")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                uStack_10d4 = uStack_10d4 + 1;\n              }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756c4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756c4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756c4)" (( "(") (binary_expression "puVar30 + 0x1756c4" (identifier "puVar30") (+ "+") (number_literal "0x1756c4")) () ")"))))) () ")")) (argument_list "(iVar3,0)" (( "(") (identifier "iVar3") (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "uStack_10d4 = uStack_10d4 + 1;" (assignment_expression "uStack_10d4 = uStack_10d4 + 1" (identifier "uStack_10d4") (= "=") (binary_expression "uStack_10d4 + 1" (identifier "uStack_10d4") (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (} "}")))) (labeled_statement "LAB_002850f4:\n            iVar8 = iVar8 + 1;" (statement_identifier "LAB_002850f4") (: ":") (expression_statement "iVar8 = iVar8 + 1;" (assignment_expression "iVar8 = iVar8 + 1" (identifier "iVar8") (= "=") (binary_expression "iVar8 + 1" (identifier "iVar8") (+ "+") (number_literal "1"))) (; ";"))) (} "}")) (else_clause "else {\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }" (else "else") (compound_statement "{\n            if (0x7fff < (int)uVar12) goto LAB_002850f4;\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);\n            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);\n            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);\n            iStack_10a8 = 0;\n            uStack_10d4 = uVar12 + uStack_10d4 + 5;\n            iVar6 = uVar12 - 1;\n            if ((int)uVar12 < 1) goto LAB_002850f4;\n            iStack_10a8 = 0;\n            do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);\n            iVar8 = 2;\n          }" ({ "{") (if_statement "if (0x7fff < (int)uVar12) goto LAB_002850f4;" (if "if") (parenthesized_expression "(0x7fff < (int)uVar12)" (( "(") (binary_expression "0x7fff < (int)uVar12" (number_literal "0x7fff") (< "<") (cast_expression "(int)uVar12" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar12"))) () ")")) (goto_statement "goto LAB_002850f4;" (goto "goto") (statement_identifier "LAB_002850f4") (; ";"))) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756c4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756c4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756c4)" (( "(") (binary_expression "puVar30 + 0x1756c4" (identifier "puVar30") (+ "+") (number_literal "0x1756c4")) () ")"))))) () ")")) (argument_list "(iVar3,0x1c)" (( "(") (identifier "iVar3") (, ",") (number_literal "0x1c") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756c4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756c4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756c4)" (( "(") (binary_expression "puVar30 + 0x1756c4" (identifier "puVar30") (+ "+") (number_literal "0x1756c4")) () ")"))))) () ")")) (argument_list "(iVar3,cVar17)" (( "(") (identifier "iVar3") (, ",") (identifier "cVar17") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756c4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756c4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756c4)" (( "(") (binary_expression "puVar30 + 0x1756c4" (identifier "puVar30") (+ "+") (number_literal "0x1756c4")) () ")"))))) () ")")) (argument_list "(iVar3,uStack_10e4 & 0xff)" (( "(") (identifier "iVar3") (, ",") (binary_expression "uStack_10e4 & 0xff" (identifier "uStack_10e4") (& "&") (number_literal "0xff")) () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);" (call_expression "(**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff)" (parenthesized_expression "(**(code **)(puVar30 + 0x175970))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175970)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175970)" (* "*") (cast_expression "(code **)(puVar30 + 0x175970)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175970)" (( "(") (binary_expression "puVar30 + 0x175970" (identifier "puVar30") (+ "+") (number_literal "0x175970")) () ")"))))) () ")")) (argument_list "(iVar3,uVar12 & 0xffff)" (( "(") (identifier "iVar3") (, ",") (binary_expression "uVar12 & 0xffff" (identifier "uVar12") (& "&") (number_literal "0xffff")) () ")"))) (; ";")) (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" (identifier "iStack_10a8") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_10d4 = uVar12 + uStack_10d4 + 5;" (assignment_expression "uStack_10d4 = uVar12 + uStack_10d4 + 5" (identifier "uStack_10d4") (= "=") (binary_expression "uVar12 + uStack_10d4 + 5" (binary_expression "uVar12 + uStack_10d4" (identifier "uVar12") (+ "+") (identifier "uStack_10d4")) (+ "+") (number_literal "5"))) (; ";")) (expression_statement "iVar6 = uVar12 - 1;" (assignment_expression "iVar6 = uVar12 - 1" (identifier "iVar6") (= "=") (binary_expression "uVar12 - 1" (identifier "uVar12") (- "-") (number_literal "1"))) (; ";")) (if_statement "if ((int)uVar12 < 1) goto LAB_002850f4;" (if "if") (parenthesized_expression "((int)uVar12 < 1)" (( "(") (binary_expression "(int)uVar12 < 1" (cast_expression "(int)uVar12" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar12")) (< "<") (number_literal "1")) () ")")) (goto_statement "goto LAB_002850f4;" (goto "goto") (statement_identifier "LAB_002850f4") (; ";"))) (expression_statement "iStack_10a8 = 0;" (assignment_expression "iStack_10a8 = 0" (identifier "iStack_10a8") (= "=") (number_literal "0")) (; ";")) (do_statement "do {\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            } while (iVar6 != -1);" (do "do") (compound_statement "{\n              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);\n              iStack_10a8 = iStack_10a8 + 1;\n              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);\n              iVar6 = iVar6 + -1;\n            }" ({ "{") (expression_statement "puVar21 = (undefined1 *)(iVar11 + iStack_10a8);" (assignment_expression "puVar21 = (undefined1 *)(iVar11 + iStack_10a8)" (identifier "puVar21") (= "=") (cast_expression "(undefined1 *)(iVar11 + iStack_10a8)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar11 + iStack_10a8)" (( "(") (binary_expression "iVar11 + iStack_10a8" (identifier "iVar11") (+ "+") (identifier "iStack_10a8")) () ")")))) (; ";")) (expression_statement "iStack_10a8 = iStack_10a8 + 1;" (assignment_expression "iStack_10a8 = iStack_10a8 + 1" (identifier "iStack_10a8") (= "=") (binary_expression "iStack_10a8 + 1" (identifier "iStack_10a8") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756c4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756c4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756c4)" (( "(") (binary_expression "puVar30 + 0x1756c4" (identifier "puVar30") (+ "+") (number_literal "0x1756c4")) () ")"))))) () ")")) (argument_list "(iVar3,*puVar21)" (( "(") (identifier "iVar3") (, ",") (pointer_expression "*puVar21" (* "*") (identifier "puVar21")) () ")"))) (; ";")) (expression_statement "iVar6 = iVar6 + -1;" (assignment_expression "iVar6 = iVar6 + -1" (identifier "iVar6") (= "=") (binary_expression "iVar6 + -1" (identifier "iVar6") (+ "+") (number_literal "-1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar6 != -1)" (( "(") (binary_expression "iVar6 != -1" (identifier "iVar6") (!= "!=") (number_literal "-1")) () ")")) (; ";")) (expression_statement "iVar8 = 2;" (assignment_expression "iVar8 = 2" (identifier "iVar8") (= "=") (number_literal "2")) (; ";")) (} "}")))) (} "}"))) (expression_statement "iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);" (assignment_expression "iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11)" (identifier "iVar11") (= "=") (call_expression "(**(code **)(puVar30 + 0x17575c))(iVar11)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x17575c)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x17575c)" (* "*") (cast_expression "(code **)(puVar30 + 0x17575c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x17575c)" (( "(") (binary_expression "puVar30 + 0x17575c" (identifier "puVar30") (+ "+") (number_literal "0x17575c")) () ")"))))) () ")")) (argument_list "(iVar11)" (( "(") (identifier "iVar11") () ")")))) (; ";")) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19)" (identifier "iVar19") (= "=") (call_expression "(**(code **)(puVar30 + 0x17575c))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x17575c)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x17575c)" (* "*") (cast_expression "(code **)(puVar30 + 0x17575c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x17575c)" (( "(") (binary_expression "puVar30 + 0x17575c" (identifier "puVar30") (+ "+") (number_literal "0x17575c")) () ")"))))) () ")")) (argument_list "(iVar19)" (( "(") (identifier "iVar19") () ")")))) (; ";")) (expression_statement "puVar21 = puVar4;" (assignment_expression "puVar21 = puVar4" (identifier "puVar21") (= "=") (identifier "puVar4")) (; ";")) (if_statement "if (puStack_10dc != (undefined1 *)0x0) {\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }" (if "if") (parenthesized_expression "(puStack_10dc != (undefined1 *)0x0)" (( "(") (binary_expression "puStack_10dc != (undefined1 *)0x0" (identifier "puStack_10dc") (!= "!=") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n        }" ({ "{") (expression_statement "puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);" (assignment_expression "puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc)" (identifier "puStack_10dc") (= "=") (cast_expression "(undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(puVar30 + 0x17575c))(puStack_10dc)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x17575c)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x17575c)" (* "*") (cast_expression "(code **)(puVar30 + 0x17575c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x17575c)" (( "(") (binary_expression "puVar30 + 0x17575c" (identifier "puVar30") (+ "+") (number_literal "0x17575c")) () ")"))))) () ")")) (argument_list "(puStack_10dc)" (( "(") (identifier "puStack_10dc") () ")"))))) (; ";")) (} "}"))) (} "}"))) (labeled_statement "LAB_0028573c:\n      (**(code **)(puVar30 + 0x175450))(uVar15);" (statement_identifier "LAB_0028573c") (: ":") (expression_statement "(**(code **)(puVar30 + 0x175450))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x175450))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x175450))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175450)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175450)" (* "*") (cast_expression "(code **)(puVar30 + 0x175450)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175450)" (( "(") (binary_expression "puVar30 + 0x175450" (identifier "puVar30") (+ "+") (number_literal "0x175450")) () ")"))))) () ")")) (argument_list "(uVar15)" (( "(") (identifier "uVar15") () ")"))) (; ";"))) (if_statement "if (iVar11 != 0) {\nLAB_002879c4:\n        (**(code **)(puVar30 + 0x17575c))(iVar11);\n      }" (if "if") (parenthesized_expression "(iVar11 != 0)" (( "(") (binary_expression "iVar11 != 0" (identifier "iVar11") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\nLAB_002879c4:\n        (**(code **)(puVar30 + 0x17575c))(iVar11);\n      }" ({ "{") (labeled_statement "LAB_002879c4:\n        (**(code **)(puVar30 + 0x17575c))(iVar11);" (statement_identifier "LAB_002879c4") (: ":") (expression_statement "(**(code **)(puVar30 + 0x17575c))(iVar11);" (call_expression "(**(code **)(puVar30 + 0x17575c))(iVar11)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x17575c)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x17575c)" (* "*") (cast_expression "(code **)(puVar30 + 0x17575c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x17575c)" (( "(") (binary_expression "puVar30 + 0x17575c" (identifier "puVar30") (+ "+") (number_literal "0x17575c")) () ")"))))) () ")")) (argument_list "(iVar11)" (( "(") (identifier "iVar11") () ")"))) (; ";"))) (} "}"))) (labeled_statement "LAB_002879d4:\n      if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x17575c))(iVar19);\n      }" (statement_identifier "LAB_002879d4") (: ":") (if_statement "if (iVar19 != 0) {\n        (**(code **)(puVar30 + 0x17575c))(iVar19);\n      }" (if "if") (parenthesized_expression "(iVar19 != 0)" (( "(") (binary_expression "iVar19 != 0" (identifier "iVar19") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        (**(code **)(puVar30 + 0x17575c))(iVar19);\n      }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x17575c))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x17575c))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x17575c)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x17575c)" (* "*") (cast_expression "(code **)(puVar30 + 0x17575c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x17575c)" (( "(") (binary_expression "puVar30 + 0x17575c" (identifier "puVar30") (+ "+") (number_literal "0x17575c")) () ")"))))) () ")")) (argument_list "(iVar19)" (( "(") (identifier "iVar19") () ")"))) (; ";")) (} "}")))) (if_statement "if (puStack_10dc != (undefined1 *)0x0) {\n        (**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n      }" (if "if") (parenthesized_expression "(puStack_10dc != (undefined1 *)0x0)" (( "(") (binary_expression "puStack_10dc != (undefined1 *)0x0" (identifier "puStack_10dc") (!= "!=") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        (**(code **)(puVar30 + 0x17575c))(puStack_10dc);\n      }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x17575c))(puStack_10dc);" (call_expression "(**(code **)(puVar30 + 0x17575c))(puStack_10dc)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x17575c)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x17575c)" (* "*") (cast_expression "(code **)(puVar30 + 0x17575c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x17575c)" (( "(") (binary_expression "puVar30 + 0x17575c" (identifier "puVar30") (+ "+") (number_literal "0x17575c")) () ")"))))) () ")")) (argument_list "(puStack_10dc)" (( "(") (identifier "puStack_10dc") () ")"))) (; ";")) (} "}"))) (expression_statement "(**(code **)(puVar30 + 0x17575c))(puVar4);" (call_expression "(**(code **)(puVar30 + 0x17575c))(puVar4)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x17575c)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x17575c)" (* "*") (cast_expression "(code **)(puVar30 + 0x17575c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x17575c)" (( "(") (binary_expression "puVar30 + 0x17575c" (identifier "puVar30") (+ "+") (number_literal "0x17575c")) () ")"))))) () ")")) (argument_list "(puVar4)" (( "(") (identifier "puVar4") () ")"))) (; ";")) (if_statement "if (0 < (int)uStack_10c8) {\n        iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }" (if "if") (parenthesized_expression "(0 < (int)uStack_10c8)" (( "(") (binary_expression "0 < (int)uStack_10c8" (number_literal "0") (< "<") (cast_expression "(int)uStack_10c8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uStack_10c8"))) () ")")) (compound_statement "{\n        iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }\n        goto LAB_0028544c;\n      }" ({ "{") (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3)" (identifier "iVar19") (= "=") (call_expression "(**(code **)(puVar30 + 0x175a04))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a04))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175a04)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175a04)" (* "*") (cast_expression "(code **)(puVar30 + 0x175a04)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175a04)" (( "(") (binary_expression "puVar30 + 0x175a04" (identifier "puVar30") (+ "+") (number_literal "0x175a04")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")")))) (; ";")) (if_statement "if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }" (if "if") (parenthesized_expression "((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19))" (( "(") (binary_expression "(-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)" (parenthesized_expression "(-1 < iVar19)" (( "(") (binary_expression "-1 < iVar19" (number_literal "-1") (< "<") (identifier "iVar19")) () ")")) (&& "&&") (parenthesized_expression "(iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)" (( "(") (comma_expression "iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3)" (identifier "iVar19") (= "=") (call_expression "(**(code **)(puVar30 + 0x175a10))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a10))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175a10)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175a10)" (* "*") (cast_expression "(code **)(puVar30 + 0x175a10)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175a10)" (( "(") (binary_expression "puVar30 + 0x175a10" (identifier "puVar30") (+ "+") (number_literal "0x175a10")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")")))) (, ",") (binary_expression "-1 < iVar19" (number_literal "-1") (< "<") (identifier "iVar19"))) () ")"))) () ")")) (compound_statement "{\n          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n          if (-1 < iVar19) goto LAB_00287ab4;\n        }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);" (call_expression "(**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759bc))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1759bc)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1759bc)" (* "*") (cast_expression "(code **)(puVar30 + 0x1759bc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1759bc)" (( "(") (binary_expression "puVar30 + 0x1759bc" (identifier "puVar30") (+ "+") (number_literal "0x1759bc")) () ")"))))) () ")")) (argument_list "(iVar3,uStack_10d4 - uStack_10c8)" (( "(") (identifier "iVar3") (, ",") (binary_expression "uStack_10d4 - uStack_10c8" (identifier "uStack_10d4") (- "-") (identifier "uStack_10c8")) () ")"))) (; ";")) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3)" (identifier "iVar19") (= "=") (call_expression "(**(code **)(puVar30 + 0x175a10))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a10))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175a10)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175a10)" (* "*") (cast_expression "(code **)(puVar30 + 0x175a10)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175a10)" (( "(") (binary_expression "puVar30 + 0x175a10" (identifier "puVar30") (+ "+") (number_literal "0x175a10")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")")))) (; ";")) (if_statement "if (-1 < iVar19) goto LAB_00287ab4;" (if "if") (parenthesized_expression "(-1 < iVar19)" (( "(") (binary_expression "-1 < iVar19" (number_literal "-1") (< "<") (identifier "iVar19")) () ")")) (goto_statement "goto LAB_00287ab4;" (goto "goto") (statement_identifier "LAB_00287ab4") (; ";"))) (} "}"))) (goto_statement "goto LAB_0028544c;" (goto "goto") (statement_identifier "LAB_0028544c") (; ";")) (} "}"))) (labeled_statement "LAB_00287ab4:\n      if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }\n        goto LAB_00287858;\n      }" (statement_identifier "LAB_00287ab4") (: ":") (if_statement "if (uStack_10d4 == 0) {\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }\n        goto LAB_00287858;\n      }" (if "if") (parenthesized_expression "(uStack_10d4 == 0)" (( "(") (binary_expression "uStack_10d4 == 0" (identifier "uStack_10d4") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }\n        goto LAB_00287858;\n      }" ({ "{") (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (identifier "uVar15") (= "=") (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175e54)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175e54)" (* "*") (cast_expression "(code **)(puVar30 + 0x175e54)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175e54)" (( "(") (binary_expression "puVar30 + 0x175e54" (identifier "puVar30") (+ "+") (number_literal "0x175e54")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" (( "(") (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" (* "*") (cast_expression "(undefined4 *)(iVar3 + 0x3348)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 0x3348)" (( "(") (binary_expression "iVar3 + 0x3348" (identifier "iVar3") (+ "+") (number_literal "0x3348")) () ")")))) () ")")))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756a8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756a8)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756a8)" (( "(") (binary_expression "puVar30 + 0x1756a8" (identifier "puVar30") (+ "+") (number_literal "0x1756a8")) () ")"))))) () ")")) (argument_list "(uVar15)" (( "(") (identifier "uVar15") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175634)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175634)" (* "*") (cast_expression "(code **)(puVar30 + 0x175634)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175634)" (( "(") (binary_expression "puVar30 + 0x175634" (identifier "puVar30") (+ "+") (number_literal "0x175634")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175608)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175608)" (* "*") (cast_expression "(code **)(puVar30 + 0x175608)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175608)" (( "(") (binary_expression "puVar30 + 0x175608" (identifier "puVar30") (+ "+") (number_literal "0x175608")) () ")"))))) () ")")) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,\n                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210)" (( "(") (identifier "param_2") (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x48cc")) (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x4700")) (, ",") (number_literal "0x4d3") (, ",") (number_literal "0x1a9") (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb4) + 0x1854" (pointer_expression "*(int *)(puVar30 + 0x174fb4)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb4)" (( "(") (binary_expression "puVar30 + 0x174fb4" (identifier "puVar30") (+ "+") (number_literal "0x174fb4")) () ")")))) (+ "+") (number_literal "0x1854")) (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x6e78")) (, ",") (binary_expression "iVar20 + 0x2210" (identifier "iVar20") (+ "+") (number_literal "0x2210")) () ")"))) (; ";")) (if_statement "if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }" (if "if") (parenthesized_expression "(pcStack_10fc != (char *)0x0)" (( "(") (binary_expression "pcStack_10fc != (char *)0x0" (identifier "pcStack_10fc") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n        }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175d70)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175d70)" (* "*") (cast_expression "(code **)(puVar30 + 0x175d70)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175d70)" (( "(") (binary_expression "puVar30 + 0x175d70" (identifier "puVar30") (+ "+") (number_literal "0x175d70")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf8)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf8)" (( "(") (binary_expression "puVar30 + 0x175bf8" (identifier "puVar30") (+ "+") (number_literal "0x175bf8")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" (identifier "pcStack_10fc") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}"))) (goto_statement "goto LAB_00287858;" (goto "goto") (statement_identifier "LAB_00287858") (; ";")) (} "}")))) (if_statement "if ((uStack_10d4 & 1) == 0) goto LAB_00286050;" (if "if") (parenthesized_expression "((uStack_10d4 & 1) == 0)" (( "(") (binary_expression "(uStack_10d4 & 1) == 0" (parenthesized_expression "(uStack_10d4 & 1)" (( "(") (binary_expression "uStack_10d4 & 1" (identifier "uStack_10d4") (& "&") (number_literal "1")) () ")")) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00286050;" (goto "goto") (statement_identifier "LAB_00286050") (; ";"))) (} "}")))) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756c4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756c4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756c4)" (( "(") (binary_expression "puVar30 + 0x1756c4" (identifier "puVar30") (+ "+") (number_literal "0x1756c4")) () ")"))))) () ")")) (argument_list "(iVar3,0)" (( "(") (identifier "iVar3") (, ",") (number_literal "0") () ")"))) (; ";")) (goto_statement "goto LAB_00286050;" (goto "goto") (statement_identifier "LAB_00286050") (; ";")) (} "}"))) (expression_statement "uStack_10d4 = 1;" (assignment_expression "uStack_10d4 = 1" (identifier "uStack_10d4") (= "=") (number_literal "1")) (; ";")) (goto_statement "goto LAB_00284a7c;" (goto "goto") (statement_identifier "LAB_00284a7c") (; ";")) (labeled_statement "LAB_00286038:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);" (statement_identifier "LAB_00286038") (: ":") (expression_statement "(**(code **)(puVar30 + 0x1756a8))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756a8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756a8)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756a8)" (( "(") (binary_expression "puVar30 + 0x1756a8" (identifier "puVar30") (+ "+") (number_literal "0x1756a8")) () ")"))))) () ")")) (argument_list "(iVar19)" (( "(") (identifier "iVar19") () ")"))) (; ";"))) (expression_statement "uStack_10d4 = 1;" (assignment_expression "uStack_10d4 = 1" (identifier "uStack_10d4") (= "=") (number_literal "1")) (; ";")) (goto_statement "goto LAB_00286050;" (goto "goto") (statement_identifier "LAB_00286050") (; ";")) (labeled_statement "LAB_00285f24:\n  (**(code **)(puVar30 + 0x175450))(uVar15);" (statement_identifier "LAB_00285f24") (: ":") (expression_statement "(**(code **)(puVar30 + 0x175450))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x175450))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x175450))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175450)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175450)" (* "*") (cast_expression "(code **)(puVar30 + 0x175450)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175450)" (( "(") (binary_expression "puVar30 + 0x175450" (identifier "puVar30") (+ "+") (number_literal "0x175450")) () ")"))))) () ")")) (argument_list "(uVar15)" (( "(") (identifier "uVar15") () ")"))) (; ";"))) (if_statement "if (iVar11 != 0) {\nLAB_00287be8:\n    (**(code **)(puVar30 + 0x17575c))(iVar11);\n  }" (if "if") (parenthesized_expression "(iVar11 != 0)" (( "(") (binary_expression "iVar11 != 0" (identifier "iVar11") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\nLAB_00287be8:\n    (**(code **)(puVar30 + 0x17575c))(iVar11);\n  }" ({ "{") (labeled_statement "LAB_00287be8:\n    (**(code **)(puVar30 + 0x17575c))(iVar11);" (statement_identifier "LAB_00287be8") (: ":") (expression_statement "(**(code **)(puVar30 + 0x17575c))(iVar11);" (call_expression "(**(code **)(puVar30 + 0x17575c))(iVar11)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x17575c)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x17575c)" (* "*") (cast_expression "(code **)(puVar30 + 0x17575c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x17575c)" (( "(") (binary_expression "puVar30 + 0x17575c" (identifier "puVar30") (+ "+") (number_literal "0x17575c")) () ")"))))) () ")")) (argument_list "(iVar11)" (( "(") (identifier "iVar11") () ")"))) (; ";"))) (} "}"))) (labeled_statement "LAB_00287bf8:\n  if (iVar19 != 0) {\n    (**(code **)(puVar30 + 0x17575c))(iVar19);\n  }" (statement_identifier "LAB_00287bf8") (: ":") (if_statement "if (iVar19 != 0) {\n    (**(code **)(puVar30 + 0x17575c))(iVar19);\n  }" (if "if") (parenthesized_expression "(iVar19 != 0)" (( "(") (binary_expression "iVar19 != 0" (identifier "iVar19") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    (**(code **)(puVar30 + 0x17575c))(iVar19);\n  }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x17575c))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x17575c))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x17575c)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x17575c)" (* "*") (cast_expression "(code **)(puVar30 + 0x17575c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x17575c)" (( "(") (binary_expression "puVar30 + 0x17575c" (identifier "puVar30") (+ "+") (number_literal "0x17575c")) () ")"))))) () ")")) (argument_list "(iVar19)" (( "(") (identifier "iVar19") () ")"))) (; ";")) (} "}")))) (if_statement "if (puStack_10ec != (undefined1 *)0x0) {\n    (**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n  }" (if "if") (parenthesized_expression "(puStack_10ec != (undefined1 *)0x0)" (( "(") (binary_expression "puStack_10ec != (undefined1 *)0x0" (identifier "puStack_10ec") (!= "!=") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    (**(code **)(puVar30 + 0x17575c))(puStack_10ec);\n  }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x17575c))(puStack_10ec);" (call_expression "(**(code **)(puVar30 + 0x17575c))(puStack_10ec)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x17575c)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x17575c)" (* "*") (cast_expression "(code **)(puVar30 + 0x17575c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x17575c)" (( "(") (binary_expression "puVar30 + 0x17575c" (identifier "puVar30") (+ "+") (number_literal "0x17575c")) () ")"))))) () ")")) (argument_list "(puStack_10ec)" (( "(") (identifier "puStack_10ec") () ")"))) (; ";")) (} "}"))) (expression_statement "(**(code **)(puVar30 + 0x17575c))(puVar4);" (call_expression "(**(code **)(puVar30 + 0x17575c))(puVar4)" (parenthesized_expression "(**(code **)(puVar30 + 0x17575c))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x17575c)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x17575c)" (* "*") (cast_expression "(code **)(puVar30 + 0x17575c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x17575c)" (( "(") (binary_expression "puVar30 + 0x17575c" (identifier "puVar30") (+ "+") (number_literal "0x17575c")) () ")"))))) () ")")) (argument_list "(puVar4)" (( "(") (identifier "puVar4") () ")"))) (; ";")) (if_statement "if ((int)uStack_10c8 < 1) {\nLAB_00287cd8:\n    if (uStack_10d4 == 0) {\n      uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n      (**(code **)(puVar30 + 0x1756a8))(uVar15);\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,\n                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n  }\n  else {\n    iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n    if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n      (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n      iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n      if (-1 < iVar19) goto LAB_00287cd8;\n    }\nLAB_00287db0:\n    uStack_10d4 = 0xffffffff;\n  }" (if "if") (parenthesized_expression "((int)uStack_10c8 < 1)" (( "(") (binary_expression "(int)uStack_10c8 < 1" (cast_expression "(int)uStack_10c8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uStack_10c8")) (< "<") (number_literal "1")) () ")")) (compound_statement "{\nLAB_00287cd8:\n    if (uStack_10d4 == 0) {\n      uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n      (**(code **)(puVar30 + 0x1756a8))(uVar15);\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,\n                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }\n    if ((uStack_10d4 & 1) == 0) goto LAB_00286050;\n  }" ({ "{") (labeled_statement "LAB_00287cd8:\n    if (uStack_10d4 == 0) {\n      uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n      (**(code **)(puVar30 + 0x1756a8))(uVar15);\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,\n                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }" (statement_identifier "LAB_00287cd8") (: ":") (if_statement "if (uStack_10d4 == 0) {\n      uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n      (**(code **)(puVar30 + 0x1756a8))(uVar15);\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,\n                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }" (if "if") (parenthesized_expression "(uStack_10d4 == 0)" (( "(") (binary_expression "uStack_10d4 == 0" (identifier "uStack_10d4") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n      (**(code **)(puVar30 + 0x1756a8))(uVar15);\n      (**(code **)(puVar30 + 0x175634))(iVar3);\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,\n                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }\n      goto LAB_00287858;\n    }" ({ "{") (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (identifier "uVar15") (= "=") (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175e54)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175e54)" (* "*") (cast_expression "(code **)(puVar30 + 0x175e54)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175e54)" (( "(") (binary_expression "puVar30 + 0x175e54" (identifier "puVar30") (+ "+") (number_literal "0x175e54")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" (( "(") (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" (* "*") (cast_expression "(undefined4 *)(iVar3 + 0x3348)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 0x3348)" (( "(") (binary_expression "iVar3 + 0x3348" (identifier "iVar3") (+ "+") (number_literal "0x3348")) () ")")))) () ")")))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756a8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756a8)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756a8)" (( "(") (binary_expression "puVar30 + 0x1756a8" (identifier "puVar30") (+ "+") (number_literal "0x1756a8")) () ")"))))) () ")")) (argument_list "(uVar15)" (( "(") (identifier "uVar15") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175634)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175634)" (* "*") (cast_expression "(code **)(puVar30 + 0x175634)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175634)" (( "(") (binary_expression "puVar30 + 0x175634" (identifier "puVar30") (+ "+") (number_literal "0x175634")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,\n                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,\n                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175608)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175608)" (* "*") (cast_expression "(code **)(puVar30 + 0x175608)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175608)" (( "(") (binary_expression "puVar30 + 0x175608" (identifier "puVar30") (+ "+") (number_literal "0x175608")) () ")"))))) () ")")) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,\n                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210)" (( "(") (identifier "param_2") (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x48cc")) (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x4700")) (, ",") (number_literal "0x4e0") (, ",") (number_literal "0x1a9") (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb4) + 0x1854" (pointer_expression "*(int *)(puVar30 + 0x174fb4)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb4)" (( "(") (binary_expression "puVar30 + 0x174fb4" (identifier "puVar30") (+ "+") (number_literal "0x174fb4")) () ")")))) (+ "+") (number_literal "0x1854")) (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x6e78")) (, ",") (binary_expression "iVar20 + 0x2210" (identifier "iVar20") (+ "+") (number_literal "0x2210")) () ")"))) (; ";")) (if_statement "if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }" (if "if") (parenthesized_expression "(pcStack_10fc != (char *)0x0)" (( "(") (binary_expression "pcStack_10fc != (char *)0x0" (identifier "pcStack_10fc") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n        pcStack_10fc = (char *)0x0;\n      }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175d70)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175d70)" (* "*") (cast_expression "(code **)(puVar30 + 0x175d70)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175d70)" (( "(") (binary_expression "puVar30 + 0x175d70" (identifier "puVar30") (+ "+") (number_literal "0x175d70")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf8)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf8)" (( "(") (binary_expression "puVar30 + 0x175bf8" (identifier "puVar30") (+ "+") (number_literal "0x175bf8")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" (identifier "pcStack_10fc") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}"))) (goto_statement "goto LAB_00287858;" (goto "goto") (statement_identifier "LAB_00287858") (; ";")) (} "}")))) (if_statement "if ((uStack_10d4 & 1) == 0) goto LAB_00286050;" (if "if") (parenthesized_expression "((uStack_10d4 & 1) == 0)" (( "(") (binary_expression "(uStack_10d4 & 1) == 0" (parenthesized_expression "(uStack_10d4 & 1)" (( "(") (binary_expression "uStack_10d4 & 1" (identifier "uStack_10d4") (& "&") (number_literal "1")) () ")")) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00286050;" (goto "goto") (statement_identifier "LAB_00286050") (; ";"))) (} "}")) (else_clause "else {\n    iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n    if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n      (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n      iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n      if (-1 < iVar19) goto LAB_00287cd8;\n    }\nLAB_00287db0:\n    uStack_10d4 = 0xffffffff;\n  }" (else "else") (compound_statement "{\n    iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);\n    if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n      (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n      iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n      if (-1 < iVar19) goto LAB_00287cd8;\n    }\nLAB_00287db0:\n    uStack_10d4 = 0xffffffff;\n  }" ({ "{") (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3)" (identifier "iVar19") (= "=") (call_expression "(**(code **)(puVar30 + 0x175a04))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a04))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175a04)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175a04)" (* "*") (cast_expression "(code **)(puVar30 + 0x175a04)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175a04)" (( "(") (binary_expression "puVar30 + 0x175a04" (identifier "puVar30") (+ "+") (number_literal "0x175a04")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")")))) (; ";")) (if_statement "if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {\n      (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n      iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n      if (-1 < iVar19) goto LAB_00287cd8;\n    }" (if "if") (parenthesized_expression "((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19))" (( "(") (binary_expression "(-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)" (parenthesized_expression "(-1 < iVar19)" (( "(") (binary_expression "-1 < iVar19" (number_literal "-1") (< "<") (identifier "iVar19")) () ")")) (&& "&&") (parenthesized_expression "(iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)" (( "(") (comma_expression "iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3)" (identifier "iVar19") (= "=") (call_expression "(**(code **)(puVar30 + 0x175a10))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a10))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175a10)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175a10)" (* "*") (cast_expression "(code **)(puVar30 + 0x175a10)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175a10)" (( "(") (binary_expression "puVar30 + 0x175a10" (identifier "puVar30") (+ "+") (number_literal "0x175a10")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")")))) (, ",") (binary_expression "-1 < iVar19" (number_literal "-1") (< "<") (identifier "iVar19"))) () ")"))) () ")")) (compound_statement "{\n      (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);\n      iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);\n      if (-1 < iVar19) goto LAB_00287cd8;\n    }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);" (call_expression "(**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759bc))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1759bc)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1759bc)" (* "*") (cast_expression "(code **)(puVar30 + 0x1759bc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1759bc)" (( "(") (binary_expression "puVar30 + 0x1759bc" (identifier "puVar30") (+ "+") (number_literal "0x1759bc")) () ")"))))) () ")")) (argument_list "(iVar3,uStack_10d4 - uStack_10c8)" (( "(") (identifier "iVar3") (, ",") (binary_expression "uStack_10d4 - uStack_10c8" (identifier "uStack_10d4") (- "-") (identifier "uStack_10c8")) () ")"))) (; ";")) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3)" (identifier "iVar19") (= "=") (call_expression "(**(code **)(puVar30 + 0x175a10))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175a10))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175a10)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175a10)" (* "*") (cast_expression "(code **)(puVar30 + 0x175a10)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175a10)" (( "(") (binary_expression "puVar30 + 0x175a10" (identifier "puVar30") (+ "+") (number_literal "0x175a10")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")")))) (; ";")) (if_statement "if (-1 < iVar19) goto LAB_00287cd8;" (if "if") (parenthesized_expression "(-1 < iVar19)" (( "(") (binary_expression "-1 < iVar19" (number_literal "-1") (< "<") (identifier "iVar19")) () ")")) (goto_statement "goto LAB_00287cd8;" (goto "goto") (statement_identifier "LAB_00287cd8") (; ";"))) (} "}"))) (labeled_statement "LAB_00287db0:\n    uStack_10d4 = 0xffffffff;" (statement_identifier "LAB_00287db0") (: ":") (expression_statement "uStack_10d4 = 0xffffffff;" (assignment_expression "uStack_10d4 = 0xffffffff" (identifier "uStack_10d4") (= "=") (number_literal "0xffffffff")) (; ";"))) (} "}")))) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756c4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756c4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756c4)" (( "(") (binary_expression "puVar30 + 0x1756c4" (identifier "puVar30") (+ "+") (number_literal "0x1756c4")) () ")"))))) () ")")) (argument_list "(iVar3,0)" (( "(") (identifier "iVar3") (, ",") (number_literal "0") () ")"))) (; ";")) (labeled_statement "LAB_00286050:\n  uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);" (statement_identifier "LAB_00286050") (: ":") (expression_statement "uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3)" (identifier "uVar15") (= "=") (call_expression "(**(code **)(puVar30 + 0x1754cc))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x1754cc))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1754cc)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1754cc)" (* "*") (cast_expression "(code **)(puVar30 + 0x1754cc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1754cc)" (( "(") (binary_expression "puVar30 + 0x1754cc" (identifier "puVar30") (+ "+") (number_literal "0x1754cc")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")")))) (; ";"))) (expression_statement "(**(code **)(puVar30 + 0x175ba0))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175ba0))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ba0))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175ba0)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175ba0)" (* "*") (cast_expression "(code **)(puVar30 + 0x175ba0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175ba0)" (( "(") (binary_expression "puVar30 + 0x175ba0" (identifier "puVar30") (+ "+") (number_literal "0x175ba0")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))) (; ";")) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1)" (identifier "iVar19") (= "=") (call_expression "(**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175dac))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175dac)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175dac)" (* "*") (cast_expression "(code **)(puVar30 + 0x175dac)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175dac)" (( "(") (binary_expression "puVar30 + 0x175dac" (identifier "puVar30") (+ "+") (number_literal "0x175dac")) () ")"))))) () ")")) (argument_list "(uVar15,extraout_v1)" (( "(") (identifier "uVar15") (, ",") (identifier "extraout_v1") () ")")))) (; ";")) (if_statement "if (iVar19 == 0) {\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4ee,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }\n    goto LAB_00287858;\n  }" (if "if") (parenthesized_expression "(iVar19 == 0)" (( "(") (binary_expression "iVar19 == 0" (identifier "iVar19") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4ee,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }\n    goto LAB_00287858;\n  }" ({ "{") (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (identifier "uVar15") (= "=") (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175e54)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175e54)" (* "*") (cast_expression "(code **)(puVar30 + 0x175e54)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175e54)" (( "(") (binary_expression "puVar30 + 0x175e54" (identifier "puVar30") (+ "+") (number_literal "0x175e54")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" (( "(") (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" (* "*") (cast_expression "(undefined4 *)(iVar3 + 0x3348)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 0x3348)" (( "(") (binary_expression "iVar3 + 0x3348" (identifier "iVar3") (+ "+") (number_literal "0x3348")) () ")")))) () ")")))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756a8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756a8)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756a8)" (( "(") (binary_expression "puVar30 + 0x1756a8" (identifier "puVar30") (+ "+") (number_literal "0x1756a8")) () ")"))))) () ")")) (argument_list "(uVar15)" (( "(") (identifier "uVar15") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175634)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175634)" (* "*") (cast_expression "(code **)(puVar30 + 0x175634)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175634)" (( "(") (binary_expression "puVar30 + 0x175634" (identifier "puVar30") (+ "+") (number_literal "0x175634")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4ee,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4ee,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175608)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175608)" (* "*") (cast_expression "(code **)(puVar30 + 0x175608)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175608)" (( "(") (binary_expression "puVar30 + 0x175608" (identifier "puVar30") (+ "+") (number_literal "0x175608")) () ")"))))) () ")")) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4ee,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210)" (( "(") (identifier "param_2") (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x48cc")) (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x4700")) (, ",") (number_literal "0x4ee") (, ",") (number_literal "400") (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x46c8")) (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x6e78")) (, ",") (binary_expression "iVar20 + 0x2210" (identifier "iVar20") (+ "+") (number_literal "0x2210")) () ")"))) (; ";")) (if_statement "if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }" (if "if") (parenthesized_expression "(pcStack_10fc != (char *)0x0)" (( "(") (binary_expression "pcStack_10fc != (char *)0x0" (identifier "pcStack_10fc") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175d70)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175d70)" (* "*") (cast_expression "(code **)(puVar30 + 0x175d70)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175d70)" (( "(") (binary_expression "puVar30 + 0x175d70" (identifier "puVar30") (+ "+") (number_literal "0x175d70")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf8)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf8)" (( "(") (binary_expression "puVar30 + 0x175bf8" (identifier "puVar30") (+ "+") (number_literal "0x175bf8")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" (identifier "pcStack_10fc") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}"))) (goto_statement "goto LAB_00287858;" (goto "goto") (statement_identifier "LAB_00287858") (; ";")) (} "}"))) (expression_statement "iVar13 = (**(code **)(puVar30 + 0x175d80))\n                     (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f8,iVar19,param_2);" (assignment_expression "iVar13 = (**(code **)(puVar30 + 0x175d80))\n                     (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f8,iVar19,param_2)" (identifier "iVar13") (= "=") (call_expression "(**(code **)(puVar30 + 0x175d80))\n                     (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f8,iVar19,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d80))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175d80)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175d80)" (* "*") (cast_expression "(code **)(puVar30 + 0x175d80)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175d80)" (( "(") (binary_expression "puVar30 + 0x175d80" (identifier "puVar30") (+ "+") (number_literal "0x175d80")) () ")"))))) () ")")) (argument_list "(pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f8,iVar19,param_2)" (( "(") (identifier "pcStack_10fc") (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb4) + 0x17f8" (pointer_expression "*(int *)(puVar30 + 0x174fb4)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb4)" (( "(") (binary_expression "puVar30 + 0x174fb4" (identifier "puVar30") (+ "+") (number_literal "0x174fb4")) () ")")))) (+ "+") (number_literal "0x17f8")) (, ",") (identifier "iVar19") (, ",") (identifier "param_2") () ")")))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x1754e4))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x1754e4))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x1754e4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1754e4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1754e4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1754e4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1754e4)" (( "(") (binary_expression "puVar30 + 0x1754e4" (identifier "puVar30") (+ "+") (number_literal "0x1754e4")) () ")"))))) () ")")) (argument_list "(iVar19)" (( "(") (identifier "iVar19") () ")"))) (; ";")) (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (identifier "uVar15") (= "=") (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175e54)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175e54)" (* "*") (cast_expression "(code **)(puVar30 + 0x175e54)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175e54)" (( "(") (binary_expression "puVar30 + 0x175e54" (identifier "puVar30") (+ "+") (number_literal "0x175e54")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" (( "(") (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" (* "*") (cast_expression "(undefined4 *)(iVar3 + 0x3348)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 0x3348)" (( "(") (binary_expression "iVar3 + 0x3348" (identifier "iVar3") (+ "+") (number_literal "0x3348")) () ")")))) () ")")))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756a8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756a8)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756a8)" (( "(") (binary_expression "puVar30 + 0x1756a8" (identifier "puVar30") (+ "+") (number_literal "0x1756a8")) () ")"))))) () ")")) (argument_list "(uVar15)" (( "(") (identifier "uVar15") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175634)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175634)" (* "*") (cast_expression "(code **)(puVar30 + 0x175634)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175634)" (( "(") (binary_expression "puVar30 + 0x175634" (identifier "puVar30") (+ "+") (number_literal "0x175634")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))) (; ";")) (if_statement "if (iVar13 == 0) {\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4f6,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }\n    goto LAB_00287858;\n  }" (if "if") (parenthesized_expression "(iVar13 == 0)" (( "(") (binary_expression "iVar13 == 0" (identifier "iVar13") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4f6,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }\n    goto LAB_00287858;\n  }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4f6,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4f6,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175608)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175608)" (* "*") (cast_expression "(code **)(puVar30 + 0x175608)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175608)" (( "(") (binary_expression "puVar30 + 0x175608" (identifier "puVar30") (+ "+") (number_literal "0x175608")) () ")"))))) () ")")) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x4f6,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210)" (( "(") (identifier "param_2") (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x48cc")) (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x4700")) (, ",") (number_literal "0x4f6") (, ",") (number_literal "400") (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x46c8")) (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x6e78")) (, ",") (binary_expression "iVar20 + 0x2210" (identifier "iVar20") (+ "+") (number_literal "0x2210")) () ")"))) (; ";")) (if_statement "if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }" (if "if") (parenthesized_expression "(pcStack_10fc != (char *)0x0)" (( "(") (binary_expression "pcStack_10fc != (char *)0x0" (identifier "pcStack_10fc") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n    }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175d70)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175d70)" (* "*") (cast_expression "(code **)(puVar30 + 0x175d70)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175d70)" (( "(") (binary_expression "puVar30 + 0x175d70" (identifier "puVar30") (+ "+") (number_literal "0x175d70")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf8)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf8)" (( "(") (binary_expression "puVar30 + 0x175bf8" (identifier "puVar30") (+ "+") (number_literal "0x175bf8")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" (identifier "pcStack_10fc") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}"))) (goto_statement "goto LAB_00287858;" (goto "goto") (statement_identifier "LAB_00287858") (; ";")) (} "}"))) (labeled_statement "LAB_00284a7c:\n  iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78b8,4);" (statement_identifier "LAB_00284a7c") (: ":") (expression_statement "iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78b8,4);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78b8,4)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78b8,4)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d04))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175d04)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175d04)" (* "*") (cast_expression "(code **)(puVar30 + 0x175d04)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175d04)" (( "(") (binary_expression "puVar30 + 0x175d04" (identifier "puVar30") (+ "+") (number_literal "0x175d04")) () ")"))))) () ")")) (argument_list "(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78b8,4)" (( "(") (identifier "iVar2") (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x78b8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x78b8")) (, ",") (number_literal "4") () ")")))) (; ";"))) (if_statement "if (iVar3 == 0) {\n    (**(code **)(puVar30 + 0x175464))(auStack_1084,0x1000,*(int *)(puVar30 + 0x175020) + -0x4858,1);\n    iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n    if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x500,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      }\n    }\n    else {\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n      if (iVar19 == 0) {\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);\n        if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }\n    }\n    goto LAB_00286534;\n  }" (if "if") (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    (**(code **)(puVar30 + 0x175464))(auStack_1084,0x1000,*(int *)(puVar30 + 0x175020) + -0x4858,1);\n    iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n    if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x500,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      }\n    }\n    else {\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n      if (iVar19 == 0) {\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);\n        if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }\n    }\n    goto LAB_00286534;\n  }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175464))(auStack_1084,0x1000,*(int *)(puVar30 + 0x175020) + -0x4858,1);" (call_expression "(**(code **)(puVar30 + 0x175464))(auStack_1084,0x1000,*(int *)(puVar30 + 0x175020) + -0x4858,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175464))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175464)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175464)" (* "*") (cast_expression "(code **)(puVar30 + 0x175464)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175464)" (( "(") (binary_expression "puVar30 + 0x175464" (identifier "puVar30") (+ "+") (number_literal "0x175464")) () ")"))))) () ")")) (argument_list "(auStack_1084,0x1000,*(int *)(puVar30 + 0x175020) + -0x4858,1)" (( "(") (identifier "auStack_1084") (, ",") (number_literal "0x1000") (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4858" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x4858")) (, ",") (number_literal "1") () ")"))) (; ";")) (expression_statement "iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(puVar30 + 0x175cf4))(0,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175cf4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175cf4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175cf4)" (* "*") (cast_expression "(code **)(puVar30 + 0x175cf4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175cf4)" (( "(") (binary_expression "puVar30 + 0x175cf4" (identifier "puVar30") (+ "+") (number_literal "0x175cf4")) () ")"))))) () ")")) (argument_list "(0,param_2)" (( "(") (number_literal "0") (, ",") (identifier "param_2") () ")")))) (; ";")) (if_statement "if (iVar3 == 0) {\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x500,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      }\n    }\n    else {\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n      if (iVar19 == 0) {\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);\n        if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }\n    }" (if "if") (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      (**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x500,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);\n      if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      }\n    }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x500,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x500,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175608)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175608)" (* "*") (cast_expression "(code **)(puVar30 + 0x175608)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175608)" (( "(") (binary_expression "puVar30 + 0x175608" (identifier "puVar30") (+ "+") (number_literal "0x175608")) () ")"))))) () ")")) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                 *(int *)(puVar30 + 0x175020) + -0x4700,0x500,400,\n                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                 iVar20 + 0x2210)" (( "(") (identifier "param_2") (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x48cc")) (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x4700")) (, ",") (number_literal "0x500") (, ",") (number_literal "400") (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x46c8")) (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x6e78")) (, ",") (binary_expression "iVar20 + 0x2210" (identifier "iVar20") (+ "+") (number_literal "0x2210")) () ")"))) (; ";")) (if_statement "if (pcStack_10fc != (char *)0x0) {\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      }" (if "if") (parenthesized_expression "(pcStack_10fc != (char *)0x0)" (( "(") (binary_expression "pcStack_10fc != (char *)0x0" (identifier "pcStack_10fc") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175d70)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175d70)" (* "*") (cast_expression "(code **)(puVar30 + 0x175d70)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175d70)" (( "(") (binary_expression "puVar30 + 0x175d70" (identifier "puVar30") (+ "+") (number_literal "0x175d70")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf8)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf8)" (( "(") (binary_expression "puVar30 + 0x175bf8" (identifier "puVar30") (+ "+") (number_literal "0x175bf8")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n      if (iVar19 == 0) {\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);\n        if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }\n    }" (else "else") (compound_statement "{\n      iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n      if (iVar19 == 0) {\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);\n        if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }\n    }" ({ "{") (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1)" (identifier "iVar19") (= "=") (call_expression "(**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf4)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf4)" (( "(") (binary_expression "puVar30 + 0x175bf4" (identifier "puVar30") (+ "+") (number_literal "0x175bf4")) () ")"))))) () ")")) (argument_list "(uStack_10d4,1)" (( "(") (identifier "uStack_10d4") (, ",") (number_literal "1") () ")")))) (; ";")) (if_statement "if (iVar19 == 0) {\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }\n      }\n      else {\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);\n        if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }" (if "if") (parenthesized_expression "(iVar19 == 0)" (( "(") (binary_expression "iVar19 == 0" (identifier "iVar19") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        (**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);\n        if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }\n      }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175634)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175634)" (* "*") (cast_expression "(code **)(puVar30 + 0x175634)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175634)" (( "(") (binary_expression "puVar30 + 0x175634" (identifier "puVar30") (+ "+") (number_literal "0x175634")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175608)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175608)" (* "*") (cast_expression "(code **)(puVar30 + 0x175608)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175608)" (( "(") (binary_expression "puVar30 + 0x175608" (identifier "puVar30") (+ "+") (number_literal "0x175608")) () ")"))))) () ")")) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,\n                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                   iVar20 + 0x2210)" (( "(") (identifier "param_2") (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x48cc")) (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x4700")) (, ",") (number_literal "0x505") (, ",") (number_literal "400") (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x46c8")) (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x6e78")) (, ",") (binary_expression "iVar20 + 0x2210" (identifier "iVar20") (+ "+") (number_literal "0x2210")) () ")"))) (; ";")) (if_statement "if (pcStack_10fc != (char *)0x0) {\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }" (if "if") (parenthesized_expression "(pcStack_10fc != (char *)0x0)" (( "(") (binary_expression "pcStack_10fc != (char *)0x0" (identifier "pcStack_10fc") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n          pcStack_10fc = (char *)0x0;\n          goto LAB_00287858;\n        }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175d70)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175d70)" (* "*") (cast_expression "(code **)(puVar30 + 0x175d70)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175d70)" (( "(") (binary_expression "puVar30 + 0x175d70" (identifier "puVar30") (+ "+") (number_literal "0x175d70")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf8)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf8)" (( "(") (binary_expression "puVar30 + 0x175bf8" (identifier "puVar30") (+ "+") (number_literal "0x175bf8")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" (identifier "pcStack_10fc") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (goto_statement "goto LAB_00287858;" (goto "goto") (statement_identifier "LAB_00287858") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);\n        if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }" (else "else") (compound_statement "{\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);\n        if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }\n        if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }\n      }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);" (call_expression "(**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759b0))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1759b0)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1759b0)" (* "*") (cast_expression "(code **)(puVar30 + 0x1759b0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1759b0)" (( "(") (binary_expression "puVar30 + 0x1759b0" (identifier "puVar30") (+ "+") (number_literal "0x1759b0")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(iVar3 + 0x3348),iVar19)" (( "(") (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" (* "*") (cast_expression "(undefined4 *)(iVar3 + 0x3348)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 0x3348)" (( "(") (binary_expression "iVar3 + 0x3348" (identifier "iVar3") (+ "+") (number_literal "0x3348")) () ")")))) (, ",") (identifier "iVar19") () ")"))) (; ";")) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0)" (identifier "iVar19") (= "=") (call_expression "(**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1757f8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1757f8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1757f8)" (* "*") (cast_expression "(code **)(puVar30 + 0x1757f8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1757f8)" (( "(") (binary_expression "puVar30 + 0x1757f8" (identifier "puVar30") (+ "+") (number_literal "0x1757f8")) () ")"))))) () ")")) (argument_list "(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0)" (( "(") (identifier "iVar2") (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x78c0" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x78c0")) () ")")))) (; ";")) (if_statement "if (iVar19 != 0) {\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }" (if "if") (parenthesized_expression "(iVar19 != 0)" (( "(") (binary_expression "iVar19 != 0" (identifier "iVar19") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n          if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }\n          goto LAB_00286b84;\n        }" ({ "{") (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1)" (identifier "iVar19") (= "=") (call_expression "(**(code **)(puVar30 + 0x175bf4))(0x14000,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf4)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf4)" (( "(") (binary_expression "puVar30 + 0x175bf4" (identifier "puVar30") (+ "+") (number_literal "0x175bf4")) () ")"))))) () ")")) (argument_list "(0x14000,1)" (( "(") (number_literal "0x14000") (, ",") (number_literal "1") () ")")))) (; ";")) (if_statement "if (iVar19 != 0) {\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }" (if "if") (parenthesized_expression "(iVar19 != 0)" (( "(") (binary_expression "iVar19 != 0" (identifier "iVar19") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n            do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );\n          }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);" (call_expression "(**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000)" (parenthesized_expression "(**(code **)(puVar30 + 0x175dbc))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175dbc)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175dbc)" (* "*") (cast_expression "(code **)(puVar30 + 0x175dbc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175dbc)" (( "(") (binary_expression "puVar30 + 0x175dbc" (identifier "puVar30") (+ "+") (number_literal "0x175dbc")) () ")"))))) () ")")) (argument_list "(iVar19,0,0x14000)" (( "(") (identifier "iVar19") (, ",") (number_literal "0") (, ",") (number_literal "0x14000") () ")"))) (; ";")) (do_statement "do {\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            } while( true );" (do "do") (compound_statement "{\n              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n              if (iVar13 == 0) goto LAB_00286b70;\n              iVar22 = 0;\n              if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }\n            }" ({ "{") (expression_statement "iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);" (assignment_expression "iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19)" (identifier "iVar13") (= "=") (call_expression "(**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175494))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175494)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175494)" (* "*") (cast_expression "(code **)(puVar30 + 0x175494)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175494)" (( "(") (binary_expression "puVar30 + 0x175494" (identifier "puVar30") (+ "+") (number_literal "0x175494")) () ")"))))) () ")")) (argument_list "(pcStack_10fc,0x14000,iVar19)" (( "(") (identifier "pcStack_10fc") (, ",") (number_literal "0x14000") (, ",") (identifier "iVar19") () ")")))) (; ";")) (if_statement "if (iVar13 == 0) goto LAB_00286b70;" (if "if") (parenthesized_expression "(iVar13 == 0)" (( "(") (binary_expression "iVar13 == 0" (identifier "iVar13") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00286b70;" (goto "goto") (statement_identifier "LAB_00286b70") (; ";"))) (expression_statement "iVar22 = 0;" (assignment_expression "iVar22 = 0" (identifier "iVar22") (= "=") (number_literal "0")) (; ";")) (if_statement "if (0 < iVar13) {\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }" (if "if") (parenthesized_expression "(0 < iVar13)" (( "(") (binary_expression "0 < iVar13" (number_literal "0") (< "<") (identifier "iVar13")) () ")")) (compound_statement "{\n                do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);\n              }" ({ "{") (do_statement "do {\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                } while (iVar22 < iVar13);" (do "do") (compound_statement "{\n                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                  if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }\n                  iVar22 = iVar22 + iVar14;\n                }" ({ "{") (expression_statement "iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);" (assignment_expression "iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22)" (identifier "iVar14") (= "=") (call_expression "(**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22)" (parenthesized_expression "(**(code **)(puVar30 + 0x17607c))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x17607c)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x17607c)" (* "*") (cast_expression "(code **)(puVar30 + 0x17607c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x17607c)" (( "(") (binary_expression "puVar30 + 0x17607c" (identifier "puVar30") (+ "+") (number_literal "0x17607c")) () ")"))))) () ")")) (argument_list "(iVar3,iVar13 - iVar22,iVar19 + iVar22)" (( "(") (identifier "iVar3") (, ",") (binary_expression "iVar13 - iVar22" (identifier "iVar13") (- "-") (identifier "iVar22")) (, ",") (binary_expression "iVar19 + iVar22" (identifier "iVar19") (+ "+") (identifier "iVar22")) () ")")))) (; ";")) (if_statement "if (iVar14 < 1) {\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }" (if "if") (parenthesized_expression "(iVar14 < 1)" (( "(") (binary_expression "iVar14 < 1" (identifier "iVar14") (< "<") (number_literal "1")) () ")")) (compound_statement "{\n                    if (iVar22 < iVar13) goto LAB_00286b70;\n                    break;\n                  }" ({ "{") (if_statement "if (iVar22 < iVar13) goto LAB_00286b70;" (if "if") (parenthesized_expression "(iVar22 < iVar13)" (( "(") (binary_expression "iVar22 < iVar13" (identifier "iVar22") (< "<") (identifier "iVar13")) () ")")) (goto_statement "goto LAB_00286b70;" (goto "goto") (statement_identifier "LAB_00286b70") (; ";"))) (break_statement "break;" (break "break") (; ";")) (} "}"))) (expression_statement "iVar22 = iVar22 + iVar14;" (assignment_expression "iVar22 = iVar22 + iVar14" (identifier "iVar22") (= "=") (binary_expression "iVar22 + iVar14" (identifier "iVar22") (+ "+") (identifier "iVar14"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar22 < iVar13)" (( "(") (binary_expression "iVar22 < iVar13" (identifier "iVar22") (< "<") (identifier "iVar13")) () ")")) (; ";")) (} "}"))) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";")) (} "}"))) (goto_statement "goto LAB_00286b84;" (goto "goto") (statement_identifier "LAB_00286b84") (; ";")) (} "}"))) (if_statement "if (*(int *)(iVar20 + 0x1ec) == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }\n        else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }" (if "if") (parenthesized_expression "(*(int *)(iVar20 + 0x1ec) == 0)" (( "(") (binary_expression "*(int *)(iVar20 + 0x1ec) == 0" (pointer_expression "*(int *)(iVar20 + 0x1ec)" (* "*") (cast_expression "(int *)(iVar20 + 0x1ec)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x1ec)" (( "(") (binary_expression "iVar20 + 0x1ec" (identifier "iVar20") (+ "+") (number_literal "0x1ec")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }\n        }" ({ "{") (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (identifier "uVar15") (= "=") (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175e54)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175e54)" (* "*") (cast_expression "(code **)(puVar30 + 0x175e54)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175e54)" (( "(") (binary_expression "puVar30 + 0x175e54" (identifier "puVar30") (+ "+") (number_literal "0x175e54")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" (( "(") (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" (* "*") (cast_expression "(undefined4 *)(iVar3 + 0x3348)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 0x3348)" (( "(") (binary_expression "iVar3 + 0x3348" (identifier "iVar3") (+ "+") (number_literal "0x3348")) () ")")))) () ")")))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756a8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756a8)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756a8)" (( "(") (binary_expression "puVar30 + 0x1756a8" (identifier "puVar30") (+ "+") (number_literal "0x1756a8")) () ")"))))) () ")")) (argument_list "(uVar15)" (( "(") (identifier "uVar15") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175634)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175634)" (* "*") (cast_expression "(code **)(puVar30 + 0x175634)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175634)" (( "(") (binary_expression "puVar30 + 0x175634" (identifier "puVar30") (+ "+") (number_literal "0x175634")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175608)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175608)" (* "*") (cast_expression "(code **)(puVar30 + 0x175608)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175608)" (( "(") (binary_expression "puVar30 + 0x175608" (identifier "puVar30") (+ "+") (number_literal "0x175608")) () ")"))))) () ")")) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,\n                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (( "(") (identifier "param_2") (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x48cc")) (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x4700")) (, ",") (number_literal "0x515") (, ",") (number_literal "0x1c2") (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48a4" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x48a4")) (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x6e78")) (, ",") (binary_expression "iVar20 + 0x2210" (identifier "iVar20") (+ "+") (number_literal "0x2210")) () ")"))) (; ";")) (if_statement "if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }" (if "if") (parenthesized_expression "(pcStack_10fc != (char *)0x0)" (( "(") (binary_expression "pcStack_10fc != (char *)0x0" (identifier "pcStack_10fc") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n            goto LAB_00287858;\n          }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175d70)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175d70)" (* "*") (cast_expression "(code **)(puVar30 + 0x175d70)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175d70)" (( "(") (binary_expression "puVar30 + 0x175d70" (identifier "puVar30") (+ "+") (number_literal "0x175d70")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf8)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf8)" (( "(") (binary_expression "puVar30 + 0x175bf8" (identifier "puVar30") (+ "+") (number_literal "0x175bf8")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" (identifier "pcStack_10fc") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (goto_statement "goto LAB_00287858;" (goto "goto") (statement_identifier "LAB_00287858") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }" (else "else") (compound_statement "{\n          uVar15 = (**(code **)(puVar30 + 0x175548))();\n          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n          if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n        }" ({ "{") (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175548))();" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175548))()" (identifier "uVar15") (= "=") (call_expression "(**(code **)(puVar30 + 0x175548))()" (parenthesized_expression "(**(code **)(puVar30 + 0x175548))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175548)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175548)" (* "*") (cast_expression "(code **)(puVar30 + 0x175548)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175548)" (( "(") (binary_expression "puVar30 + 0x175548" (identifier "puVar30") (+ "+") (number_literal "0x175548")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2)" (identifier "iVar19") (= "=") (call_expression "(**(code **)(puVar30 + 0x175cf4))(0,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175cf4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175cf4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175cf4)" (* "*") (cast_expression "(code **)(puVar30 + 0x175cf4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175cf4)" (( "(") (binary_expression "puVar30 + 0x175cf4" (identifier "puVar30") (+ "+") (number_literal "0x175cf4")) () ")"))))) () ")")) (argument_list "(0,param_2)" (( "(") (number_literal "0") (, ",") (identifier "param_2") () ")")))) (; ";")) (if_statement "if (iVar19 == 0) {\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }\n          else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }" (if "if") (parenthesized_expression "(iVar19 == 0)" (( "(") (binary_expression "iVar19 == 0" (identifier "iVar19") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }" ({ "{") (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (identifier "uVar15") (= "=") (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175e54)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175e54)" (* "*") (cast_expression "(code **)(puVar30 + 0x175e54)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175e54)" (( "(") (binary_expression "puVar30 + 0x175e54" (identifier "puVar30") (+ "+") (number_literal "0x175e54")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" (( "(") (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" (* "*") (cast_expression "(undefined4 *)(iVar3 + 0x3348)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 0x3348)" (( "(") (binary_expression "iVar3 + 0x3348" (identifier "iVar3") (+ "+") (number_literal "0x3348")) () ")")))) () ")")))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756a8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756a8)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756a8)" (( "(") (binary_expression "puVar30 + 0x1756a8" (identifier "puVar30") (+ "+") (number_literal "0x1756a8")) () ")"))))) () ")")) (argument_list "(uVar15)" (( "(") (identifier "uVar15") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175634)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175634)" (* "*") (cast_expression "(code **)(puVar30 + 0x175634)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175634)" (( "(") (binary_expression "puVar30 + 0x175634" (identifier "puVar30") (+ "+") (number_literal "0x175634")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175608)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175608)" (* "*") (cast_expression "(code **)(puVar30 + 0x175608)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175608)" (( "(") (binary_expression "puVar30 + 0x175608" (identifier "puVar30") (+ "+") (number_literal "0x175608")) () ")"))))) () ")")) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,\n                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210)" (( "(") (identifier "param_2") (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x48cc")) (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x4700")) (, ",") (number_literal "0x51e") (, ",") (number_literal "400") (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x46c8")) (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x6e78")) (, ",") (binary_expression "iVar20 + 0x2210" (identifier "iVar20") (+ "+") (number_literal "0x2210")) () ")"))) (; ";")) (if_statement "if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }" (if "if") (parenthesized_expression "(pcStack_10fc != (char *)0x0)" (( "(") (binary_expression "pcStack_10fc != (char *)0x0" (identifier "pcStack_10fc") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175d70)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175d70)" (* "*") (cast_expression "(code **)(puVar30 + 0x175d70)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175d70)" (( "(") (binary_expression "puVar30 + 0x175d70" (identifier "puVar30") (+ "+") (number_literal "0x175d70")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf8)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf8)" (( "(") (binary_expression "puVar30 + 0x175bf8" (identifier "puVar30") (+ "+") (number_literal "0x175bf8")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" (identifier "pcStack_10fc") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (goto_statement "goto LAB_00287858;" (goto "goto") (statement_identifier "LAB_00287858") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }" (else "else") (compound_statement "{\n            uVar26 = *(undefined4 *)(iVar19 + 0x3348);\n            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);\n            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);\n            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);\n            iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n            if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }\n            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n            (**(code **)(puVar30 + 0x1756a8))(uVar15);\n            (**(code **)(puVar30 + 0x175634))(iVar19);\n            (**(code **)(puVar30 + 0x175634))(iVar3);\n            (**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);\n            if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }\n          }" ({ "{") (expression_statement "uVar26 = *(undefined4 *)(iVar19 + 0x3348);" (assignment_expression "uVar26 = *(undefined4 *)(iVar19 + 0x3348)" (identifier "uVar26") (= "=") (pointer_expression "*(undefined4 *)(iVar19 + 0x3348)" (* "*") (cast_expression "(undefined4 *)(iVar19 + 0x3348)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar19 + 0x3348)" (( "(") (binary_expression "iVar19 + 0x3348" (identifier "iVar19") (+ "+") (number_literal "0x3348")) () ")"))))) (; ";")) (expression_statement "uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);" (assignment_expression "uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15)" (identifier "uVar10") (= "=") (call_expression "(**(code **)(puVar30 + 0x175550))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x175550))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175550)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175550)" (* "*") (cast_expression "(code **)(puVar30 + 0x175550)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175550)" (( "(") (binary_expression "puVar30 + 0x175550" (identifier "puVar30") (+ "+") (number_literal "0x175550")) () ")"))))) () ")")) (argument_list "(uVar15)" (( "(") (identifier "uVar15") () ")")))) (; ";")) (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15)" (identifier "uVar15") (= "=") (call_expression "(**(code **)(puVar30 + 0x175430))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x175430))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175430)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175430)" (* "*") (cast_expression "(code **)(puVar30 + 0x175430)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175430)" (( "(") (binary_expression "puVar30 + 0x175430" (identifier "puVar30") (+ "+") (number_literal "0x175430")) () ")"))))) () ")")) (argument_list "(uVar15)" (( "(") (identifier "uVar15") () ")")))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);" (call_expression "(**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759b0))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1759b0)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1759b0)" (* "*") (cast_expression "(code **)(puVar30 + 0x1759b0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1759b0)" (( "(") (binary_expression "puVar30 + 0x1759b0" (identifier "puVar30") (+ "+") (number_literal "0x1759b0")) () ")"))))) () ")")) (argument_list "(uVar26,uVar10,uVar15)" (( "(") (identifier "uVar26") (, ",") (identifier "uVar10") (, ",") (identifier "uVar15") () ")"))) (; ";")) (expression_statement "iVar13 = FUN_00282440(pcStack_10fc,iVar3);" (assignment_expression "iVar13 = FUN_00282440(pcStack_10fc,iVar3)" (identifier "iVar13") (= "=") (call_expression "FUN_00282440(pcStack_10fc,iVar3)" (identifier "FUN_00282440") (argument_list "(pcStack_10fc,iVar3)" (( "(") (identifier "pcStack_10fc") (, ",") (identifier "iVar3") () ")")))) (; ";")) (if_statement "if (iVar13 == 0xff) {\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }" (if "if") (parenthesized_expression "(iVar13 == 0xff)" (( "(") (binary_expression "iVar13 == 0xff" (identifier "iVar13") (== "==") (number_literal "0xff")) () ")")) (compound_statement "{\n              iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n              iVar22 = *(int *)(puVar30 + 0x1752b0);\n              if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }\n            }" ({ "{") (expression_statement "iVar13 = FUN_00282440(pcStack_10fc,iVar3);" (assignment_expression "iVar13 = FUN_00282440(pcStack_10fc,iVar3)" (identifier "iVar13") (= "=") (call_expression "FUN_00282440(pcStack_10fc,iVar3)" (identifier "FUN_00282440") (argument_list "(pcStack_10fc,iVar3)" (( "(") (identifier "pcStack_10fc") (, ",") (identifier "iVar3") () ")")))) (; ";")) (expression_statement "iVar22 = *(int *)(puVar30 + 0x1752b0);" (assignment_expression "iVar22 = *(int *)(puVar30 + 0x1752b0)" (identifier "iVar22") (= "=") (pointer_expression "*(int *)(puVar30 + 0x1752b0)" (* "*") (cast_expression "(int *)(puVar30 + 0x1752b0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x1752b0)" (( "(") (binary_expression "puVar30 + 0x1752b0" (identifier "puVar30") (+ "+") (number_literal "0x1752b0")) () ")"))))) (; ";")) (if_statement "if (iVar13 == 0xd8) {\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }" (if "if") (parenthesized_expression "(iVar13 == 0xd8)" (( "(") (binary_expression "iVar13 == 0xd8" (identifier "iVar13") (== "==") (number_literal "0xd8")) () ")")) (compound_statement "{\n                iVar13 = *(int *)(puVar30 + 0x175020);\n                uVar15 = *(undefined4 *)(iVar13 + -0x4720);\nLAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }\nLAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));\n                (**(code **)(puVar30 + 0x1756a8))(uVar15);\n                (**(code **)(puVar30 + 0x175634))(iVar19);\n                goto LAB_00286b84;\n              }" ({ "{") (expression_statement "iVar13 = *(int *)(puVar30 + 0x175020);" (assignment_expression "iVar13 = *(int *)(puVar30 + 0x175020)" (identifier "iVar13") (= "=") (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")"))))) (; ";")) (expression_statement "uVar15 = *(undefined4 *)(iVar13 + -0x4720);" (assignment_expression "uVar15 = *(undefined4 *)(iVar13 + -0x4720)" (identifier "uVar15") (= "=") (pointer_expression "*(undefined4 *)(iVar13 + -0x4720)" (* "*") (cast_expression "(undefined4 *)(iVar13 + -0x4720)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar13 + -0x4720)" (( "(") (binary_expression "iVar13 + -0x4720" (identifier "iVar13") (+ "+") (number_literal "-0x4720")) () ")"))))) (; ";")) (labeled_statement "LAB_002869d4:\n                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);" (statement_identifier "LAB_002869d4") (: ":") (expression_statement "uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);" (assignment_expression "uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" (identifier "uVar12") (= "=") (call_expression "(**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ed8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175ed8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175ed8)" (* "*") (cast_expression "(code **)(puVar30 + 0x175ed8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175ed8)" (( "(") (binary_expression "puVar30 + 0x175ed8" (identifier "puVar30") (+ "+") (number_literal "0x175ed8")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")")))) (; ";"))) (if_statement "if (uVar12 != 0xffffffff) {\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }" (if "if") (parenthesized_expression "(uVar12 != 0xffffffff)" (( "(") (binary_expression "uVar12 != 0xffffffff" (identifier "uVar12") (!= "!=") (number_literal "0xffffffff")) () ")")) (compound_statement "{\n                  if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }\n                  goto LAB_002869d4;\n                }" ({ "{") (if_statement "if (uVar12 == 0xff) {\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }\n                  else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }" (if "if") (parenthesized_expression "(uVar12 == 0xff)" (( "(") (binary_expression "uVar12 == 0xff" (identifier "uVar12") (== "==") (number_literal "0xff")) () ")")) (compound_statement "{\n                    do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);\n                    if (uVar12 == 0xd9) goto LAB_002867e4;\n                    if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }\n                    if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }\n                  }" ({ "{") (do_statement "do {\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    } while (uVar12 == 0xff);" (do "do") (compound_statement "{\n                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;\n                    }" ({ "{") (expression_statement "uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);" (assignment_expression "uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" (identifier "uVar12") (= "=") (call_expression "(**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ed8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175ed8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175ed8)" (* "*") (cast_expression "(code **)(puVar30 + 0x175ed8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175ed8)" (( "(") (binary_expression "puVar30 + 0x175ed8" (identifier "puVar30") (+ "+") (number_literal "0x175ed8")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")")))) (; ";")) (if_statement "if (uVar12 == 0xffffffff) goto LAB_00287dd0;" (if "if") (parenthesized_expression "(uVar12 == 0xffffffff)" (( "(") (binary_expression "uVar12 == 0xffffffff" (identifier "uVar12") (== "==") (number_literal "0xffffffff")) () ")")) (goto_statement "goto LAB_00287dd0;" (goto "goto") (statement_identifier "LAB_00287dd0") (; ";"))) (} "}")) (while "while") (parenthesized_expression "(uVar12 == 0xff)" (( "(") (binary_expression "uVar12 == 0xff" (identifier "uVar12") (== "==") (number_literal "0xff")) () ")")) (; ";")) (if_statement "if (uVar12 == 0xd9) goto LAB_002867e4;" (if "if") (parenthesized_expression "(uVar12 == 0xd9)" (( "(") (binary_expression "uVar12 == 0xd9" (identifier "uVar12") (== "==") (number_literal "0xd9")) () ")")) (goto_statement "goto LAB_002867e4;" (goto "goto") (statement_identifier "LAB_002867e4") (; ";"))) (if_statement "if (uVar12 != 0xed) {\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }" (if "if") (parenthesized_expression "(uVar12 != 0xed)" (( "(") (binary_expression "uVar12 != 0xed" (identifier "uVar12") (!= "!=") (number_literal "0xed")) () ")")) (compound_statement "{\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);\n                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                    }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0xff)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756c4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756c4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756c4)" (( "(") (binary_expression "puVar30 + 0x1756c4" (identifier "puVar30") (+ "+") (number_literal "0x1756c4")) () ")"))))) () ")")) (argument_list "(iVar3,0xff)" (( "(") (identifier "iVar3") (, ",") (number_literal "0xff") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756c4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756c4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756c4)" (( "(") (binary_expression "puVar30 + 0x1756c4" (identifier "puVar30") (+ "+") (number_literal "0x1756c4")) () ")"))))) () ")")) (argument_list "(iVar3,uVar12 & 0xff)" (( "(") (identifier "iVar3") (, ",") (binary_expression "uVar12 & 0xff" (identifier "uVar12") (& "&") (number_literal "0xff")) () ")"))) (; ";")) (} "}"))) (if_statement "if (uVar12 == 0xe0) {\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }\n                    else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }" (if "if") (parenthesized_expression "(uVar12 == 0xe0)" (( "(") (binary_expression "uVar12 == 0xe0" (identifier "uVar12") (== "==") (number_literal "0xe0")) () ")")) (compound_statement "{\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);\n                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);\n                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);\n                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);\n                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);\n                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);\n                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);\n                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);\n                      uStack_10a4 = uVar15;\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);\n                      uVar12 = extraout_v1_00;\n                      if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }\n                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');\n                      puVar25 = &uStack_10a4;\n                      do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));\n                      do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);\n                      (**(code **)(puVar30 + 0x175ba0))(iVar19);\n                      if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }\n                    }" ({ "{") (expression_statement "(*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);" (call_expression "(*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3)" (parenthesized_expression "(*(code *)(iVar22 + 0x24b0))" (( "(") (pointer_expression "*(code *)(iVar22 + 0x24b0)" (* "*") (cast_expression "(code *)(iVar22 + 0x24b0)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar22 + 0x24b0)" (( "(") (binary_expression "iVar22 + 0x24b0" (identifier "iVar22") (+ "+") (number_literal "0x24b0")) () ")")))) () ")")) (argument_list "(pcStack_10fc,iVar3)" (( "(") (identifier "pcStack_10fc") (, ",") (identifier "iVar3") () ")"))) (; ";")) (expression_statement "uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);" (assignment_expression "uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c)" (identifier "uStack_10a0") (= "=") (pointer_expression "*(undefined4 *)(iVar13 + -0x471c)" (* "*") (cast_expression "(undefined4 *)(iVar13 + -0x471c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar13 + -0x471c)" (( "(") (binary_expression "iVar13 + -0x471c" (identifier "iVar13") (+ "+") (number_literal "-0x471c")) () ")"))))) (; ";")) (expression_statement "uStack_109c = *(undefined4 *)(iVar13 + -0x4718);" (assignment_expression "uStack_109c = *(undefined4 *)(iVar13 + -0x4718)" (identifier "uStack_109c") (= "=") (pointer_expression "*(undefined4 *)(iVar13 + -0x4718)" (* "*") (cast_expression "(undefined4 *)(iVar13 + -0x4718)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar13 + -0x4718)" (( "(") (binary_expression "iVar13 + -0x4718" (identifier "iVar13") (+ "+") (number_literal "-0x4718")) () ")"))))) (; ";")) (expression_statement "uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);" (assignment_expression "uStack_1098 = *(undefined4 *)(iVar13 + -0x4714)" (identifier "uStack_1098") (= "=") (pointer_expression "*(undefined4 *)(iVar13 + -0x4714)" (* "*") (cast_expression "(undefined4 *)(iVar13 + -0x4714)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar13 + -0x4714)" (( "(") (binary_expression "iVar13 + -0x4714" (identifier "iVar13") (+ "+") (number_literal "-0x4714")) () ")"))))) (; ";")) (expression_statement "auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);" (assignment_expression "auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710)" (identifier "auStack_1094") (= "=") (pointer_expression "*(undefined1 (*) [4])(iVar13 + -0x4710)" (* "*") (cast_expression "(undefined1 (*) [4])(iVar13 + -0x4710)" (( "(") (type_descriptor "undefined1 (*) [4]" (type_identifier "undefined1") (abstract_array_declarator "(*) [4]" (abstract_parenthesized_declarator "(*)" (( "(") (abstract_pointer_declarator "*" (* "*")) () ")")) ([ "[") (number_literal "4") (] "]"))) () ")") (parenthesized_expression "(iVar13 + -0x4710)" (( "(") (binary_expression "iVar13 + -0x4710" (identifier "iVar13") (+ "+") (number_literal "-0x4710")) () ")"))))) (; ";")) (expression_statement "uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);" (assignment_expression "uStack_1090 = *(undefined4 *)(iVar13 + -0x470c)" (identifier "uStack_1090") (= "=") (pointer_expression "*(undefined4 *)(iVar13 + -0x470c)" (* "*") (cast_expression "(undefined4 *)(iVar13 + -0x470c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar13 + -0x470c)" (( "(") (binary_expression "iVar13 + -0x470c" (identifier "iVar13") (+ "+") (number_literal "-0x470c")) () ")"))))) (; ";")) (expression_statement "uStack_108c = *(undefined4 *)(iVar13 + -0x4708);" (assignment_expression "uStack_108c = *(undefined4 *)(iVar13 + -0x4708)" (identifier "uStack_108c") (= "=") (pointer_expression "*(undefined4 *)(iVar13 + -0x4708)" (* "*") (cast_expression "(undefined4 *)(iVar13 + -0x4708)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar13 + -0x4708)" (( "(") (binary_expression "iVar13 + -0x4708" (identifier "iVar13") (+ "+") (number_literal "-0x4708")) () ")"))))) (; ";")) (expression_statement "uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);" (assignment_expression "uStack_1088 = *(undefined1 *)(iVar13 + -0x4704)" (identifier "uStack_1088") (= "=") (pointer_expression "*(undefined1 *)(iVar13 + -0x4704)" (* "*") (cast_expression "(undefined1 *)(iVar13 + -0x4704)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar13 + -0x4704)" (( "(") (binary_expression "iVar13 + -0x4704" (identifier "iVar13") (+ "+") (number_literal "-0x4704")) () ")"))))) (; ";")) (expression_statement "uStack_10a4 = uVar15;" (assignment_expression "uStack_10a4 = uVar15" (identifier "uStack_10a4") (= "=") (identifier "uVar15")) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175ba0))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x175ba0))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ba0))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175ba0)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175ba0)" (* "*") (cast_expression "(code **)(puVar30 + 0x175ba0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175ba0)" (( "(") (binary_expression "puVar30 + 0x175ba0" (identifier "puVar30") (+ "+") (number_literal "0x175ba0")) () ")"))))) () ")")) (argument_list "(iVar19)" (( "(") (identifier "iVar19") () ")"))) (; ";")) (expression_statement "uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);" (assignment_expression "uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8)" (identifier "uVar16") (= "=") (call_expression "(undefined1)(extraout_v1_00 + 0x10 >> 8)" (parenthesized_expression "(undefined1)" (( "(") (identifier "undefined1") () ")")) (argument_list "(extraout_v1_00 + 0x10 >> 8)" (( "(") (binary_expression "extraout_v1_00 + 0x10 >> 8" (binary_expression "extraout_v1_00 + 0x10" (identifier "extraout_v1_00") (+ "+") (number_literal "0x10")) (>> ">>") (number_literal "8")) () ")")))) (; ";")) (expression_statement "uVar12 = extraout_v1_00;" (assignment_expression "uVar12 = extraout_v1_00" (identifier "uVar12") (= "=") (identifier "extraout_v1_00")) (; ";")) (if_statement "if ((extraout_v1_00 & 1) != 0) {\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }" (if "if") (parenthesized_expression "((extraout_v1_00 & 1) != 0)" (( "(") (binary_expression "(extraout_v1_00 & 1) != 0" (parenthesized_expression "(extraout_v1_00 & 1)" (( "(") (binary_expression "extraout_v1_00 & 1" (identifier "extraout_v1_00") (& "&") (number_literal "1")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                        uVar12 = extraout_v1_00 + 1;\n                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);\n                      }" ({ "{") (expression_statement "uVar12 = extraout_v1_00 + 1;" (assignment_expression "uVar12 = extraout_v1_00 + 1" (identifier "uVar12") (= "=") (binary_expression "extraout_v1_00 + 1" (identifier "extraout_v1_00") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);" (assignment_expression "uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8)" (identifier "uVar16") (= "=") (call_expression "(undefined1)(extraout_v1_00 + 0x11 >> 8)" (parenthesized_expression "(undefined1)" (( "(") (identifier "undefined1") () ")")) (argument_list "(extraout_v1_00 + 0x11 >> 8)" (( "(") (binary_expression "extraout_v1_00 + 0x11 >> 8" (binary_expression "extraout_v1_00 + 0x11" (identifier "extraout_v1_00") (+ "+") (number_literal "0x11")) (>> ">>") (number_literal "8")) () ")")))) (; ";")) (} "}"))) (expression_statement "uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10');" (assignment_expression "uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10')" (identifier "uStack_10a4") (= "=") (call_expression "CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10')" (identifier "CONCAT31") (argument_list "(CONCAT21(uStack_10a4._0_2_,uVar16),\n                                             (char)uVar12 + '\x10')" (( "(") (call_expression "CONCAT21(uStack_10a4._0_2_,uVar16)" (identifier "CONCAT21") (argument_list "(uStack_10a4._0_2_,uVar16)" (( "(") (field_expression "uStack_10a4._0_2_" (identifier "uStack_10a4") (. ".") (field_identifier "_0_2_")) (, ",") (identifier "uVar16") () ")"))) (, ",") (binary_expression "(char)uVar12 + '\x10'" (cast_expression "(char)uVar12" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "uVar12")) (+ "+") (char_literal "'\x10'" (' "'") (escape_sequence "\x10") (' "'"))) () ")")))) (; ";")) (expression_statement "puVar25 = &uStack_10a4;" (assignment_expression "puVar25 = &uStack_10a4" (identifier "puVar25") (= "=") (pointer_expression "&uStack_10a4" (& "&") (identifier "uStack_10a4"))) (; ";")) (do_statement "do {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));" (do "do") (compound_statement "{\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);\n                        puVar25 = (undefined4 *)((int)puVar25 + 1);\n                      }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756c4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756c4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756c4)" (( "(") (binary_expression "puVar30 + 0x1756c4" (identifier "puVar30") (+ "+") (number_literal "0x1756c4")) () ")"))))) () ")")) (argument_list "(iVar3,*(undefined1 *)puVar25)" (( "(") (identifier "iVar3") (, ",") (pointer_expression "*(undefined1 *)puVar25" (* "*") (cast_expression "(undefined1 *)puVar25" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar25"))) () ")"))) (; ";")) (expression_statement "puVar25 = (undefined4 *)((int)puVar25 + 1);" (assignment_expression "puVar25 = (undefined4 *)((int)puVar25 + 1)" (identifier "puVar25") (= "=") (cast_expression "(undefined4 *)((int)puVar25 + 1)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)puVar25 + 1)" (( "(") (binary_expression "(int)puVar25 + 1" (cast_expression "(int)puVar25" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar25")) (+ "+") (number_literal "1")) () ")")))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(puVar25 != (undefined4 *)(auStack_1094 + 2))" (( "(") (binary_expression "puVar25 != (undefined4 *)(auStack_1094 + 2)" (identifier "puVar25") (!= "!=") (cast_expression "(undefined4 *)(auStack_1094 + 2)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_1094 + 2)" (( "(") (binary_expression "auStack_1094 + 2" (identifier "auStack_1094") (+ "+") (number_literal "2")) () ")")))) () ")")) (; ";")) (do_statement "do {\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      } while (iVar14 != -1);" (do "do") (compound_statement "{\n                        iVar14 = FUN_00282440(iVar19,iVar3);\n                      }" ({ "{") (expression_statement "iVar14 = FUN_00282440(iVar19,iVar3);" (assignment_expression "iVar14 = FUN_00282440(iVar19,iVar3)" (identifier "iVar14") (= "=") (call_expression "FUN_00282440(iVar19,iVar3)" (identifier "FUN_00282440") (argument_list "(iVar19,iVar3)" (( "(") (identifier "iVar19") (, ",") (identifier "iVar3") () ")")))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar14 != -1)" (( "(") (binary_expression "iVar14 != -1" (identifier "iVar14") (!= "!=") (number_literal "-1")) () ")")) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175ba0))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x175ba0))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ba0))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175ba0)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175ba0)" (* "*") (cast_expression "(code **)(puVar30 + 0x175ba0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175ba0)" (( "(") (binary_expression "puVar30 + 0x175ba0" (identifier "puVar30") (+ "+") (number_literal "0x175ba0")) () ")"))))) () ")")) (argument_list "(iVar19)" (( "(") (identifier "iVar19") () ")"))) (; ";")) (if_statement "if ((extraout_v1_01 & 1) != 0) {\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }" (if "if") (parenthesized_expression "((extraout_v1_01 & 1) != 0)" (( "(") (binary_expression "(extraout_v1_01 & 1) != 0" (parenthesized_expression "(extraout_v1_01 & 1)" (( "(") (binary_expression "extraout_v1_01 & 1" (identifier "extraout_v1_01") (& "&") (number_literal "1")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);\n                      }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,0);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756c4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756c4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756c4)" (( "(") (binary_expression "puVar30 + 0x1756c4" (identifier "puVar30") (+ "+") (number_literal "0x1756c4")) () ")"))))) () ")")) (argument_list "(iVar3,0)" (( "(") (identifier "iVar3") (, ",") (number_literal "0") () ")"))) (; ";")) (} "}"))) (} "}")) (else_clause "else if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }" (else "else") (if_statement "if (uVar12 == 0xed) {\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }\n                    else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }" (if "if") (parenthesized_expression "(uVar12 == 0xed)" (( "(") (binary_expression "uVar12 == 0xed" (identifier "uVar12") (== "==") (number_literal "0xed")) () ")")) (compound_statement "{\n                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                      if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }\n                    }" ({ "{") (expression_statement "iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);" (assignment_expression "iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" (identifier "iVar14") (= "=") (call_expression "(**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ed8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175ed8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175ed8)" (* "*") (cast_expression "(code **)(puVar30 + 0x175ed8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175ed8)" (( "(") (binary_expression "puVar30 + 0x175ed8" (identifier "puVar30") (+ "+") (number_literal "0x175ed8")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")")))) (; ";")) (if_statement "if ((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }" (if "if") (parenthesized_expression "((iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1))" (( "(") (binary_expression "(iVar14 != -1) &&\n                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)" (parenthesized_expression "(iVar14 != -1)" (( "(") (binary_expression "iVar14 != -1" (identifier "iVar14") (!= "!=") (number_literal "-1")) () ")")) (&& "&&") (parenthesized_expression "(iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)" (( "(") (comma_expression "iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1" (assignment_expression "iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" (identifier "iVar11") (= "=") (call_expression "(**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ed8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175ed8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175ed8)" (* "*") (cast_expression "(code **)(puVar30 + 0x175ed8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175ed8)" (( "(") (binary_expression "puVar30 + 0x175ed8" (identifier "puVar30") (+ "+") (number_literal "0x175ed8")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")")))) (, ",") (binary_expression "iVar11 != -1" (identifier "iVar11") (!= "!=") (number_literal "-1"))) () ")"))) () ")")) (compound_statement "{\n                        iVar11 = iVar14 * 0x100 + -2 + iVar11;\n                        do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);\n                      }" ({ "{") (expression_statement "iVar11 = iVar14 * 0x100 + -2 + iVar11;" (assignment_expression "iVar11 = iVar14 * 0x100 + -2 + iVar11" (identifier "iVar11") (= "=") (binary_expression "iVar14 * 0x100 + -2 + iVar11" (binary_expression "iVar14 * 0x100 + -2" (binary_expression "iVar14 * 0x100" (identifier "iVar14") (* "*") (number_literal "0x100")) (+ "+") (number_literal "-2")) (+ "+") (identifier "iVar11"))) (; ";")) (do_statement "do {\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        } while (iVar14 != -1);" (do "do") (compound_statement "{\n                          if (iVar11 == 0) break;\n                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);\n                          iVar11 = iVar11 + -1;\n                        }" ({ "{") (if_statement "if (iVar11 == 0) break;" (if "if") (parenthesized_expression "(iVar11 == 0)" (( "(") (binary_expression "iVar11 == 0" (identifier "iVar11") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);" (assignment_expression "iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" (identifier "iVar14") (= "=") (call_expression "(**(code **)(puVar30 + 0x175ed8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ed8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175ed8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175ed8)" (* "*") (cast_expression "(code **)(puVar30 + 0x175ed8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175ed8)" (( "(") (binary_expression "puVar30 + 0x175ed8" (identifier "puVar30") (+ "+") (number_literal "0x175ed8")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")")))) (; ";")) (expression_statement "iVar11 = iVar11 + -1;" (assignment_expression "iVar11 = iVar11 + -1" (identifier "iVar11") (= "=") (binary_expression "iVar11 + -1" (identifier "iVar11") (+ "+") (number_literal "-1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar14 != -1)" (( "(") (binary_expression "iVar14 != -1" (identifier "iVar14") (!= "!=") (number_literal "-1")) () ")")) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }" (else "else") (compound_statement "{\n                      if (uVar12 == 0xda) goto LAB_002867c8;\n                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);\n                    }" ({ "{") (if_statement "if (uVar12 == 0xda) goto LAB_002867c8;" (if "if") (parenthesized_expression "(uVar12 == 0xda)" (( "(") (binary_expression "uVar12 == 0xda" (identifier "uVar12") (== "==") (number_literal "0xda")) () ")")) (goto_statement "goto LAB_002867c8;" (goto "goto") (statement_identifier "LAB_002867c8") (; ";"))) (expression_statement "(*(code *)(iVar22 + 0x24b0))(pcStack_10fc);" (call_expression "(*(code *)(iVar22 + 0x24b0))(pcStack_10fc)" (parenthesized_expression "(*(code *)(iVar22 + 0x24b0))" (( "(") (pointer_expression "*(code *)(iVar22 + 0x24b0)" (* "*") (cast_expression "(code *)(iVar22 + 0x24b0)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar22 + 0x24b0)" (( "(") (binary_expression "iVar22 + 0x24b0" (identifier "iVar22") (+ "+") (number_literal "0x24b0")) () ")")))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (} "}")))))) (} "}")) (else_clause "else {\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }" (else "else") (compound_statement "{\n                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);\n                  }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);" (call_expression "(**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756c4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756c4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756c4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756c4)" (( "(") (binary_expression "puVar30 + 0x1756c4" (identifier "puVar30") (+ "+") (number_literal "0x1756c4")) () ")"))))) () ")")) (argument_list "(iVar3,uVar12 & 0xff)" (( "(") (identifier "iVar3") (, ",") (binary_expression "uVar12 & 0xff" (identifier "uVar12") (& "&") (number_literal "0xff")) () ")"))) (; ";")) (} "}")))) (goto_statement "goto LAB_002869d4;" (goto "goto") (statement_identifier "LAB_002869d4") (; ";")) (} "}"))) (labeled_statement "LAB_00287dd0:\n                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));" (statement_identifier "LAB_00287dd0") (: ":") (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348))" (identifier "uVar15") (= "=") (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175e54)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175e54)" (* "*") (cast_expression "(code **)(puVar30 + 0x175e54)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175e54)" (( "(") (binary_expression "puVar30 + 0x175e54" (identifier "puVar30") (+ "+") (number_literal "0x175e54")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(iVar19 + 0x3348))" (( "(") (pointer_expression "*(undefined4 *)(iVar19 + 0x3348)" (* "*") (cast_expression "(undefined4 *)(iVar19 + 0x3348)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar19 + 0x3348)" (( "(") (binary_expression "iVar19 + 0x3348" (identifier "iVar19") (+ "+") (number_literal "0x3348")) () ")")))) () ")")))) (; ";"))) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756a8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756a8)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756a8)" (( "(") (binary_expression "puVar30 + 0x1756a8" (identifier "puVar30") (+ "+") (number_literal "0x1756a8")) () ")"))))) () ")")) (argument_list "(uVar15)" (( "(") (identifier "uVar15") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175634)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175634)" (* "*") (cast_expression "(code **)(puVar30 + 0x175634)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175634)" (( "(") (binary_expression "puVar30 + 0x175634" (identifier "puVar30") (+ "+") (number_literal "0x175634")) () ")"))))) () ")")) (argument_list "(iVar19)" (( "(") (identifier "iVar19") () ")"))) (; ";")) (goto_statement "goto LAB_00286b84;" (goto "goto") (statement_identifier "LAB_00286b84") (; ";")) (} "}"))) (} "}"))) (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348))" (identifier "uVar15") (= "=") (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175e54)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175e54)" (* "*") (cast_expression "(code **)(puVar30 + 0x175e54)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175e54)" (( "(") (binary_expression "puVar30 + 0x175e54" (identifier "puVar30") (+ "+") (number_literal "0x175e54")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(iVar19 + 0x3348))" (( "(") (pointer_expression "*(undefined4 *)(iVar19 + 0x3348)" (* "*") (cast_expression "(undefined4 *)(iVar19 + 0x3348)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar19 + 0x3348)" (( "(") (binary_expression "iVar19 + 0x3348" (identifier "iVar19") (+ "+") (number_literal "0x3348")) () ")")))) () ")")))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756a8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756a8)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756a8)" (( "(") (binary_expression "puVar30 + 0x1756a8" (identifier "puVar30") (+ "+") (number_literal "0x1756a8")) () ")"))))) () ")")) (argument_list "(uVar15)" (( "(") (identifier "uVar15") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175634)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175634)" (* "*") (cast_expression "(code **)(puVar30 + 0x175634)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175634)" (( "(") (binary_expression "puVar30 + 0x175634" (identifier "puVar30") (+ "+") (number_literal "0x175634")) () ")"))))) () ")")) (argument_list "(iVar19)" (( "(") (identifier "iVar19") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175634)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175634)" (* "*") (cast_expression "(code **)(puVar30 + 0x175634)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175634)" (( "(") (binary_expression "puVar30 + 0x175634" (identifier "puVar30") (+ "+") (number_literal "0x175634")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175608)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175608)" (* "*") (cast_expression "(code **)(puVar30 + 0x175608)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175608)" (( "(") (binary_expression "puVar30 + 0x175608" (identifier "puVar30") (+ "+") (number_literal "0x175608")) () ")"))))) () ")")) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,\n                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                       iVar20 + 0x2210)" (( "(") (identifier "param_2") (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x48cc")) (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x4700")) (, ",") (number_literal "0x529") (, ",") (number_literal "0x1c2") (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4850" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x4850")) (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x6e78")) (, ",") (binary_expression "iVar20 + 0x2210" (identifier "iVar20") (+ "+") (number_literal "0x2210")) () ")"))) (; ";")) (if_statement "if (pcStack_10fc != (char *)0x0) {\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }" (if "if") (parenthesized_expression "(pcStack_10fc != (char *)0x0)" (( "(") (binary_expression "pcStack_10fc != (char *)0x0" (identifier "pcStack_10fc") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n              pcStack_10fc = (char *)0x0;\n              goto LAB_00287858;\n            }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175d70)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175d70)" (* "*") (cast_expression "(code **)(puVar30 + 0x175d70)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175d70)" (( "(") (binary_expression "puVar30 + 0x175d70" (identifier "puVar30") (+ "+") (number_literal "0x175d70")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf8)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf8)" (( "(") (binary_expression "puVar30 + 0x175bf8" (identifier "puVar30") (+ "+") (number_literal "0x175bf8")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" (identifier "pcStack_10fc") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (goto_statement "goto LAB_00287858;" (goto "goto") (statement_identifier "LAB_00287858") (; ";")) (} "}"))) (} "}")))) (} "}")))) (} "}")))) (} "}")))) (goto_statement "goto LAB_00286534;" (goto "goto") (statement_identifier "LAB_00286534") (; ";")) (} "}"))) (expression_statement "iVar3 = *(int *)(puVar30 + 0x174fb0);" (assignment_expression "iVar3 = *(int *)(puVar30 + 0x174fb0)" (identifier "iVar3") (= "=") (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")"))))) (; ";")) (goto_statement "goto LAB_00284aa4;" (goto "goto") (statement_identifier "LAB_00284aa4") (; ";")) (labeled_statement "LAB_00286b70:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);" (statement_identifier "LAB_00286b70") (: ":") (expression_statement "(**(code **)(puVar30 + 0x1756a8))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756a8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756a8)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756a8)" (( "(") (binary_expression "puVar30 + 0x1756a8" (identifier "puVar30") (+ "+") (number_literal "0x1756a8")) () ")"))))) () ")")) (argument_list "(iVar19)" (( "(") (identifier "iVar19") () ")"))) (; ";"))) (goto_statement "goto LAB_00286b84;" (goto "goto") (statement_identifier "LAB_00286b84") (; ";")) (labeled_statement "LAB_00286f40:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);" (statement_identifier "LAB_00286f40") (: ":") (expression_statement "(**(code **)(puVar30 + 0x1756a8))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756a8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756a8)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756a8)" (( "(") (binary_expression "puVar30 + 0x1756a8" (identifier "puVar30") (+ "+") (number_literal "0x1756a8")) () ")"))))) () ")")) (argument_list "(iVar19)" (( "(") (identifier "iVar19") () ")"))) (; ";"))) (goto_statement "goto LAB_00286f50;" (goto "goto") (statement_identifier "LAB_00286f50") (; ";")) (labeled_statement "LAB_00287414:\n  (**(code **)(puVar30 + 0x1756a8))(iVar19);" (statement_identifier "LAB_00287414") (: ":") (expression_statement "(**(code **)(puVar30 + 0x1756a8))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756a8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756a8)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756a8)" (( "(") (binary_expression "puVar30 + 0x1756a8" (identifier "puVar30") (+ "+") (number_literal "0x1756a8")) () ")"))))) () ")")) (argument_list "(iVar19)" (( "(") (identifier "iVar19") () ")"))) (; ";"))) (goto_statement "goto LAB_00287424;" (goto "goto") (statement_identifier "LAB_00287424") (; ";")) (labeled_statement "LAB_00287758:\n  (**(code **)(puVar30 + 0x1756a8))(iVar3);" (statement_identifier "LAB_00287758") (: ":") (expression_statement "(**(code **)(puVar30 + 0x1756a8))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756a8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756a8)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756a8)" (( "(") (binary_expression "puVar30 + 0x1756a8" (identifier "puVar30") (+ "+") (number_literal "0x1756a8")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))) (; ";"))) (goto_statement "goto LAB_00287768;" (goto "goto") (statement_identifier "LAB_00287768") (; ";")) (labeled_statement "LAB_002867c8:\n  do {\n    iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n  } while (iVar13 != -1);" (statement_identifier "LAB_002867c8") (: ":") (do_statement "do {\n    iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n  } while (iVar13 != -1);" (do "do") (compound_statement "{\n    iVar13 = FUN_00282440(pcStack_10fc,iVar3);\n  }" ({ "{") (expression_statement "iVar13 = FUN_00282440(pcStack_10fc,iVar3);" (assignment_expression "iVar13 = FUN_00282440(pcStack_10fc,iVar3)" (identifier "iVar13") (= "=") (call_expression "FUN_00282440(pcStack_10fc,iVar3)" (identifier "FUN_00282440") (argument_list "(pcStack_10fc,iVar3)" (( "(") (identifier "pcStack_10fc") (, ",") (identifier "iVar3") () ")")))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar13 != -1)" (( "(") (binary_expression "iVar13 != -1" (identifier "iVar13") (!= "!=") (number_literal "-1")) () ")")) (; ";"))) (labeled_statement "LAB_002867e4:\n  uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));" (statement_identifier "LAB_002867e4") (: ":") (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348))" (identifier "uVar15") (= "=") (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175e54)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175e54)" (* "*") (cast_expression "(code **)(puVar30 + 0x175e54)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175e54)" (( "(") (binary_expression "puVar30 + 0x175e54" (identifier "puVar30") (+ "+") (number_literal "0x175e54")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(iVar19 + 0x3348))" (( "(") (pointer_expression "*(undefined4 *)(iVar19 + 0x3348)" (* "*") (cast_expression "(undefined4 *)(iVar19 + 0x3348)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar19 + 0x3348)" (( "(") (binary_expression "iVar19 + 0x3348" (identifier "iVar19") (+ "+") (number_literal "0x3348")) () ")")))) () ")")))) (; ";"))) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756a8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756a8)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756a8)" (( "(") (binary_expression "puVar30 + 0x1756a8" (identifier "puVar30") (+ "+") (number_literal "0x1756a8")) () ")"))))) () ")")) (argument_list "(uVar15)" (( "(") (identifier "uVar15") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175634)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175634)" (* "*") (cast_expression "(code **)(puVar30 + 0x175634)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175634)" (( "(") (binary_expression "puVar30 + 0x175634" (identifier "puVar30") (+ "+") (number_literal "0x175634")) () ")"))))) () ")")) (argument_list "(iVar19)" (( "(") (identifier "iVar19") () ")"))) (; ";")) (labeled_statement "LAB_00286b84:\n  uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);" (statement_identifier "LAB_00286b84") (: ":") (expression_statement "uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3)" (identifier "uVar15") (= "=") (call_expression "(**(code **)(puVar30 + 0x1754cc))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x1754cc))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1754cc)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1754cc)" (* "*") (cast_expression "(code **)(puVar30 + 0x1754cc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1754cc)" (( "(") (binary_expression "puVar30 + 0x1754cc" (identifier "puVar30") (+ "+") (number_literal "0x1754cc")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")")))) (; ";"))) (expression_statement "(**(code **)(puVar30 + 0x175ba0))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175ba0))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ba0))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175ba0)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175ba0)" (* "*") (cast_expression "(code **)(puVar30 + 0x175ba0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175ba0)" (( "(") (binary_expression "puVar30 + 0x175ba0" (identifier "puVar30") (+ "+") (number_literal "0x175ba0")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))) (; ";")) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_02);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_02)" (identifier "iVar19") (= "=") (call_expression "(**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_02)" (parenthesized_expression "(**(code **)(puVar30 + 0x175dac))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175dac)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175dac)" (* "*") (cast_expression "(code **)(puVar30 + 0x175dac)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175dac)" (( "(") (binary_expression "puVar30 + 0x175dac" (identifier "puVar30") (+ "+") (number_literal "0x175dac")) () ")"))))) () ")")) (argument_list "(uVar15,extraout_v1_02)" (( "(") (identifier "uVar15") (, ",") (identifier "extraout_v1_02") () ")")))) (; ";")) (if_statement "if (iVar19 == 0) {\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x535,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }\n  }\n  else {\n    iVar13 = (**(code **)(puVar30 + 0x175d80))(pcStack_10fc,auStack_1084,iVar19,param_2);\n    (**(code **)(puVar30 + 0x1754e4))(iVar19);\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    iVar3 = *(int *)(puVar30 + 0x174fb0);\n    if (iVar13 != 0) {\nLAB_00284aa4:\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc);\n      if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0);\n      if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      iVar2 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4);\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar2 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);\n        (**(code **)(puVar30 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar2);\n      }\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc);\n      goto LAB_00287858;\n    }\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x53d,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }\n  }" (if "if") (parenthesized_expression "(iVar19 == 0)" (( "(") (binary_expression "iVar19 == 0" (identifier "iVar19") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x535,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }\n  }" ({ "{") (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (identifier "uVar15") (= "=") (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175e54)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175e54)" (* "*") (cast_expression "(code **)(puVar30 + 0x175e54)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175e54)" (( "(") (binary_expression "puVar30 + 0x175e54" (identifier "puVar30") (+ "+") (number_literal "0x175e54")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" (( "(") (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" (* "*") (cast_expression "(undefined4 *)(iVar3 + 0x3348)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 0x3348)" (( "(") (binary_expression "iVar3 + 0x3348" (identifier "iVar3") (+ "+") (number_literal "0x3348")) () ")")))) () ")")))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756a8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756a8)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756a8)" (( "(") (binary_expression "puVar30 + 0x1756a8" (identifier "puVar30") (+ "+") (number_literal "0x1756a8")) () ")"))))) () ")")) (argument_list "(uVar15)" (( "(") (identifier "uVar15") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175634)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175634)" (* "*") (cast_expression "(code **)(puVar30 + 0x175634)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175634)" (( "(") (binary_expression "puVar30 + 0x175634" (identifier "puVar30") (+ "+") (number_literal "0x175634")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x535,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x535,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175608)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175608)" (* "*") (cast_expression "(code **)(puVar30 + 0x175608)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175608)" (( "(") (binary_expression "puVar30 + 0x175608" (identifier "puVar30") (+ "+") (number_literal "0x175608")) () ")"))))) () ")")) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x535,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210)" (( "(") (identifier "param_2") (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x48cc")) (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x4700")) (, ",") (number_literal "0x535") (, ",") (number_literal "400") (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x46c8")) (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x6e78")) (, ",") (binary_expression "iVar20 + 0x2210" (identifier "iVar20") (+ "+") (number_literal "0x2210")) () ")"))) (; ";")) (if_statement "if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }" (if "if") (parenthesized_expression "(pcStack_10fc != (char *)0x0)" (( "(") (binary_expression "pcStack_10fc != (char *)0x0" (identifier "pcStack_10fc") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175d70)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175d70)" (* "*") (cast_expression "(code **)(puVar30 + 0x175d70)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175d70)" (( "(") (binary_expression "puVar30 + 0x175d70" (identifier "puVar30") (+ "+") (number_literal "0x175d70")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf8)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf8)" (( "(") (binary_expression "puVar30 + 0x175bf8" (identifier "puVar30") (+ "+") (number_literal "0x175bf8")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" (identifier "pcStack_10fc") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (goto_statement "goto LAB_00287858;" (goto "goto") (statement_identifier "LAB_00287858") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n    iVar13 = (**(code **)(puVar30 + 0x175d80))(pcStack_10fc,auStack_1084,iVar19,param_2);\n    (**(code **)(puVar30 + 0x1754e4))(iVar19);\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    iVar3 = *(int *)(puVar30 + 0x174fb0);\n    if (iVar13 != 0) {\nLAB_00284aa4:\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc);\n      if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0);\n      if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      iVar2 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4);\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar2 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);\n        (**(code **)(puVar30 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar2);\n      }\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc);\n      goto LAB_00287858;\n    }\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x53d,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }\n  }" (else "else") (compound_statement "{\n    iVar13 = (**(code **)(puVar30 + 0x175d80))(pcStack_10fc,auStack_1084,iVar19,param_2);\n    (**(code **)(puVar30 + 0x1754e4))(iVar19);\n    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n    (**(code **)(puVar30 + 0x1756a8))(uVar15);\n    (**(code **)(puVar30 + 0x175634))(iVar3);\n    iVar3 = *(int *)(puVar30 + 0x174fb0);\n    if (iVar13 != 0) {\nLAB_00284aa4:\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc);\n      if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0);\n      if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      iVar2 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4);\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar2 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);\n        (**(code **)(puVar30 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar2);\n      }\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc);\n      goto LAB_00287858;\n    }\n    (**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x53d,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);\n    if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }\n  }" ({ "{") (expression_statement "iVar13 = (**(code **)(puVar30 + 0x175d80))(pcStack_10fc,auStack_1084,iVar19,param_2);" (assignment_expression "iVar13 = (**(code **)(puVar30 + 0x175d80))(pcStack_10fc,auStack_1084,iVar19,param_2)" (identifier "iVar13") (= "=") (call_expression "(**(code **)(puVar30 + 0x175d80))(pcStack_10fc,auStack_1084,iVar19,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d80))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175d80)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175d80)" (* "*") (cast_expression "(code **)(puVar30 + 0x175d80)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175d80)" (( "(") (binary_expression "puVar30 + 0x175d80" (identifier "puVar30") (+ "+") (number_literal "0x175d80")) () ")"))))) () ")")) (argument_list "(pcStack_10fc,auStack_1084,iVar19,param_2)" (( "(") (identifier "pcStack_10fc") (, ",") (identifier "auStack_1084") (, ",") (identifier "iVar19") (, ",") (identifier "param_2") () ")")))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x1754e4))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x1754e4))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x1754e4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1754e4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1754e4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1754e4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1754e4)" (( "(") (binary_expression "puVar30 + 0x1754e4" (identifier "puVar30") (+ "+") (number_literal "0x1754e4")) () ")"))))) () ")")) (argument_list "(iVar19)" (( "(") (identifier "iVar19") () ")"))) (; ";")) (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (identifier "uVar15") (= "=") (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175e54)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175e54)" (* "*") (cast_expression "(code **)(puVar30 + 0x175e54)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175e54)" (( "(") (binary_expression "puVar30 + 0x175e54" (identifier "puVar30") (+ "+") (number_literal "0x175e54")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" (( "(") (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" (* "*") (cast_expression "(undefined4 *)(iVar3 + 0x3348)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 0x3348)" (( "(") (binary_expression "iVar3 + 0x3348" (identifier "iVar3") (+ "+") (number_literal "0x3348")) () ")")))) () ")")))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756a8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756a8)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756a8)" (( "(") (binary_expression "puVar30 + 0x1756a8" (identifier "puVar30") (+ "+") (number_literal "0x1756a8")) () ")"))))) () ")")) (argument_list "(uVar15)" (( "(") (identifier "uVar15") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175634)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175634)" (* "*") (cast_expression "(code **)(puVar30 + 0x175634)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175634)" (( "(") (binary_expression "puVar30 + 0x175634" (identifier "puVar30") (+ "+") (number_literal "0x175634")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))) (; ";")) (expression_statement "iVar3 = *(int *)(puVar30 + 0x174fb0);" (assignment_expression "iVar3 = *(int *)(puVar30 + 0x174fb0)" (identifier "iVar3") (= "=") (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")"))))) (; ";")) (if_statement "if (iVar13 != 0) {\nLAB_00284aa4:\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc);\n      if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0);\n      if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      iVar2 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4);\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar2 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);\n        (**(code **)(puVar30 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar2);\n      }\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc);\n      goto LAB_00287858;\n    }" (if "if") (parenthesized_expression "(iVar13 != 0)" (( "(") (binary_expression "iVar13 != 0" (identifier "iVar13") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\nLAB_00284aa4:\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc);\n      if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0);\n      if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      iVar2 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4);\n      if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar2 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);\n        (**(code **)(puVar30 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar2);\n      }\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc);\n      goto LAB_00287858;\n    }" ({ "{") (labeled_statement "LAB_00284aa4:\n      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc);" (statement_identifier "LAB_00284aa4") (: ":") (expression_statement "iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc)" (parenthesized_expression "(**(code **)(puVar30 + 0x1757f8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1757f8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1757f8)" (* "*") (cast_expression "(code **)(puVar30 + 0x1757f8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1757f8)" (( "(") (binary_expression "puVar30 + 0x1757f8" (identifier "puVar30") (+ "+") (number_literal "0x1757f8")) () ")"))))) () ")")) (argument_list "(iVar2,iVar3 + 0x78dc)" (( "(") (identifier "iVar2") (, ",") (binary_expression "iVar3 + 0x78dc" (identifier "iVar3") (+ "+") (number_literal "0x78dc")) () ")")))) (; ";"))) (if_statement "if (iVar3 == 0) {\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }" (if "if") (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\nLAB_00284ae8:\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00286f50:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n      }" ({ "{") (labeled_statement "LAB_00284ae8:\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);" (statement_identifier "LAB_00284ae8") (: ":") (expression_statement "iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(puVar30 + 0x175cf4))(0,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175cf4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175cf4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175cf4)" (* "*") (cast_expression "(code **)(puVar30 + 0x175cf4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175cf4)" (( "(") (binary_expression "puVar30 + 0x175cf4" (identifier "puVar30") (+ "+") (number_literal "0x175cf4")) () ")"))))) () ")")) (argument_list "(0,param_2)" (( "(") (number_literal "0") (, ",") (identifier "param_2") () ")")))) (; ";"))) (if_statement "if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" (if "if") (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175608)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175608)" (* "*") (cast_expression "(code **)(puVar30 + 0x175608)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175608)" (( "(") (binary_expression "puVar30 + 0x175608" (identifier "puVar30") (+ "+") (number_literal "0x175608")) () ")"))))) () ")")) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (( "(") (identifier "param_2") (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x48cc")) (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x4700")) (, ",") (number_literal "0x544") (, ",") (number_literal "400") (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x46c8")) (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x6e78")) (, ",") (binary_expression "iVar20 + 0x2210" (identifier "iVar20") (+ "+") (number_literal "0x2210")) () ")"))) (; ";")) (if_statement "if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" (if "if") (parenthesized_expression "(pcStack_10fc != (char *)0x0)" (( "(") (binary_expression "pcStack_10fc != (char *)0x0" (identifier "pcStack_10fc") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175d70)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175d70)" (* "*") (cast_expression "(code **)(puVar30 + 0x175d70)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175d70)" (( "(") (binary_expression "puVar30 + 0x175d70" (identifier "puVar30") (+ "+") (number_literal "0x175d70")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf8)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf8)" (( "(") (binary_expression "puVar30 + 0x175bf8" (identifier "puVar30") (+ "+") (number_literal "0x175bf8")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" (identifier "pcStack_10fc") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}"))) (goto_statement "goto LAB_00287858;" (goto "goto") (statement_identifier "LAB_00287858") (; ";")) (} "}"))) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1)" (identifier "iVar19") (= "=") (call_expression "(**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf4)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf4)" (( "(") (binary_expression "puVar30 + 0x175bf4" (identifier "puVar30") (+ "+") (number_literal "0x175bf4")) () ")"))))) () ")")) (argument_list "(uStack_10d4,1)" (( "(") (identifier "uStack_10d4") (, ",") (number_literal "1") () ")")))) (; ";")) (if_statement "if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" (if "if") (parenthesized_expression "(iVar19 == 0)" (( "(") (binary_expression "iVar19 == 0" (identifier "iVar19") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175634)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175634)" (* "*") (cast_expression "(code **)(puVar30 + 0x175634)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175634)" (( "(") (binary_expression "puVar30 + 0x175634" (identifier "puVar30") (+ "+") (number_literal "0x175634")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175608)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175608)" (* "*") (cast_expression "(code **)(puVar30 + 0x175608)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175608)" (( "(") (binary_expression "puVar30 + 0x175608" (identifier "puVar30") (+ "+") (number_literal "0x175608")) () ")"))))) () ")")) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (( "(") (identifier "param_2") (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x48cc")) (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x4700")) (, ",") (number_literal "0x549") (, ",") (number_literal "400") (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x46c8")) (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x6e78")) (, ",") (binary_expression "iVar20 + 0x2210" (identifier "iVar20") (+ "+") (number_literal "0x2210")) () ")"))) (; ";")) (if_statement "if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" (if "if") (parenthesized_expression "(pcStack_10fc != (char *)0x0)" (( "(") (binary_expression "pcStack_10fc != (char *)0x0" (identifier "pcStack_10fc") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175d70)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175d70)" (* "*") (cast_expression "(code **)(puVar30 + 0x175d70)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175d70)" (( "(") (binary_expression "puVar30 + 0x175d70" (identifier "puVar30") (+ "+") (number_literal "0x175d70")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf8)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf8)" (( "(") (binary_expression "puVar30 + 0x175bf8" (identifier "puVar30") (+ "+") (number_literal "0x175bf8")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" (identifier "pcStack_10fc") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}"))) (goto_statement "goto LAB_00287858;" (goto "goto") (statement_identifier "LAB_00287858") (; ";")) (} "}"))) (expression_statement "(**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);" (call_expression "(**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759b0))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1759b0)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1759b0)" (* "*") (cast_expression "(code **)(puVar30 + 0x1759b0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1759b0)" (( "(") (binary_expression "puVar30 + 0x1759b0" (identifier "puVar30") (+ "+") (number_literal "0x1759b0")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(iVar3 + 0x3348),iVar19)" (( "(") (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" (* "*") (cast_expression "(undefined4 *)(iVar3 + 0x3348)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 0x3348)" (( "(") (binary_expression "iVar3 + 0x3348" (identifier "iVar3") (+ "+") (number_literal "0x3348")) () ")")))) (, ",") (identifier "iVar19") () ")"))) (; ";")) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1)" (identifier "iVar19") (= "=") (call_expression "(**(code **)(puVar30 + 0x175bf4))(0x14000,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf4)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf4)" (( "(") (binary_expression "puVar30 + 0x175bf4" (identifier "puVar30") (+ "+") (number_literal "0x175bf4")) () ")"))))) () ")")) (argument_list "(0x14000,1)" (( "(") (number_literal "0x14000") (, ",") (number_literal "1") () ")")))) (; ";")) (if_statement "if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }" (if "if") (parenthesized_expression "(iVar19 != 0)" (( "(") (binary_expression "iVar19 != 0" (identifier "iVar19") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);" (call_expression "(**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000)" (parenthesized_expression "(**(code **)(puVar30 + 0x175dbc))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175dbc)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175dbc)" (* "*") (cast_expression "(code **)(puVar30 + 0x175dbc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175dbc)" (( "(") (binary_expression "puVar30 + 0x175dbc" (identifier "puVar30") (+ "+") (number_literal "0x175dbc")) () ")"))))) () ")")) (argument_list "(iVar19,0,0x14000)" (( "(") (identifier "iVar19") (, ",") (number_literal "0") (, ",") (number_literal "0x14000") () ")"))) (; ";")) (do_statement "do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );" (do "do") (compound_statement "{\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00286f40;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          }" ({ "{") (expression_statement "iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);" (assignment_expression "iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19)" (identifier "iVar13") (= "=") (call_expression "(**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175494))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175494)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175494)" (* "*") (cast_expression "(code **)(puVar30 + 0x175494)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175494)" (( "(") (binary_expression "puVar30 + 0x175494" (identifier "puVar30") (+ "+") (number_literal "0x175494")) () ")"))))) () ")")) (argument_list "(pcStack_10fc,0x14000,iVar19)" (( "(") (identifier "pcStack_10fc") (, ",") (number_literal "0x14000") (, ",") (identifier "iVar19") () ")")))) (; ";")) (if_statement "if (iVar13 == 0) goto LAB_00286f40;" (if "if") (parenthesized_expression "(iVar13 == 0)" (( "(") (binary_expression "iVar13 == 0" (identifier "iVar13") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00286f40;" (goto "goto") (statement_identifier "LAB_00286f40") (; ";"))) (expression_statement "iVar22 = 0;" (assignment_expression "iVar22 = 0" (identifier "iVar22") (= "=") (number_literal "0")) (; ";")) (if_statement "if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }" (if "if") (parenthesized_expression "(0 < iVar13)" (( "(") (binary_expression "0 < iVar13" (number_literal "0") (< "<") (identifier "iVar13")) () ")")) (compound_statement "{\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }" ({ "{") (do_statement "do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);" (do "do") (compound_statement "{\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              }" ({ "{") (expression_statement "iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);" (assignment_expression "iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22)" (identifier "iVar14") (= "=") (call_expression "(**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22)" (parenthesized_expression "(**(code **)(puVar30 + 0x17607c))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x17607c)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x17607c)" (* "*") (cast_expression "(code **)(puVar30 + 0x17607c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x17607c)" (( "(") (binary_expression "puVar30 + 0x17607c" (identifier "puVar30") (+ "+") (number_literal "0x17607c")) () ")"))))) () ")")) (argument_list "(iVar3,iVar13 - iVar22,iVar19 + iVar22)" (( "(") (identifier "iVar3") (, ",") (binary_expression "iVar13 - iVar22" (identifier "iVar13") (- "-") (identifier "iVar22")) (, ",") (binary_expression "iVar19 + iVar22" (identifier "iVar19") (+ "+") (identifier "iVar22")) () ")")))) (; ";")) (if_statement "if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }" (if "if") (parenthesized_expression "(iVar14 < 1)" (( "(") (binary_expression "iVar14 < 1" (identifier "iVar14") (< "<") (number_literal "1")) () ")")) (compound_statement "{\n                  if (iVar22 < iVar13) goto LAB_00286f40;\n                  break;\n                }" ({ "{") (if_statement "if (iVar22 < iVar13) goto LAB_00286f40;" (if "if") (parenthesized_expression "(iVar22 < iVar13)" (( "(") (binary_expression "iVar22 < iVar13" (identifier "iVar22") (< "<") (identifier "iVar13")) () ")")) (goto_statement "goto LAB_00286f40;" (goto "goto") (statement_identifier "LAB_00286f40") (; ";"))) (break_statement "break;" (break "break") (; ";")) (} "}"))) (expression_statement "iVar22 = iVar22 + iVar14;" (assignment_expression "iVar22 = iVar22 + iVar14" (identifier "iVar22") (= "=") (binary_expression "iVar22 + iVar14" (identifier "iVar22") (+ "+") (identifier "iVar14"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar22 < iVar13)" (( "(") (binary_expression "iVar22 < iVar13" (identifier "iVar22") (< "<") (identifier "iVar13")) () ")")) (; ";")) (} "}"))) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";")) (} "}"))) (labeled_statement "LAB_00286f50:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);" (statement_identifier "LAB_00286f50") (: ":") (expression_statement "uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3)" (identifier "uVar15") (= "=") (call_expression "(**(code **)(puVar30 + 0x1754cc))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x1754cc))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1754cc)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1754cc)" (* "*") (cast_expression "(code **)(puVar30 + 0x1754cc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1754cc)" (( "(") (binary_expression "puVar30 + 0x1754cc" (identifier "puVar30") (+ "+") (number_literal "0x1754cc")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")")))) (; ";"))) (expression_statement "(**(code **)(puVar30 + 0x175ba0))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175ba0))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ba0))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175ba0)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175ba0)" (* "*") (cast_expression "(code **)(puVar30 + 0x175ba0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175ba0)" (( "(") (binary_expression "puVar30 + 0x175ba0" (identifier "puVar30") (+ "+") (number_literal "0x175ba0")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))) (; ";")) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03)" (identifier "iVar19") (= "=") (call_expression "(**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03)" (parenthesized_expression "(**(code **)(puVar30 + 0x175dac))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175dac)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175dac)" (* "*") (cast_expression "(code **)(puVar30 + 0x175dac)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175dac)" (( "(") (binary_expression "puVar30 + 0x175dac" (identifier "puVar30") (+ "+") (number_literal "0x175dac")) () ")"))))) () ")")) (argument_list "(uVar15,extraout_v1_03)" (( "(") (identifier "uVar15") (, ",") (identifier "extraout_v1_03") () ")")))) (; ";")) (if_statement "if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" (if "if") (parenthesized_expression "(iVar19 == 0)" (( "(") (binary_expression "iVar19 == 0" (identifier "iVar19") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" ({ "{") (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (identifier "uVar15") (= "=") (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175e54)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175e54)" (* "*") (cast_expression "(code **)(puVar30 + 0x175e54)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175e54)" (( "(") (binary_expression "puVar30 + 0x175e54" (identifier "puVar30") (+ "+") (number_literal "0x175e54")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" (( "(") (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" (* "*") (cast_expression "(undefined4 *)(iVar3 + 0x3348)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 0x3348)" (( "(") (binary_expression "iVar3 + 0x3348" (identifier "iVar3") (+ "+") (number_literal "0x3348")) () ")")))) () ")")))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756a8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756a8)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756a8)" (( "(") (binary_expression "puVar30 + 0x1756a8" (identifier "puVar30") (+ "+") (number_literal "0x1756a8")) () ")"))))) () ")")) (argument_list "(uVar15)" (( "(") (identifier "uVar15") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175634)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175634)" (* "*") (cast_expression "(code **)(puVar30 + 0x175634)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175634)" (( "(") (binary_expression "puVar30 + 0x175634" (identifier "puVar30") (+ "+") (number_literal "0x175634")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175608)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175608)" (* "*") (cast_expression "(code **)(puVar30 + 0x175608)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175608)" (( "(") (binary_expression "puVar30 + 0x175608" (identifier "puVar30") (+ "+") (number_literal "0x175608")) () ")"))))) () ")")) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (( "(") (identifier "param_2") (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x48cc")) (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x4700")) (, ",") (number_literal "0x554") (, ",") (number_literal "400") (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x46c8")) (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x6e78")) (, ",") (binary_expression "iVar20 + 0x2210" (identifier "iVar20") (+ "+") (number_literal "0x2210")) () ")"))) (; ";")) (if_statement "if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" (if "if") (parenthesized_expression "(pcStack_10fc != (char *)0x0)" (( "(") (binary_expression "pcStack_10fc != (char *)0x0" (identifier "pcStack_10fc") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175d70)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175d70)" (* "*") (cast_expression "(code **)(puVar30 + 0x175d70)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175d70)" (( "(") (binary_expression "puVar30 + 0x175d70" (identifier "puVar30") (+ "+") (number_literal "0x175d70")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf8)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf8)" (( "(") (binary_expression "puVar30 + 0x175bf8" (identifier "puVar30") (+ "+") (number_literal "0x175bf8")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" (identifier "pcStack_10fc") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}"))) (goto_statement "goto LAB_00287858;" (goto "goto") (statement_identifier "LAB_00287858") (; ";")) (} "}"))) (expression_statement "(**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);" (call_expression "(**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d80))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175d80)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175d80)" (* "*") (cast_expression "(code **)(puVar30 + 0x175d80)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175d80)" (( "(") (binary_expression "puVar30 + 0x175d80" (identifier "puVar30") (+ "+") (number_literal "0x175d80")) () ")"))))) () ")")) (argument_list "(pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2)" (( "(") (identifier "pcStack_10fc") (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb4) + -0x286c" (pointer_expression "*(int *)(puVar30 + 0x174fb4)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb4)" (( "(") (binary_expression "puVar30 + 0x174fb4" (identifier "puVar30") (+ "+") (number_literal "0x174fb4")) () ")")))) (+ "+") (number_literal "-0x286c")) (, ",") (identifier "iVar19") (, ",") (identifier "param_2") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x1754e4))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x1754e4))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x1754e4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1754e4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1754e4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1754e4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1754e4)" (( "(") (binary_expression "puVar30 + 0x1754e4" (identifier "puVar30") (+ "+") (number_literal "0x1754e4")) () ")"))))) () ")")) (argument_list "(iVar19)" (( "(") (identifier "iVar19") () ")"))) (; ";")) (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (identifier "uVar15") (= "=") (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175e54)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175e54)" (* "*") (cast_expression "(code **)(puVar30 + 0x175e54)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175e54)" (( "(") (binary_expression "puVar30 + 0x175e54" (identifier "puVar30") (+ "+") (number_literal "0x175e54")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" (( "(") (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" (* "*") (cast_expression "(undefined4 *)(iVar3 + 0x3348)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 0x3348)" (( "(") (binary_expression "iVar3 + 0x3348" (identifier "iVar3") (+ "+") (number_literal "0x3348")) () ")")))) () ")")))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756a8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756a8)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756a8)" (( "(") (binary_expression "puVar30 + 0x1756a8" (identifier "puVar30") (+ "+") (number_literal "0x1756a8")) () ")"))))) () ")")) (argument_list "(uVar15)" (( "(") (identifier "uVar15") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175634)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175634)" (* "*") (cast_expression "(code **)(puVar30 + 0x175634)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175634)" (( "(") (binary_expression "puVar30 + 0x175634" (identifier "puVar30") (+ "+") (number_literal "0x175634")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))) (; ";")) (expression_statement "iVar19 = *(int *)(puVar30 + 0x174fb0);" (assignment_expression "iVar19 = *(int *)(puVar30 + 0x174fb0)" (identifier "iVar19") (= "=") (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }" (else "else") (compound_statement "{\n        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);\n        iVar19 = *(int *)(puVar30 + 0x174fb0);\n        if (iVar3 == 0) goto LAB_00284ae8;\n      }" ({ "{") (expression_statement "iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8)" (parenthesized_expression "(**(code **)(puVar30 + 0x1757f8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1757f8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1757f8)" (* "*") (cast_expression "(code **)(puVar30 + 0x1757f8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1757f8)" (( "(") (binary_expression "puVar30 + 0x1757f8" (identifier "puVar30") (+ "+") (number_literal "0x1757f8")) () ")"))))) () ")")) (argument_list "(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8)" (( "(") (identifier "iVar2") (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x78d8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x78d8")) () ")")))) (; ";")) (expression_statement "iVar19 = *(int *)(puVar30 + 0x174fb0);" (assignment_expression "iVar19 = *(int *)(puVar30 + 0x174fb0)" (identifier "iVar19") (= "=") (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")"))))) (; ";")) (if_statement "if (iVar3 == 0) goto LAB_00284ae8;" (if "if") (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00284ae8;" (goto "goto") (statement_identifier "LAB_00284ae8") (; ";"))) (} "}")))) (expression_statement "iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0)" (parenthesized_expression "(**(code **)(puVar30 + 0x1757f8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1757f8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1757f8)" (* "*") (cast_expression "(code **)(puVar30 + 0x1757f8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1757f8)" (( "(") (binary_expression "puVar30 + 0x1757f8" (identifier "puVar30") (+ "+") (number_literal "0x1757f8")) () ")"))))) () ")")) (argument_list "(iVar2,iVar19 + 0x78e0)" (( "(") (identifier "iVar2") (, ",") (binary_expression "iVar19 + 0x78e0" (identifier "iVar19") (+ "+") (number_literal "0x78e0")) () ")")))) (; ";")) (if_statement "if (iVar3 == 0) {\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }\n      else {\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }" (if "if") (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);\n        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }\nLAB_00287424:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);\n        (**(code **)(puVar30 + 0x175ba0))(iVar3);\n        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);\n        if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar19);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar3);\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }" ({ "{") (expression_statement "iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(puVar30 + 0x175cf4))(0,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175cf4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175cf4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175cf4)" (* "*") (cast_expression "(code **)(puVar30 + 0x175cf4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175cf4)" (( "(") (binary_expression "puVar30 + 0x175cf4" (identifier "puVar30") (+ "+") (number_literal "0x175cf4")) () ")"))))) () ")")) (argument_list "(0,param_2)" (( "(") (number_literal "0") (, ",") (identifier "param_2") () ")")))) (; ";")) (if_statement "if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" (if "if") (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175608)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175608)" (* "*") (cast_expression "(code **)(puVar30 + 0x175608)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175608)" (( "(") (binary_expression "puVar30 + 0x175608" (identifier "puVar30") (+ "+") (number_literal "0x175608")) () ")"))))) () ")")) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (( "(") (identifier "param_2") (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x48cc")) (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x4700")) (, ",") (number_literal "0x560") (, ",") (number_literal "400") (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x46c8")) (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x6e78")) (, ",") (binary_expression "iVar20 + 0x2210" (identifier "iVar20") (+ "+") (number_literal "0x2210")) () ")"))) (; ";")) (if_statement "if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" (if "if") (parenthesized_expression "(pcStack_10fc != (char *)0x0)" (( "(") (binary_expression "pcStack_10fc != (char *)0x0" (identifier "pcStack_10fc") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175d70)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175d70)" (* "*") (cast_expression "(code **)(puVar30 + 0x175d70)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175d70)" (( "(") (binary_expression "puVar30 + 0x175d70" (identifier "puVar30") (+ "+") (number_literal "0x175d70")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf8)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf8)" (( "(") (binary_expression "puVar30 + 0x175bf8" (identifier "puVar30") (+ "+") (number_literal "0x175bf8")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" (identifier "pcStack_10fc") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}"))) (goto_statement "goto LAB_00287858;" (goto "goto") (statement_identifier "LAB_00287858") (; ";")) (} "}"))) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1)" (identifier "iVar19") (= "=") (call_expression "(**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf4)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf4)" (( "(") (binary_expression "puVar30 + 0x175bf4" (identifier "puVar30") (+ "+") (number_literal "0x175bf4")) () ")"))))) () ")")) (argument_list "(uStack_10d4,1)" (( "(") (identifier "uStack_10d4") (, ",") (number_literal "1") () ")")))) (; ";")) (if_statement "if (iVar19 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" (if "if") (parenthesized_expression "(iVar19 == 0)" (( "(") (binary_expression "iVar19 == 0" (identifier "iVar19") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175634)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175634)" (* "*") (cast_expression "(code **)(puVar30 + 0x175634)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175634)" (( "(") (binary_expression "puVar30 + 0x175634" (identifier "puVar30") (+ "+") (number_literal "0x175634")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175608)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175608)" (* "*") (cast_expression "(code **)(puVar30 + 0x175608)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175608)" (( "(") (binary_expression "puVar30 + 0x175608" (identifier "puVar30") (+ "+") (number_literal "0x175608")) () ")"))))) () ")")) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (( "(") (identifier "param_2") (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x48cc")) (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x4700")) (, ",") (number_literal "0x565") (, ",") (number_literal "400") (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x46c8")) (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x6e78")) (, ",") (binary_expression "iVar20 + 0x2210" (identifier "iVar20") (+ "+") (number_literal "0x2210")) () ")"))) (; ";")) (if_statement "if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" (if "if") (parenthesized_expression "(pcStack_10fc != (char *)0x0)" (( "(") (binary_expression "pcStack_10fc != (char *)0x0" (identifier "pcStack_10fc") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175d70)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175d70)" (* "*") (cast_expression "(code **)(puVar30 + 0x175d70)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175d70)" (( "(") (binary_expression "puVar30 + 0x175d70" (identifier "puVar30") (+ "+") (number_literal "0x175d70")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf8)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf8)" (( "(") (binary_expression "puVar30 + 0x175bf8" (identifier "puVar30") (+ "+") (number_literal "0x175bf8")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" (identifier "pcStack_10fc") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}"))) (goto_statement "goto LAB_00287858;" (goto "goto") (statement_identifier "LAB_00287858") (; ";")) (} "}"))) (expression_statement "(**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);" (call_expression "(**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759b0))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1759b0)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1759b0)" (* "*") (cast_expression "(code **)(puVar30 + 0x1759b0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1759b0)" (( "(") (binary_expression "puVar30 + 0x1759b0" (identifier "puVar30") (+ "+") (number_literal "0x1759b0")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(iVar3 + 0x3348),iVar19)" (( "(") (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" (* "*") (cast_expression "(undefined4 *)(iVar3 + 0x3348)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 0x3348)" (( "(") (binary_expression "iVar3 + 0x3348" (identifier "iVar3") (+ "+") (number_literal "0x3348")) () ")")))) (, ",") (identifier "iVar19") () ")"))) (; ";")) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1)" (identifier "iVar19") (= "=") (call_expression "(**(code **)(puVar30 + 0x175bf4))(0x14000,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf4)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf4)" (( "(") (binary_expression "puVar30 + 0x175bf4" (identifier "puVar30") (+ "+") (number_literal "0x175bf4")) () ")"))))) () ")")) (argument_list "(0x14000,1)" (( "(") (number_literal "0x14000") (, ",") (number_literal "1") () ")")))) (; ";")) (if_statement "if (iVar19 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }" (if "if") (parenthesized_expression "(iVar19 != 0)" (( "(") (binary_expression "iVar19 != 0" (identifier "iVar19") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);\n          do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );\n        }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);" (call_expression "(**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000)" (parenthesized_expression "(**(code **)(puVar30 + 0x175dbc))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175dbc)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175dbc)" (* "*") (cast_expression "(code **)(puVar30 + 0x175dbc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175dbc)" (( "(") (binary_expression "puVar30 + 0x175dbc" (identifier "puVar30") (+ "+") (number_literal "0x175dbc")) () ")"))))) () ")")) (argument_list "(iVar19,0,0x14000)" (( "(") (identifier "iVar19") (, ",") (number_literal "0") (, ",") (number_literal "0x14000") () ")"))) (; ";")) (do_statement "do {\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          } while( true );" (do "do") (compound_statement "{\n            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);\n            if (iVar13 == 0) goto LAB_00287414;\n            iVar22 = 0;\n            if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }\n          }" ({ "{") (expression_statement "iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);" (assignment_expression "iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19)" (identifier "iVar13") (= "=") (call_expression "(**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x175494))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175494)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175494)" (* "*") (cast_expression "(code **)(puVar30 + 0x175494)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175494)" (( "(") (binary_expression "puVar30 + 0x175494" (identifier "puVar30") (+ "+") (number_literal "0x175494")) () ")"))))) () ")")) (argument_list "(pcStack_10fc,0x14000,iVar19)" (( "(") (identifier "pcStack_10fc") (, ",") (number_literal "0x14000") (, ",") (identifier "iVar19") () ")")))) (; ";")) (if_statement "if (iVar13 == 0) goto LAB_00287414;" (if "if") (parenthesized_expression "(iVar13 == 0)" (( "(") (binary_expression "iVar13 == 0" (identifier "iVar13") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00287414;" (goto "goto") (statement_identifier "LAB_00287414") (; ";"))) (expression_statement "iVar22 = 0;" (assignment_expression "iVar22 = 0" (identifier "iVar22") (= "=") (number_literal "0")) (; ";")) (if_statement "if (0 < iVar13) {\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }" (if "if") (parenthesized_expression "(0 < iVar13)" (( "(") (binary_expression "0 < iVar13" (number_literal "0") (< "<") (identifier "iVar13")) () ")")) (compound_statement "{\n              do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);\n            }" ({ "{") (do_statement "do {\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              } while (iVar22 < iVar13);" (do "do") (compound_statement "{\n                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);\n                if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }\n                iVar22 = iVar22 + iVar14;\n              }" ({ "{") (expression_statement "iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);" (assignment_expression "iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22)" (identifier "iVar14") (= "=") (call_expression "(**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22)" (parenthesized_expression "(**(code **)(puVar30 + 0x17607c))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x17607c)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x17607c)" (* "*") (cast_expression "(code **)(puVar30 + 0x17607c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x17607c)" (( "(") (binary_expression "puVar30 + 0x17607c" (identifier "puVar30") (+ "+") (number_literal "0x17607c")) () ")"))))) () ")")) (argument_list "(iVar3,iVar13 - iVar22,iVar19 + iVar22)" (( "(") (identifier "iVar3") (, ",") (binary_expression "iVar13 - iVar22" (identifier "iVar13") (- "-") (identifier "iVar22")) (, ",") (binary_expression "iVar19 + iVar22" (identifier "iVar19") (+ "+") (identifier "iVar22")) () ")")))) (; ";")) (if_statement "if (iVar14 < 1) {\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }" (if "if") (parenthesized_expression "(iVar14 < 1)" (( "(") (binary_expression "iVar14 < 1" (identifier "iVar14") (< "<") (number_literal "1")) () ")")) (compound_statement "{\n                  if (iVar22 < iVar13) goto LAB_00287414;\n                  break;\n                }" ({ "{") (if_statement "if (iVar22 < iVar13) goto LAB_00287414;" (if "if") (parenthesized_expression "(iVar22 < iVar13)" (( "(") (binary_expression "iVar22 < iVar13" (identifier "iVar22") (< "<") (identifier "iVar13")) () ")")) (goto_statement "goto LAB_00287414;" (goto "goto") (statement_identifier "LAB_00287414") (; ";"))) (break_statement "break;" (break "break") (; ";")) (} "}"))) (expression_statement "iVar22 = iVar22 + iVar14;" (assignment_expression "iVar22 = iVar22 + iVar14" (identifier "iVar22") (= "=") (binary_expression "iVar22 + iVar14" (identifier "iVar22") (+ "+") (identifier "iVar14"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar22 < iVar13)" (( "(") (binary_expression "iVar22 < iVar13" (identifier "iVar22") (< "<") (identifier "iVar13")) () ")")) (; ";")) (} "}"))) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";")) (} "}"))) (labeled_statement "LAB_00287424:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);" (statement_identifier "LAB_00287424") (: ":") (expression_statement "uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3)" (identifier "uVar15") (= "=") (call_expression "(**(code **)(puVar30 + 0x1754cc))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x1754cc))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1754cc)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1754cc)" (* "*") (cast_expression "(code **)(puVar30 + 0x1754cc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1754cc)" (( "(") (binary_expression "puVar30 + 0x1754cc" (identifier "puVar30") (+ "+") (number_literal "0x1754cc")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")")))) (; ";"))) (expression_statement "(**(code **)(puVar30 + 0x175ba0))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175ba0))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ba0))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175ba0)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175ba0)" (* "*") (cast_expression "(code **)(puVar30 + 0x175ba0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175ba0)" (( "(") (binary_expression "puVar30 + 0x175ba0" (identifier "puVar30") (+ "+") (number_literal "0x175ba0")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))) (; ";")) (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04)" (identifier "iVar19") (= "=") (call_expression "(**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04)" (parenthesized_expression "(**(code **)(puVar30 + 0x175dac))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175dac)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175dac)" (* "*") (cast_expression "(code **)(puVar30 + 0x175dac)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175dac)" (( "(") (binary_expression "puVar30 + 0x175dac" (identifier "puVar30") (+ "+") (number_literal "0x175dac")) () ")"))))) () ")")) (argument_list "(uVar15,extraout_v1_04)" (( "(") (identifier "uVar15") (, ",") (identifier "extraout_v1_04") () ")")))) (; ";")) (if_statement "if (iVar19 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" (if "if") (parenthesized_expression "(iVar19 == 0)" (( "(") (binary_expression "iVar19 == 0" (identifier "iVar19") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar3);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" ({ "{") (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (identifier "uVar15") (= "=") (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175e54)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175e54)" (* "*") (cast_expression "(code **)(puVar30 + 0x175e54)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175e54)" (( "(") (binary_expression "puVar30 + 0x175e54" (identifier "puVar30") (+ "+") (number_literal "0x175e54")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" (( "(") (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" (* "*") (cast_expression "(undefined4 *)(iVar3 + 0x3348)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 0x3348)" (( "(") (binary_expression "iVar3 + 0x3348" (identifier "iVar3") (+ "+") (number_literal "0x3348")) () ")")))) () ")")))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756a8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756a8)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756a8)" (( "(") (binary_expression "puVar30 + 0x1756a8" (identifier "puVar30") (+ "+") (number_literal "0x1756a8")) () ")"))))) () ")")) (argument_list "(uVar15)" (( "(") (identifier "uVar15") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175634)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175634)" (* "*") (cast_expression "(code **)(puVar30 + 0x175634)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175634)" (( "(") (binary_expression "puVar30 + 0x175634" (identifier "puVar30") (+ "+") (number_literal "0x175634")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175608)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175608)" (* "*") (cast_expression "(code **)(puVar30 + 0x175608)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175608)" (( "(") (binary_expression "puVar30 + 0x175608" (identifier "puVar30") (+ "+") (number_literal "0x175608")) () ")"))))) () ")")) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (( "(") (identifier "param_2") (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x48cc")) (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x4700")) (, ",") (number_literal "0x570") (, ",") (number_literal "400") (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x46c8")) (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x6e78")) (, ",") (binary_expression "iVar20 + 0x2210" (identifier "iVar20") (+ "+") (number_literal "0x2210")) () ")"))) (; ";")) (if_statement "if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" (if "if") (parenthesized_expression "(pcStack_10fc != (char *)0x0)" (( "(") (binary_expression "pcStack_10fc != (char *)0x0" (identifier "pcStack_10fc") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175d70)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175d70)" (* "*") (cast_expression "(code **)(puVar30 + 0x175d70)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175d70)" (( "(") (binary_expression "puVar30 + 0x175d70" (identifier "puVar30") (+ "+") (number_literal "0x175d70")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf8)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf8)" (( "(") (binary_expression "puVar30 + 0x175bf8" (identifier "puVar30") (+ "+") (number_literal "0x175bf8")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" (identifier "pcStack_10fc") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}"))) (goto_statement "goto LAB_00287858;" (goto "goto") (statement_identifier "LAB_00287858") (; ";")) (} "}"))) (expression_statement "(**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);" (call_expression "(**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d80))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175d80)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175d80)" (* "*") (cast_expression "(code **)(puVar30 + 0x175d80)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175d80)" (( "(") (binary_expression "puVar30 + 0x175d80" (identifier "puVar30") (+ "+") (number_literal "0x175d80")) () ")"))))) () ")")) (argument_list "(pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2)" (( "(") (identifier "pcStack_10fc") (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb4) + 0x17f0" (pointer_expression "*(int *)(puVar30 + 0x174fb4)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb4)" (( "(") (binary_expression "puVar30 + 0x174fb4" (identifier "puVar30") (+ "+") (number_literal "0x174fb4")) () ")")))) (+ "+") (number_literal "0x17f0")) (, ",") (identifier "iVar19") (, ",") (identifier "param_2") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x1754e4))(iVar19);" (call_expression "(**(code **)(puVar30 + 0x1754e4))(iVar19)" (parenthesized_expression "(**(code **)(puVar30 + 0x1754e4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1754e4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1754e4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1754e4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1754e4)" (( "(") (binary_expression "puVar30 + 0x1754e4" (identifier "puVar30") (+ "+") (number_literal "0x1754e4")) () ")"))))) () ")")) (argument_list "(iVar19)" (( "(") (identifier "iVar19") () ")"))) (; ";")) (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (identifier "uVar15") (= "=") (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175e54)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175e54)" (* "*") (cast_expression "(code **)(puVar30 + 0x175e54)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175e54)" (( "(") (binary_expression "puVar30 + 0x175e54" (identifier "puVar30") (+ "+") (number_literal "0x175e54")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(iVar3 + 0x3348))" (( "(") (pointer_expression "*(undefined4 *)(iVar3 + 0x3348)" (* "*") (cast_expression "(undefined4 *)(iVar3 + 0x3348)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 0x3348)" (( "(") (binary_expression "iVar3 + 0x3348" (identifier "iVar3") (+ "+") (number_literal "0x3348")) () ")")))) () ")")))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756a8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756a8)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756a8)" (( "(") (binary_expression "puVar30 + 0x1756a8" (identifier "puVar30") (+ "+") (number_literal "0x1756a8")) () ")"))))) () ")")) (argument_list "(uVar15)" (( "(") (identifier "uVar15") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175634)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175634)" (* "*") (cast_expression "(code **)(puVar30 + 0x175634)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175634)" (( "(") (binary_expression "puVar30 + 0x175634" (identifier "puVar30") (+ "+") (number_literal "0x175634")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))) (; ";")) (expression_statement "iVar3 = *(int *)(puVar30 + 0x174fb0);" (assignment_expression "iVar3 = *(int *)(puVar30 + 0x174fb0)" (identifier "iVar3") (= "=") (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }" (else "else") (compound_statement "{\n        iVar3 = *(int *)(puVar30 + 0x174fb0);\n      }" ({ "{") (expression_statement "iVar3 = *(int *)(puVar30 + 0x174fb0);" (assignment_expression "iVar3 = *(int *)(puVar30 + 0x174fb0)" (identifier "iVar3") (= "=") (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")"))))) (; ";")) (} "}")))) (expression_statement "iVar2 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4);" (assignment_expression "iVar2 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4)" (parenthesized_expression "(**(code **)(puVar30 + 0x1757f8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1757f8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1757f8)" (* "*") (cast_expression "(code **)(puVar30 + 0x1757f8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1757f8)" (( "(") (binary_expression "puVar30 + 0x1757f8" (identifier "puVar30") (+ "+") (number_literal "0x1757f8")) () ")"))))) () ")")) (argument_list "(iVar2,iVar3 + 0x78d4)" (( "(") (identifier "iVar2") (, ",") (binary_expression "iVar3 + 0x78d4" (identifier "iVar3") (+ "+") (number_literal "0x78d4")) () ")")))) (; ";")) (if_statement "if (iVar2 == 0) {\n        iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar2 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);\n        (**(code **)(puVar30 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar2);\n      }" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);\n        if (iVar2 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);\n        if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);\n        iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);\n        if (iVar3 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }\nLAB_00287768:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);\n        (**(code **)(puVar30 + 0x175ba0))(iVar2);\n        iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);\n        if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }\n        (**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);\n        (**(code **)(puVar30 + 0x1754e4))(iVar3);\n        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n        (**(code **)(puVar30 + 0x1756a8))(uVar15);\n        (**(code **)(puVar30 + 0x175634))(iVar2);\n      }" ({ "{") (expression_statement "iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);" (assignment_expression "iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(puVar30 + 0x175cf4))(0,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175cf4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175cf4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175cf4)" (* "*") (cast_expression "(code **)(puVar30 + 0x175cf4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175cf4)" (( "(") (binary_expression "puVar30 + 0x175cf4" (identifier "puVar30") (+ "+") (number_literal "0x175cf4")) () ")"))))) () ")")) (argument_list "(0,param_2)" (( "(") (number_literal "0") (, ",") (identifier "param_2") () ")")))) (; ";")) (if_statement "if (iVar2 == 0) {\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175608)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175608)" (* "*") (cast_expression "(code **)(puVar30 + 0x175608)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175608)" (( "(") (binary_expression "puVar30 + 0x175608" (identifier "puVar30") (+ "+") (number_literal "0x175608")) () ")"))))) () ")")) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (( "(") (identifier "param_2") (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x48cc")) (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x4700")) (, ",") (number_literal "0x57c") (, ",") (number_literal "400") (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x46c8")) (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x6e78")) (, ",") (binary_expression "iVar20 + 0x2210" (identifier "iVar20") (+ "+") (number_literal "0x2210")) () ")"))) (; ";")) (if_statement "if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" (if "if") (parenthesized_expression "(pcStack_10fc != (char *)0x0)" (( "(") (binary_expression "pcStack_10fc != (char *)0x0" (identifier "pcStack_10fc") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175d70)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175d70)" (* "*") (cast_expression "(code **)(puVar30 + 0x175d70)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175d70)" (( "(") (binary_expression "puVar30 + 0x175d70" (identifier "puVar30") (+ "+") (number_literal "0x175d70")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf8)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf8)" (( "(") (binary_expression "puVar30 + 0x175bf8" (identifier "puVar30") (+ "+") (number_literal "0x175bf8")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" (identifier "pcStack_10fc") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}"))) (goto_statement "goto LAB_00287858;" (goto "goto") (statement_identifier "LAB_00287858") (; ";")) (} "}"))) (expression_statement "iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf4)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf4)" (( "(") (binary_expression "puVar30 + 0x175bf4" (identifier "puVar30") (+ "+") (number_literal "0x175bf4")) () ")"))))) () ")")) (argument_list "(uStack_10d4,1)" (( "(") (identifier "uStack_10d4") (, ",") (number_literal "1") () ")")))) (; ";")) (if_statement "if (iVar3 == 0) {\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" (if "if") (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar2);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175634)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175634)" (* "*") (cast_expression "(code **)(puVar30 + 0x175634)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175634)" (( "(") (binary_expression "puVar30 + 0x175634" (identifier "puVar30") (+ "+") (number_literal "0x175634")) () ")"))))) () ")")) (argument_list "(iVar2)" (( "(") (identifier "iVar2") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175608)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175608)" (* "*") (cast_expression "(code **)(puVar30 + 0x175608)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175608)" (( "(") (binary_expression "puVar30 + 0x175608" (identifier "puVar30") (+ "+") (number_literal "0x175608")) () ")"))))) () ")")) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (( "(") (identifier "param_2") (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x48cc")) (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x4700")) (, ",") (number_literal "0x581") (, ",") (number_literal "400") (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x46c8")) (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x6e78")) (, ",") (binary_expression "iVar20 + 0x2210" (identifier "iVar20") (+ "+") (number_literal "0x2210")) () ")"))) (; ";")) (if_statement "if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" (if "if") (parenthesized_expression "(pcStack_10fc != (char *)0x0)" (( "(") (binary_expression "pcStack_10fc != (char *)0x0" (identifier "pcStack_10fc") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175d70)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175d70)" (* "*") (cast_expression "(code **)(puVar30 + 0x175d70)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175d70)" (( "(") (binary_expression "puVar30 + 0x175d70" (identifier "puVar30") (+ "+") (number_literal "0x175d70")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf8)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf8)" (( "(") (binary_expression "puVar30 + 0x175bf8" (identifier "puVar30") (+ "+") (number_literal "0x175bf8")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" (identifier "pcStack_10fc") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}"))) (goto_statement "goto LAB_00287858;" (goto "goto") (statement_identifier "LAB_00287858") (; ";")) (} "}"))) (expression_statement "(**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);" (call_expression "(**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x1759b0))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1759b0)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1759b0)" (* "*") (cast_expression "(code **)(puVar30 + 0x1759b0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1759b0)" (( "(") (binary_expression "puVar30 + 0x1759b0" (identifier "puVar30") (+ "+") (number_literal "0x1759b0")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(iVar2 + 0x3348),iVar3)" (( "(") (pointer_expression "*(undefined4 *)(iVar2 + 0x3348)" (* "*") (cast_expression "(undefined4 *)(iVar2 + 0x3348)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x3348)" (( "(") (binary_expression "iVar2 + 0x3348" (identifier "iVar2") (+ "+") (number_literal "0x3348")) () ")")))) (, ",") (identifier "iVar3") () ")"))) (; ";")) (expression_statement "iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(puVar30 + 0x175bf4))(0x14000,1)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf4)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf4)" (( "(") (binary_expression "puVar30 + 0x175bf4" (identifier "puVar30") (+ "+") (number_literal "0x175bf4")) () ")"))))) () ")")) (argument_list "(0x14000,1)" (( "(") (number_literal "0x14000") (, ",") (number_literal "1") () ")")))) (; ";")) (if_statement "if (iVar3 != 0) {\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }" (if "if") (parenthesized_expression "(iVar3 != 0)" (( "(") (binary_expression "iVar3 != 0" (identifier "iVar3") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);\n          do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );\n        }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);" (call_expression "(**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000)" (parenthesized_expression "(**(code **)(puVar30 + 0x175dbc))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175dbc)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175dbc)" (* "*") (cast_expression "(code **)(puVar30 + 0x175dbc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175dbc)" (( "(") (binary_expression "puVar30 + 0x175dbc" (identifier "puVar30") (+ "+") (number_literal "0x175dbc")) () ")"))))) () ")")) (argument_list "(iVar3,0,0x14000)" (( "(") (identifier "iVar3") (, ",") (number_literal "0") (, ",") (number_literal "0x14000") () ")"))) (; ";")) (do_statement "do {\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          } while( true );" (do "do") (compound_statement "{\n            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);\n            if (iVar19 == 0) goto LAB_00287758;\n            iVar13 = 0;\n            if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }\n          }" ({ "{") (expression_statement "iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);" (assignment_expression "iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3)" (identifier "iVar19") (= "=") (call_expression "(**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x175494))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175494)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175494)" (* "*") (cast_expression "(code **)(puVar30 + 0x175494)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175494)" (( "(") (binary_expression "puVar30 + 0x175494" (identifier "puVar30") (+ "+") (number_literal "0x175494")) () ")"))))) () ")")) (argument_list "(pcStack_10fc,0x14000,iVar3)" (( "(") (identifier "pcStack_10fc") (, ",") (number_literal "0x14000") (, ",") (identifier "iVar3") () ")")))) (; ";")) (if_statement "if (iVar19 == 0) goto LAB_00287758;" (if "if") (parenthesized_expression "(iVar19 == 0)" (( "(") (binary_expression "iVar19 == 0" (identifier "iVar19") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00287758;" (goto "goto") (statement_identifier "LAB_00287758") (; ";"))) (expression_statement "iVar13 = 0;" (assignment_expression "iVar13 = 0" (identifier "iVar13") (= "=") (number_literal "0")) (; ";")) (if_statement "if (0 < iVar19) {\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }" (if "if") (parenthesized_expression "(0 < iVar19)" (( "(") (binary_expression "0 < iVar19" (number_literal "0") (< "<") (identifier "iVar19")) () ")")) (compound_statement "{\n              do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);\n            }" ({ "{") (do_statement "do {\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              } while (iVar13 < iVar19);" (do "do") (compound_statement "{\n                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);\n                if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }\n                iVar13 = iVar13 + iVar22;\n              }" ({ "{") (expression_statement "iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);" (assignment_expression "iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13)" (identifier "iVar22") (= "=") (call_expression "(**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13)" (parenthesized_expression "(**(code **)(puVar30 + 0x17607c))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x17607c)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x17607c)" (* "*") (cast_expression "(code **)(puVar30 + 0x17607c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x17607c)" (( "(") (binary_expression "puVar30 + 0x17607c" (identifier "puVar30") (+ "+") (number_literal "0x17607c")) () ")"))))) () ")")) (argument_list "(iVar2,iVar19 - iVar13,iVar3 + iVar13)" (( "(") (identifier "iVar2") (, ",") (binary_expression "iVar19 - iVar13" (identifier "iVar19") (- "-") (identifier "iVar13")) (, ",") (binary_expression "iVar3 + iVar13" (identifier "iVar3") (+ "+") (identifier "iVar13")) () ")")))) (; ";")) (if_statement "if (iVar22 < 1) {\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }" (if "if") (parenthesized_expression "(iVar22 < 1)" (( "(") (binary_expression "iVar22 < 1" (identifier "iVar22") (< "<") (number_literal "1")) () ")")) (compound_statement "{\n                  if (iVar13 < iVar19) goto LAB_00287758;\n                  break;\n                }" ({ "{") (if_statement "if (iVar13 < iVar19) goto LAB_00287758;" (if "if") (parenthesized_expression "(iVar13 < iVar19)" (( "(") (binary_expression "iVar13 < iVar19" (identifier "iVar13") (< "<") (identifier "iVar19")) () ")")) (goto_statement "goto LAB_00287758;" (goto "goto") (statement_identifier "LAB_00287758") (; ";"))) (break_statement "break;" (break "break") (; ";")) (} "}"))) (expression_statement "iVar13 = iVar13 + iVar22;" (assignment_expression "iVar13 = iVar13 + iVar22" (identifier "iVar13") (= "=") (binary_expression "iVar13 + iVar22" (identifier "iVar13") (+ "+") (identifier "iVar22"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar13 < iVar19)" (( "(") (binary_expression "iVar13 < iVar19" (identifier "iVar13") (< "<") (identifier "iVar19")) () ")")) (; ";")) (} "}"))) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";")) (} "}"))) (labeled_statement "LAB_00287768:\n        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);" (statement_identifier "LAB_00287768") (: ":") (expression_statement "uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2)" (identifier "uVar15") (= "=") (call_expression "(**(code **)(puVar30 + 0x1754cc))(iVar2)" (parenthesized_expression "(**(code **)(puVar30 + 0x1754cc))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1754cc)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1754cc)" (* "*") (cast_expression "(code **)(puVar30 + 0x1754cc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1754cc)" (( "(") (binary_expression "puVar30 + 0x1754cc" (identifier "puVar30") (+ "+") (number_literal "0x1754cc")) () ")"))))) () ")")) (argument_list "(iVar2)" (( "(") (identifier "iVar2") () ")")))) (; ";"))) (expression_statement "(**(code **)(puVar30 + 0x175ba0))(iVar2);" (call_expression "(**(code **)(puVar30 + 0x175ba0))(iVar2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175ba0))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175ba0)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175ba0)" (* "*") (cast_expression "(code **)(puVar30 + 0x175ba0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175ba0)" (( "(") (binary_expression "puVar30 + 0x175ba0" (identifier "puVar30") (+ "+") (number_literal "0x175ba0")) () ")"))))) () ")")) (argument_list "(iVar2)" (( "(") (identifier "iVar2") () ")"))) (; ";")) (expression_statement "iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);" (assignment_expression "iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05)" (parenthesized_expression "(**(code **)(puVar30 + 0x175dac))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175dac)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175dac)" (* "*") (cast_expression "(code **)(puVar30 + 0x175dac)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175dac)" (( "(") (binary_expression "puVar30 + 0x175dac" (identifier "puVar30") (+ "+") (number_literal "0x175dac")) () ")"))))) () ")")) (argument_list "(uVar15,extraout_v1_05)" (( "(") (identifier "uVar15") (, ",") (identifier "extraout_v1_05") () ")")))) (; ";")) (if_statement "if (iVar3 == 0) {\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" (if "if") (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));\n          (**(code **)(puVar30 + 0x1756a8))(uVar15);\n          (**(code **)(puVar30 + 0x175634))(iVar2);\n          (**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);\n          if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }\n          goto LAB_00287858;\n        }" ({ "{") (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348))" (identifier "uVar15") (= "=") (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175e54)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175e54)" (* "*") (cast_expression "(code **)(puVar30 + 0x175e54)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175e54)" (( "(") (binary_expression "puVar30 + 0x175e54" (identifier "puVar30") (+ "+") (number_literal "0x175e54")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(iVar2 + 0x3348))" (( "(") (pointer_expression "*(undefined4 *)(iVar2 + 0x3348)" (* "*") (cast_expression "(undefined4 *)(iVar2 + 0x3348)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x3348)" (( "(") (binary_expression "iVar2 + 0x3348" (identifier "iVar2") (+ "+") (number_literal "0x3348")) () ")")))) () ")")))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756a8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756a8)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756a8)" (( "(") (binary_expression "puVar30 + 0x1756a8" (identifier "puVar30") (+ "+") (number_literal "0x1756a8")) () ")"))))) () ")")) (argument_list "(uVar15)" (( "(") (identifier "uVar15") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar2);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175634)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175634)" (* "*") (cast_expression "(code **)(puVar30 + 0x175634)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175634)" (( "(") (binary_expression "puVar30 + 0x175634" (identifier "puVar30") (+ "+") (number_literal "0x175634")) () ")"))))) () ")")) (argument_list "(iVar2)" (( "(") (identifier "iVar2") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175608)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175608)" (* "*") (cast_expression "(code **)(puVar30 + 0x175608)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175608)" (( "(") (binary_expression "puVar30 + 0x175608" (identifier "puVar30") (+ "+") (number_literal "0x175608")) () ")"))))) () ")")) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,\n                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,\n                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,\n                     iVar20 + 0x2210)" (( "(") (identifier "param_2") (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x48cc")) (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x4700")) (, ",") (number_literal "0x58c") (, ",") (number_literal "400") (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x46c8")) (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x6e78")) (, ",") (binary_expression "iVar20 + 0x2210" (identifier "iVar20") (+ "+") (number_literal "0x2210")) () ")"))) (; ";")) (if_statement "if (pcStack_10fc != (char *)0x0) {\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" (if "if") (parenthesized_expression "(pcStack_10fc != (char *)0x0)" (( "(") (binary_expression "pcStack_10fc != (char *)0x0" (identifier "pcStack_10fc") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n            pcStack_10fc = (char *)0x0;\n          }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175d70)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175d70)" (* "*") (cast_expression "(code **)(puVar30 + 0x175d70)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175d70)" (( "(") (binary_expression "puVar30 + 0x175d70" (identifier "puVar30") (+ "+") (number_literal "0x175d70")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf8)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf8)" (( "(") (binary_expression "puVar30 + 0x175bf8" (identifier "puVar30") (+ "+") (number_literal "0x175bf8")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" (identifier "pcStack_10fc") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}"))) (goto_statement "goto LAB_00287858;" (goto "goto") (statement_identifier "LAB_00287858") (; ";")) (} "}"))) (expression_statement "(**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);" (call_expression "(**(code **)(puVar30 + 0x175d80))\n                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d80))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175d80)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175d80)" (* "*") (cast_expression "(code **)(puVar30 + 0x175d80)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175d80)" (( "(") (binary_expression "puVar30 + 0x175d80" (identifier "puVar30") (+ "+") (number_literal "0x175d80")) () ")"))))) () ")")) (argument_list "(pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2)" (( "(") (identifier "pcStack_10fc") (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb8) + 0x76a8" (pointer_expression "*(int *)(puVar30 + 0x174fb8)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb8)" (( "(") (binary_expression "puVar30 + 0x174fb8" (identifier "puVar30") (+ "+") (number_literal "0x174fb8")) () ")")))) (+ "+") (number_literal "0x76a8")) (, ",") (identifier "iVar3") (, ",") (identifier "param_2") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x1754e4))(iVar3);" (call_expression "(**(code **)(puVar30 + 0x1754e4))(iVar3)" (parenthesized_expression "(**(code **)(puVar30 + 0x1754e4))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1754e4)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1754e4)" (* "*") (cast_expression "(code **)(puVar30 + 0x1754e4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1754e4)" (( "(") (binary_expression "puVar30 + 0x1754e4" (identifier "puVar30") (+ "+") (number_literal "0x1754e4")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))) (; ";")) (expression_statement "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));" (assignment_expression "uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348))" (identifier "uVar15") (= "=") (call_expression "(**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348))" (parenthesized_expression "(**(code **)(puVar30 + 0x175e54))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175e54)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175e54)" (* "*") (cast_expression "(code **)(puVar30 + 0x175e54)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175e54)" (( "(") (binary_expression "puVar30 + 0x175e54" (identifier "puVar30") (+ "+") (number_literal "0x175e54")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(iVar2 + 0x3348))" (( "(") (pointer_expression "*(undefined4 *)(iVar2 + 0x3348)" (* "*") (cast_expression "(undefined4 *)(iVar2 + 0x3348)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x3348)" (( "(") (binary_expression "iVar2 + 0x3348" (identifier "iVar2") (+ "+") (number_literal "0x3348")) () ")")))) () ")")))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x1756a8))(uVar15);" (call_expression "(**(code **)(puVar30 + 0x1756a8))(uVar15)" (parenthesized_expression "(**(code **)(puVar30 + 0x1756a8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x1756a8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x1756a8)" (* "*") (cast_expression "(code **)(puVar30 + 0x1756a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x1756a8)" (( "(") (binary_expression "puVar30 + 0x1756a8" (identifier "puVar30") (+ "+") (number_literal "0x1756a8")) () ")"))))) () ")")) (argument_list "(uVar15)" (( "(") (identifier "uVar15") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175634))(iVar2);" (call_expression "(**(code **)(puVar30 + 0x175634))(iVar2)" (parenthesized_expression "(**(code **)(puVar30 + 0x175634))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175634)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175634)" (* "*") (cast_expression "(code **)(puVar30 + 0x175634)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175634)" (( "(") (binary_expression "puVar30 + 0x175634" (identifier "puVar30") (+ "+") (number_literal "0x175634")) () ")"))))) () ")")) (argument_list "(iVar2)" (( "(") (identifier "iVar2") () ")"))) (; ";")) (} "}"))) (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175d70)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175d70)" (* "*") (cast_expression "(code **)(puVar30 + 0x175d70)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175d70)" (( "(") (binary_expression "puVar30 + 0x175d70" (identifier "puVar30") (+ "+") (number_literal "0x175d70")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc);" (assignment_expression "pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc)" (identifier "pcStack_10fc") (= "=") (cast_expression "(char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(puVar30 + 0x175b34))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175b34))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175b34)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175b34)" (* "*") (cast_expression "(code **)(puVar30 + 0x175b34)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175b34)" (( "(") (binary_expression "puVar30 + 0x175b34" (identifier "puVar30") (+ "+") (number_literal "0x175b34")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))))) (; ";")) (goto_statement "goto LAB_00287858;" (goto "goto") (statement_identifier "LAB_00287858") (; ";")) (} "}"))) (expression_statement "(**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x53d,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);" (call_expression "(**(code **)(puVar30 + 0x175608))\n              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x53d,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210)" (parenthesized_expression "(**(code **)(puVar30 + 0x175608))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175608)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175608)" (* "*") (cast_expression "(code **)(puVar30 + 0x175608)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175608)" (( "(") (binary_expression "puVar30 + 0x175608" (identifier "puVar30") (+ "+") (number_literal "0x175608")) () ")"))))) () ")")) (argument_list "(param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700\n               ,0x53d,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,\n               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210)" (( "(") (identifier "param_2") (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x48cc" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x48cc")) (, ",") (binary_expression "*(int *)(puVar30 + 0x175020) + -0x4700" (pointer_expression "*(int *)(puVar30 + 0x175020)" (* "*") (cast_expression "(int *)(puVar30 + 0x175020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x175020)" (( "(") (binary_expression "puVar30 + 0x175020" (identifier "puVar30") (+ "+") (number_literal "0x175020")) () ")")))) (+ "+") (number_literal "-0x4700")) (, ",") (number_literal "0x53d") (, ",") (number_literal "400") (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x46c8" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x46c8")) (, ",") (binary_expression "*(int *)(puVar30 + 0x174fb0) + 0x6e78" (pointer_expression "*(int *)(puVar30 + 0x174fb0)" (* "*") (cast_expression "(int *)(puVar30 + 0x174fb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 0x174fb0)" (( "(") (binary_expression "puVar30 + 0x174fb0" (identifier "puVar30") (+ "+") (number_literal "0x174fb0")) () ")")))) (+ "+") (number_literal "0x6e78")) (, ",") (binary_expression "iVar20 + 0x2210" (identifier "iVar20") (+ "+") (number_literal "0x2210")) () ")"))) (; ";")) (if_statement "if (pcStack_10fc != (char *)0x0) {\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }" (if "if") (parenthesized_expression "(pcStack_10fc != (char *)0x0)" (( "(") (binary_expression "pcStack_10fc != (char *)0x0" (identifier "pcStack_10fc") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);\n      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);\n      pcStack_10fc = (char *)0x0;\n      goto LAB_00287858;\n    }" ({ "{") (expression_statement "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175d70))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175d70))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175d70)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175d70)" (* "*") (cast_expression "(code **)(puVar30 + 0x175d70)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175d70)" (( "(") (binary_expression "puVar30 + 0x175d70" (identifier "puVar30") (+ "+") (number_literal "0x175d70")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);" (call_expression "(**(code **)(puVar30 + 0x175bf8))(pcStack_10fc)" (parenthesized_expression "(**(code **)(puVar30 + 0x175bf8))" (( "(") (pointer_expression "**(code **)(puVar30 + 0x175bf8)" (* "*") (pointer_expression "*(code **)(puVar30 + 0x175bf8)" (* "*") (cast_expression "(code **)(puVar30 + 0x175bf8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175bf8)" (( "(") (binary_expression "puVar30 + 0x175bf8" (identifier "puVar30") (+ "+") (number_literal "0x175bf8")) () ")"))))) () ")")) (argument_list "(pcStack_10fc)" (( "(") (identifier "pcStack_10fc") () ")"))) (; ";")) (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" (identifier "pcStack_10fc") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (goto_statement "goto LAB_00287858;" (goto "goto") (statement_identifier "LAB_00287858") (; ";")) (} "}"))) (} "}")))) (labeled_statement "LAB_00286534:\n  pcStack_10fc = (char *)0x0;" (statement_identifier "LAB_00286534") (: ":") (expression_statement "pcStack_10fc = (char *)0x0;" (assignment_expression "pcStack_10fc = (char *)0x0" (identifier "pcStack_10fc") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";"))) (labeled_statement "LAB_00287858:\n  if (iStack_84 != **(int **)(puVar30 + 0x175918)) {\n    pcVar31 = *(code **)(puVar30 + 0x17574c);\n    (*pcVar31)();\n    iVar19 = *(int *)(pcVar31 + 0x171abc);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x483c);\n    iVar3 = *(int *)(pcVar31 + 0x171dbc) + 0x4930;\n    *(int *)(iVar20 + 0x18) = iVar3;\n    iVar2 = *(int *)(pcVar31 + 0x171dbc) + 0x3578;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4820);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4800);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47dc);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47c0);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47a8);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4788);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d8,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78dc,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4760);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e8,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78f4,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    return (char *)0x810;\n  }" (statement_identifier "LAB_00287858") (: ":") (if_statement "if (iStack_84 != **(int **)(puVar30 + 0x175918)) {\n    pcVar31 = *(code **)(puVar30 + 0x17574c);\n    (*pcVar31)();\n    iVar19 = *(int *)(pcVar31 + 0x171abc);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x483c);\n    iVar3 = *(int *)(pcVar31 + 0x171dbc) + 0x4930;\n    *(int *)(iVar20 + 0x18) = iVar3;\n    iVar2 = *(int *)(pcVar31 + 0x171dbc) + 0x3578;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4820);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4800);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47dc);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47c0);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47a8);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4788);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d8,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78dc,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4760);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e8,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78f4,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    return (char *)0x810;\n  }" (if "if") (parenthesized_expression "(iStack_84 != **(int **)(puVar30 + 0x175918))" (( "(") (binary_expression "iStack_84 != **(int **)(puVar30 + 0x175918)" (identifier "iStack_84") (!= "!=") (pointer_expression "**(int **)(puVar30 + 0x175918)" (* "*") (pointer_expression "*(int **)(puVar30 + 0x175918)" (* "*") (cast_expression "(int **)(puVar30 + 0x175918)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x175918)" (( "(") (binary_expression "puVar30 + 0x175918" (identifier "puVar30") (+ "+") (number_literal "0x175918")) () ")")))))) () ")")) (compound_statement "{\n    pcVar31 = *(code **)(puVar30 + 0x17574c);\n    (*pcVar31)();\n    iVar19 = *(int *)(pcVar31 + 0x171abc);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x483c);\n    iVar3 = *(int *)(pcVar31 + 0x171dbc) + 0x4930;\n    *(int *)(iVar20 + 0x18) = iVar3;\n    iVar2 = *(int *)(pcVar31 + 0x171dbc) + 0x3578;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4820);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4800);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47dc);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47c0);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47a8);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4788);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d8,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78dc,iVar13 + -0x4774);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4760);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar13 = *(int *)(pcVar31 + 0x171b2c);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e8,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78f4,iVar13 + -0x4750);\n    *(int *)(iVar20 + 0x18) = iVar3;\n    *(int *)(iVar20 + 0x1c) = iVar2;\n    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;\n    (**(code **)(pcVar31 + 0x1720b0))(iVar20);\n    return (char *)0x810;\n  }" ({ "{") (expression_statement "pcVar31 = *(code **)(puVar30 + 0x17574c);" (assignment_expression "pcVar31 = *(code **)(puVar30 + 0x17574c)" (identifier "pcVar31") (= "=") (pointer_expression "*(code **)(puVar30 + 0x17574c)" (* "*") (cast_expression "(code **)(puVar30 + 0x17574c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar30 + 0x17574c)" (( "(") (binary_expression "puVar30 + 0x17574c" (identifier "puVar30") (+ "+") (number_literal "0x17574c")) () ")"))))) (; ";")) (expression_statement "(*pcVar31)();" (call_expression "(*pcVar31)()" (parenthesized_expression "(*pcVar31)" (( "(") (pointer_expression "*pcVar31" (* "*") (identifier "pcVar31")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "iVar19 = *(int *)(pcVar31 + 0x171abc);" (assignment_expression "iVar19 = *(int *)(pcVar31 + 0x171abc)" (identifier "iVar19") (= "=") (pointer_expression "*(int *)(pcVar31 + 0x171abc)" (* "*") (cast_expression "(int *)(pcVar31 + 0x171abc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar31 + 0x171abc)" (( "(") (binary_expression "pcVar31 + 0x171abc" (identifier "pcVar31") (+ "+") (number_literal "0x171abc")) () ")"))))) (; ";")) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x483c);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x483c)" (identifier "iVar20") (= "=") (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x483c)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" (( "(") (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" (* "*") (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" (* "*") (cast_expression "(code **)(pcVar31 + 0x1727d0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar31 + 0x1727d0)" (( "(") (binary_expression "pcVar31 + 0x1727d0" (identifier "pcVar31") (+ "+") (number_literal "0x1727d0")) () ")"))))) () ")")) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x7890,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x483c)" (( "(") (binary_expression "iVar19 + 0x7898" (identifier "iVar19") (+ "+") (number_literal "0x7898")) (, ",") (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x7890" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" (* "*") (cast_expression "(int *)(pcVar31 + 0x171abc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar31 + 0x171abc)" (( "(") (binary_expression "pcVar31 + 0x171abc" (identifier "pcVar31") (+ "+") (number_literal "0x171abc")) () ")")))) (+ "+") (number_literal "0x7890")) (, ",") (binary_expression "*(int *)(pcVar31 + 0x171b2c) + -0x483c" (pointer_expression "*(int *)(pcVar31 + 0x171b2c)" (* "*") (cast_expression "(int *)(pcVar31 + 0x171b2c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar31 + 0x171b2c)" (( "(") (binary_expression "pcVar31 + 0x171b2c" (identifier "pcVar31") (+ "+") (number_literal "0x171b2c")) () ")")))) (+ "+") (number_literal "-0x483c")) () ")")))) (; ";")) (expression_statement "iVar3 = *(int *)(pcVar31 + 0x171dbc) + 0x4930;" (assignment_expression "iVar3 = *(int *)(pcVar31 + 0x171dbc) + 0x4930" (identifier "iVar3") (= "=") (binary_expression "*(int *)(pcVar31 + 0x171dbc) + 0x4930" (pointer_expression "*(int *)(pcVar31 + 0x171dbc)" (* "*") (cast_expression "(int *)(pcVar31 + 0x171dbc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar31 + 0x171dbc)" (( "(") (binary_expression "pcVar31 + 0x171dbc" (identifier "pcVar31") (+ "+") (number_literal "0x171dbc")) () ")")))) (+ "+") (number_literal "0x4930"))) (; ";")) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" (* "*") (cast_expression "(int *)(iVar20 + 0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x18)" (( "(") (binary_expression "iVar20 + 0x18" (identifier "iVar20") (+ "+") (number_literal "0x18")) () ")")))) (= "=") (identifier "iVar3")) (; ";")) (expression_statement "iVar2 = *(int *)(pcVar31 + 0x171dbc) + 0x3578;" (assignment_expression "iVar2 = *(int *)(pcVar31 + 0x171dbc) + 0x3578" (identifier "iVar2") (= "=") (binary_expression "*(int *)(pcVar31 + 0x171dbc) + 0x3578" (pointer_expression "*(int *)(pcVar31 + 0x171dbc)" (* "*") (cast_expression "(int *)(pcVar31 + 0x171dbc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar31 + 0x171dbc)" (( "(") (binary_expression "pcVar31 + 0x171dbc" (identifier "pcVar31") (+ "+") (number_literal "0x171dbc")) () ")")))) (+ "+") (number_literal "0x3578"))) (; ";")) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" (* "*") (cast_expression "(int *)(iVar20 + 0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x1c)" (( "(") (binary_expression "iVar20 + 0x1c" (identifier "iVar20") (+ "+") (number_literal "0x1c")) () ")")))) (= "=") (identifier "iVar2")) (; ";")) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" (* "*") (cast_expression "(uint *)(iVar20 + 0x2c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x2c)" (( "(") (binary_expression "iVar20 + 0x2c" (identifier "iVar20") (+ "+") (number_literal "0x2c")) () ")")))) (= "=") (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" (* "*") (cast_expression "(uint *)(iVar20 + 0x2c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x2c)" (( "(") (binary_expression "iVar20 + 0x2c" (identifier "iVar20") (+ "+") (number_literal "0x2c")) () ")")))) (^ "^") (number_literal "1")) (| "|") (number_literal "0x280"))) (; ";")) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" (( "(") (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" (* "*") (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" (* "*") (cast_expression "(code **)(pcVar31 + 0x1720b0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar31 + 0x1720b0)" (( "(") (binary_expression "pcVar31 + 0x1720b0" (identifier "pcVar31") (+ "+") (number_literal "0x1720b0")) () ")"))))) () ")")) (argument_list "(iVar20)" (( "(") (identifier "iVar20") () ")"))) (; ";")) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4820);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4820)" (identifier "iVar20") (= "=") (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4820)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" (( "(") (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" (* "*") (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" (* "*") (cast_expression "(code **)(pcVar31 + 0x1727d0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar31 + 0x1727d0)" (( "(") (binary_expression "pcVar31 + 0x1727d0" (identifier "pcVar31") (+ "+") (number_literal "0x1727d0")) () ")"))))) () ")")) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78a0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4820)" (( "(") (binary_expression "iVar19 + 0x7898" (identifier "iVar19") (+ "+") (number_literal "0x7898")) (, ",") (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x78a0" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" (* "*") (cast_expression "(int *)(pcVar31 + 0x171abc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar31 + 0x171abc)" (( "(") (binary_expression "pcVar31 + 0x171abc" (identifier "pcVar31") (+ "+") (number_literal "0x171abc")) () ")")))) (+ "+") (number_literal "0x78a0")) (, ",") (binary_expression "*(int *)(pcVar31 + 0x171b2c) + -0x4820" (pointer_expression "*(int *)(pcVar31 + 0x171b2c)" (* "*") (cast_expression "(int *)(pcVar31 + 0x171b2c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar31 + 0x171b2c)" (( "(") (binary_expression "pcVar31 + 0x171b2c" (identifier "pcVar31") (+ "+") (number_literal "0x171b2c")) () ")")))) (+ "+") (number_literal "-0x4820")) () ")")))) (; ";")) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" (* "*") (cast_expression "(int *)(iVar20 + 0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x18)" (( "(") (binary_expression "iVar20 + 0x18" (identifier "iVar20") (+ "+") (number_literal "0x18")) () ")")))) (= "=") (identifier "iVar3")) (; ";")) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" (* "*") (cast_expression "(int *)(iVar20 + 0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x1c)" (( "(") (binary_expression "iVar20 + 0x1c" (identifier "iVar20") (+ "+") (number_literal "0x1c")) () ")")))) (= "=") (identifier "iVar2")) (; ";")) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" (* "*") (cast_expression "(uint *)(iVar20 + 0x2c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x2c)" (( "(") (binary_expression "iVar20 + 0x2c" (identifier "iVar20") (+ "+") (number_literal "0x2c")) () ")")))) (= "=") (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" (* "*") (cast_expression "(uint *)(iVar20 + 0x2c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x2c)" (( "(") (binary_expression "iVar20 + 0x2c" (identifier "iVar20") (+ "+") (number_literal "0x2c")) () ")")))) (^ "^") (number_literal "1")) (| "|") (number_literal "0x280"))) (; ";")) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" (( "(") (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" (* "*") (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" (* "*") (cast_expression "(code **)(pcVar31 + 0x1720b0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar31 + 0x1720b0)" (( "(") (binary_expression "pcVar31 + 0x1720b0" (identifier "pcVar31") (+ "+") (number_literal "0x1720b0")) () ")"))))) () ")")) (argument_list "(iVar20)" (( "(") (identifier "iVar20") () ")"))) (; ";")) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4800);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4800)" (identifier "iVar20") (= "=") (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4800)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" (( "(") (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" (* "*") (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" (* "*") (cast_expression "(code **)(pcVar31 + 0x1727d0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar31 + 0x1727d0)" (( "(") (binary_expression "pcVar31 + 0x1727d0" (identifier "pcVar31") (+ "+") (number_literal "0x1727d0")) () ")"))))) () ")")) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78ac,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4800)" (( "(") (binary_expression "iVar19 + 0x7898" (identifier "iVar19") (+ "+") (number_literal "0x7898")) (, ",") (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x78ac" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" (* "*") (cast_expression "(int *)(pcVar31 + 0x171abc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar31 + 0x171abc)" (( "(") (binary_expression "pcVar31 + 0x171abc" (identifier "pcVar31") (+ "+") (number_literal "0x171abc")) () ")")))) (+ "+") (number_literal "0x78ac")) (, ",") (binary_expression "*(int *)(pcVar31 + 0x171b2c) + -0x4800" (pointer_expression "*(int *)(pcVar31 + 0x171b2c)" (* "*") (cast_expression "(int *)(pcVar31 + 0x171b2c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar31 + 0x171b2c)" (( "(") (binary_expression "pcVar31 + 0x171b2c" (identifier "pcVar31") (+ "+") (number_literal "0x171b2c")) () ")")))) (+ "+") (number_literal "-0x4800")) () ")")))) (; ";")) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" (* "*") (cast_expression "(int *)(iVar20 + 0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x18)" (( "(") (binary_expression "iVar20 + 0x18" (identifier "iVar20") (+ "+") (number_literal "0x18")) () ")")))) (= "=") (identifier "iVar3")) (; ";")) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" (* "*") (cast_expression "(int *)(iVar20 + 0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x1c)" (( "(") (binary_expression "iVar20 + 0x1c" (identifier "iVar20") (+ "+") (number_literal "0x1c")) () ")")))) (= "=") (identifier "iVar2")) (; ";")) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" (* "*") (cast_expression "(uint *)(iVar20 + 0x2c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x2c)" (( "(") (binary_expression "iVar20 + 0x2c" (identifier "iVar20") (+ "+") (number_literal "0x2c")) () ")")))) (= "=") (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" (* "*") (cast_expression "(uint *)(iVar20 + 0x2c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x2c)" (( "(") (binary_expression "iVar20 + 0x2c" (identifier "iVar20") (+ "+") (number_literal "0x2c")) () ")")))) (^ "^") (number_literal "1")) (| "|") (number_literal "0x280"))) (; ";")) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" (( "(") (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" (* "*") (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" (* "*") (cast_expression "(code **)(pcVar31 + 0x1720b0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar31 + 0x1720b0)" (( "(") (binary_expression "pcVar31 + 0x1720b0" (identifier "pcVar31") (+ "+") (number_literal "0x1720b0")) () ")"))))) () ")")) (argument_list "(iVar20)" (( "(") (identifier "iVar20") () ")"))) (; ";")) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47dc);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47dc)" (identifier "iVar20") (= "=") (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47dc)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" (( "(") (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" (* "*") (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" (* "*") (cast_expression "(code **)(pcVar31 + 0x1727d0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar31 + 0x1727d0)" (( "(") (binary_expression "pcVar31 + 0x1727d0" (identifier "pcVar31") (+ "+") (number_literal "0x1727d0")) () ")"))))) () ")")) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78b8,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47dc)" (( "(") (binary_expression "iVar19 + 0x7898" (identifier "iVar19") (+ "+") (number_literal "0x7898")) (, ",") (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x78b8" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" (* "*") (cast_expression "(int *)(pcVar31 + 0x171abc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar31 + 0x171abc)" (( "(") (binary_expression "pcVar31 + 0x171abc" (identifier "pcVar31") (+ "+") (number_literal "0x171abc")) () ")")))) (+ "+") (number_literal "0x78b8")) (, ",") (binary_expression "*(int *)(pcVar31 + 0x171b2c) + -0x47dc" (pointer_expression "*(int *)(pcVar31 + 0x171b2c)" (* "*") (cast_expression "(int *)(pcVar31 + 0x171b2c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar31 + 0x171b2c)" (( "(") (binary_expression "pcVar31 + 0x171b2c" (identifier "pcVar31") (+ "+") (number_literal "0x171b2c")) () ")")))) (+ "+") (number_literal "-0x47dc")) () ")")))) (; ";")) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" (* "*") (cast_expression "(int *)(iVar20 + 0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x18)" (( "(") (binary_expression "iVar20 + 0x18" (identifier "iVar20") (+ "+") (number_literal "0x18")) () ")")))) (= "=") (identifier "iVar3")) (; ";")) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" (* "*") (cast_expression "(int *)(iVar20 + 0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x1c)" (( "(") (binary_expression "iVar20 + 0x1c" (identifier "iVar20") (+ "+") (number_literal "0x1c")) () ")")))) (= "=") (identifier "iVar2")) (; ";")) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" (* "*") (cast_expression "(uint *)(iVar20 + 0x2c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x2c)" (( "(") (binary_expression "iVar20 + 0x2c" (identifier "iVar20") (+ "+") (number_literal "0x2c")) () ")")))) (= "=") (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" (* "*") (cast_expression "(uint *)(iVar20 + 0x2c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x2c)" (( "(") (binary_expression "iVar20 + 0x2c" (identifier "iVar20") (+ "+") (number_literal "0x2c")) () ")")))) (^ "^") (number_literal "1")) (| "|") (number_literal "0x280"))) (; ";")) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" (( "(") (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" (* "*") (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" (* "*") (cast_expression "(code **)(pcVar31 + 0x1720b0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar31 + 0x1720b0)" (( "(") (binary_expression "pcVar31 + 0x1720b0" (identifier "pcVar31") (+ "+") (number_literal "0x1720b0")) () ")"))))) () ")")) (argument_list "(iVar20)" (( "(") (identifier "iVar20") () ")"))) (; ";")) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47c0);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47c0)" (identifier "iVar20") (= "=") (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47c0)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" (( "(") (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" (* "*") (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" (* "*") (cast_expression "(code **)(pcVar31 + 0x1727d0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar31 + 0x1727d0)" (( "(") (binary_expression "pcVar31 + 0x1727d0" (identifier "pcVar31") (+ "+") (number_literal "0x1727d0")) () ")"))))) () ")")) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78c0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47c0)" (( "(") (binary_expression "iVar19 + 0x7898" (identifier "iVar19") (+ "+") (number_literal "0x7898")) (, ",") (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x78c0" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" (* "*") (cast_expression "(int *)(pcVar31 + 0x171abc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar31 + 0x171abc)" (( "(") (binary_expression "pcVar31 + 0x171abc" (identifier "pcVar31") (+ "+") (number_literal "0x171abc")) () ")")))) (+ "+") (number_literal "0x78c0")) (, ",") (binary_expression "*(int *)(pcVar31 + 0x171b2c) + -0x47c0" (pointer_expression "*(int *)(pcVar31 + 0x171b2c)" (* "*") (cast_expression "(int *)(pcVar31 + 0x171b2c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar31 + 0x171b2c)" (( "(") (binary_expression "pcVar31 + 0x171b2c" (identifier "pcVar31") (+ "+") (number_literal "0x171b2c")) () ")")))) (+ "+") (number_literal "-0x47c0")) () ")")))) (; ";")) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" (* "*") (cast_expression "(int *)(iVar20 + 0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x18)" (( "(") (binary_expression "iVar20 + 0x18" (identifier "iVar20") (+ "+") (number_literal "0x18")) () ")")))) (= "=") (identifier "iVar3")) (; ";")) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" (* "*") (cast_expression "(int *)(iVar20 + 0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x1c)" (( "(") (binary_expression "iVar20 + 0x1c" (identifier "iVar20") (+ "+") (number_literal "0x1c")) () ")")))) (= "=") (identifier "iVar2")) (; ";")) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" (* "*") (cast_expression "(uint *)(iVar20 + 0x2c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x2c)" (( "(") (binary_expression "iVar20 + 0x2c" (identifier "iVar20") (+ "+") (number_literal "0x2c")) () ")")))) (= "=") (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" (* "*") (cast_expression "(uint *)(iVar20 + 0x2c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x2c)" (( "(") (binary_expression "iVar20 + 0x2c" (identifier "iVar20") (+ "+") (number_literal "0x2c")) () ")")))) (^ "^") (number_literal "1")) (| "|") (number_literal "0x280"))) (; ";")) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" (( "(") (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" (* "*") (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" (* "*") (cast_expression "(code **)(pcVar31 + 0x1720b0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar31 + 0x1720b0)" (( "(") (binary_expression "pcVar31 + 0x1720b0" (identifier "pcVar31") (+ "+") (number_literal "0x1720b0")) () ")"))))) () ")")) (argument_list "(iVar20)" (( "(") (identifier "iVar20") () ")"))) (; ";")) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47a8);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47a8)" (identifier "iVar20") (= "=") (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47a8)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" (( "(") (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" (* "*") (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" (* "*") (cast_expression "(code **)(pcVar31 + 0x1727d0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar31 + 0x1727d0)" (( "(") (binary_expression "pcVar31 + 0x1727d0" (identifier "pcVar31") (+ "+") (number_literal "0x1727d0")) () ")"))))) () ")")) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78cc,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x47a8)" (( "(") (binary_expression "iVar19 + 0x7898" (identifier "iVar19") (+ "+") (number_literal "0x7898")) (, ",") (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x78cc" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" (* "*") (cast_expression "(int *)(pcVar31 + 0x171abc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar31 + 0x171abc)" (( "(") (binary_expression "pcVar31 + 0x171abc" (identifier "pcVar31") (+ "+") (number_literal "0x171abc")) () ")")))) (+ "+") (number_literal "0x78cc")) (, ",") (binary_expression "*(int *)(pcVar31 + 0x171b2c) + -0x47a8" (pointer_expression "*(int *)(pcVar31 + 0x171b2c)" (* "*") (cast_expression "(int *)(pcVar31 + 0x171b2c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar31 + 0x171b2c)" (( "(") (binary_expression "pcVar31 + 0x171b2c" (identifier "pcVar31") (+ "+") (number_literal "0x171b2c")) () ")")))) (+ "+") (number_literal "-0x47a8")) () ")")))) (; ";")) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" (* "*") (cast_expression "(int *)(iVar20 + 0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x18)" (( "(") (binary_expression "iVar20 + 0x18" (identifier "iVar20") (+ "+") (number_literal "0x18")) () ")")))) (= "=") (identifier "iVar3")) (; ";")) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" (* "*") (cast_expression "(int *)(iVar20 + 0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x1c)" (( "(") (binary_expression "iVar20 + 0x1c" (identifier "iVar20") (+ "+") (number_literal "0x1c")) () ")")))) (= "=") (identifier "iVar2")) (; ";")) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" (* "*") (cast_expression "(uint *)(iVar20 + 0x2c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x2c)" (( "(") (binary_expression "iVar20 + 0x2c" (identifier "iVar20") (+ "+") (number_literal "0x2c")) () ")")))) (= "=") (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" (* "*") (cast_expression "(uint *)(iVar20 + 0x2c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x2c)" (( "(") (binary_expression "iVar20 + 0x2c" (identifier "iVar20") (+ "+") (number_literal "0x2c")) () ")")))) (^ "^") (number_literal "1")) (| "|") (number_literal "0x280"))) (; ";")) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" (( "(") (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" (* "*") (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" (* "*") (cast_expression "(code **)(pcVar31 + 0x1720b0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar31 + 0x1720b0)" (( "(") (binary_expression "pcVar31 + 0x1720b0" (identifier "pcVar31") (+ "+") (number_literal "0x1720b0")) () ")"))))) () ")")) (argument_list "(iVar20)" (( "(") (identifier "iVar20") () ")"))) (; ";")) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4788);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4788)" (identifier "iVar20") (= "=") (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4788)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" (( "(") (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" (* "*") (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" (* "*") (cast_expression "(code **)(pcVar31 + 0x1727d0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar31 + 0x1727d0)" (( "(") (binary_expression "pcVar31 + 0x1727d0" (identifier "pcVar31") (+ "+") (number_literal "0x1727d0")) () ")"))))) () ")")) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d4,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4788)" (( "(") (binary_expression "iVar19 + 0x7898" (identifier "iVar19") (+ "+") (number_literal "0x7898")) (, ",") (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x78d4" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" (* "*") (cast_expression "(int *)(pcVar31 + 0x171abc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar31 + 0x171abc)" (( "(") (binary_expression "pcVar31 + 0x171abc" (identifier "pcVar31") (+ "+") (number_literal "0x171abc")) () ")")))) (+ "+") (number_literal "0x78d4")) (, ",") (binary_expression "*(int *)(pcVar31 + 0x171b2c) + -0x4788" (pointer_expression "*(int *)(pcVar31 + 0x171b2c)" (* "*") (cast_expression "(int *)(pcVar31 + 0x171b2c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar31 + 0x171b2c)" (( "(") (binary_expression "pcVar31 + 0x171b2c" (identifier "pcVar31") (+ "+") (number_literal "0x171b2c")) () ")")))) (+ "+") (number_literal "-0x4788")) () ")")))) (; ";")) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" (* "*") (cast_expression "(int *)(iVar20 + 0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x18)" (( "(") (binary_expression "iVar20 + 0x18" (identifier "iVar20") (+ "+") (number_literal "0x18")) () ")")))) (= "=") (identifier "iVar3")) (; ";")) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" (* "*") (cast_expression "(int *)(iVar20 + 0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x1c)" (( "(") (binary_expression "iVar20 + 0x1c" (identifier "iVar20") (+ "+") (number_literal "0x1c")) () ")")))) (= "=") (identifier "iVar2")) (; ";")) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" (* "*") (cast_expression "(uint *)(iVar20 + 0x2c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x2c)" (( "(") (binary_expression "iVar20 + 0x2c" (identifier "iVar20") (+ "+") (number_literal "0x2c")) () ")")))) (= "=") (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" (* "*") (cast_expression "(uint *)(iVar20 + 0x2c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x2c)" (( "(") (binary_expression "iVar20 + 0x2c" (identifier "iVar20") (+ "+") (number_literal "0x2c")) () ")")))) (^ "^") (number_literal "1")) (| "|") (number_literal "0x280"))) (; ";")) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" (( "(") (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" (* "*") (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" (* "*") (cast_expression "(code **)(pcVar31 + 0x1720b0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar31 + 0x1720b0)" (( "(") (binary_expression "pcVar31 + 0x1720b0" (identifier "pcVar31") (+ "+") (number_literal "0x1720b0")) () ")"))))) () ")")) (argument_list "(iVar20)" (( "(") (identifier "iVar20") () ")"))) (; ";")) (expression_statement "iVar13 = *(int *)(pcVar31 + 0x171b2c);" (assignment_expression "iVar13 = *(int *)(pcVar31 + 0x171b2c)" (identifier "iVar13") (= "=") (pointer_expression "*(int *)(pcVar31 + 0x171b2c)" (* "*") (cast_expression "(int *)(pcVar31 + 0x171b2c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar31 + 0x171b2c)" (( "(") (binary_expression "pcVar31 + 0x171b2c" (identifier "pcVar31") (+ "+") (number_literal "0x171b2c")) () ")"))))) (; ";")) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d8,iVar13 + -0x4774);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d8,iVar13 + -0x4774)" (identifier "iVar20") (= "=") (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d8,iVar13 + -0x4774)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" (( "(") (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" (* "*") (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" (* "*") (cast_expression "(code **)(pcVar31 + 0x1727d0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar31 + 0x1727d0)" (( "(") (binary_expression "pcVar31 + 0x1727d0" (identifier "pcVar31") (+ "+") (number_literal "0x1727d0")) () ")"))))) () ")")) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d8,iVar13 + -0x4774)" (( "(") (binary_expression "iVar19 + 0x7898" (identifier "iVar19") (+ "+") (number_literal "0x7898")) (, ",") (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x78d8" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" (* "*") (cast_expression "(int *)(pcVar31 + 0x171abc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar31 + 0x171abc)" (( "(") (binary_expression "pcVar31 + 0x171abc" (identifier "pcVar31") (+ "+") (number_literal "0x171abc")) () ")")))) (+ "+") (number_literal "0x78d8")) (, ",") (binary_expression "iVar13 + -0x4774" (identifier "iVar13") (+ "+") (number_literal "-0x4774")) () ")")))) (; ";")) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" (* "*") (cast_expression "(int *)(iVar20 + 0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x18)" (( "(") (binary_expression "iVar20 + 0x18" (identifier "iVar20") (+ "+") (number_literal "0x18")) () ")")))) (= "=") (identifier "iVar3")) (; ";")) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" (* "*") (cast_expression "(int *)(iVar20 + 0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x1c)" (( "(") (binary_expression "iVar20 + 0x1c" (identifier "iVar20") (+ "+") (number_literal "0x1c")) () ")")))) (= "=") (identifier "iVar2")) (; ";")) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" (* "*") (cast_expression "(uint *)(iVar20 + 0x2c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x2c)" (( "(") (binary_expression "iVar20 + 0x2c" (identifier "iVar20") (+ "+") (number_literal "0x2c")) () ")")))) (= "=") (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" (* "*") (cast_expression "(uint *)(iVar20 + 0x2c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x2c)" (( "(") (binary_expression "iVar20 + 0x2c" (identifier "iVar20") (+ "+") (number_literal "0x2c")) () ")")))) (^ "^") (number_literal "1")) (| "|") (number_literal "0x280"))) (; ";")) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" (( "(") (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" (* "*") (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" (* "*") (cast_expression "(code **)(pcVar31 + 0x1720b0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar31 + 0x1720b0)" (( "(") (binary_expression "pcVar31 + 0x1720b0" (identifier "pcVar31") (+ "+") (number_literal "0x1720b0")) () ")"))))) () ")")) (argument_list "(iVar20)" (( "(") (identifier "iVar20") () ")"))) (; ";")) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78dc,iVar13 + -0x4774);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78dc,iVar13 + -0x4774)" (identifier "iVar20") (= "=") (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78dc,iVar13 + -0x4774)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" (( "(") (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" (* "*") (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" (* "*") (cast_expression "(code **)(pcVar31 + 0x1727d0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar31 + 0x1727d0)" (( "(") (binary_expression "pcVar31 + 0x1727d0" (identifier "pcVar31") (+ "+") (number_literal "0x1727d0")) () ")"))))) () ")")) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78dc,iVar13 + -0x4774)" (( "(") (binary_expression "iVar19 + 0x7898" (identifier "iVar19") (+ "+") (number_literal "0x7898")) (, ",") (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x78dc" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" (* "*") (cast_expression "(int *)(pcVar31 + 0x171abc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar31 + 0x171abc)" (( "(") (binary_expression "pcVar31 + 0x171abc" (identifier "pcVar31") (+ "+") (number_literal "0x171abc")) () ")")))) (+ "+") (number_literal "0x78dc")) (, ",") (binary_expression "iVar13 + -0x4774" (identifier "iVar13") (+ "+") (number_literal "-0x4774")) () ")")))) (; ";")) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" (* "*") (cast_expression "(int *)(iVar20 + 0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x18)" (( "(") (binary_expression "iVar20 + 0x18" (identifier "iVar20") (+ "+") (number_literal "0x18")) () ")")))) (= "=") (identifier "iVar3")) (; ";")) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" (* "*") (cast_expression "(int *)(iVar20 + 0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x1c)" (( "(") (binary_expression "iVar20 + 0x1c" (identifier "iVar20") (+ "+") (number_literal "0x1c")) () ")")))) (= "=") (identifier "iVar2")) (; ";")) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" (* "*") (cast_expression "(uint *)(iVar20 + 0x2c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x2c)" (( "(") (binary_expression "iVar20 + 0x2c" (identifier "iVar20") (+ "+") (number_literal "0x2c")) () ")")))) (= "=") (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" (* "*") (cast_expression "(uint *)(iVar20 + 0x2c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x2c)" (( "(") (binary_expression "iVar20 + 0x2c" (identifier "iVar20") (+ "+") (number_literal "0x2c")) () ")")))) (^ "^") (number_literal "1")) (| "|") (number_literal "0x280"))) (; ";")) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" (( "(") (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" (* "*") (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" (* "*") (cast_expression "(code **)(pcVar31 + 0x1720b0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar31 + 0x1720b0)" (( "(") (binary_expression "pcVar31 + 0x1720b0" (identifier "pcVar31") (+ "+") (number_literal "0x1720b0")) () ")"))))) () ")")) (argument_list "(iVar20)" (( "(") (identifier "iVar20") () ")"))) (; ";")) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4760);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4760)" (identifier "iVar20") (= "=") (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4760)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" (( "(") (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" (* "*") (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" (* "*") (cast_expression "(code **)(pcVar31 + 0x1727d0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar31 + 0x1727d0)" (( "(") (binary_expression "pcVar31 + 0x1727d0" (identifier "pcVar31") (+ "+") (number_literal "0x1727d0")) () ")"))))) () ")")) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e0,\n                        *(int *)(pcVar31 + 0x171b2c) + -0x4760)" (( "(") (binary_expression "iVar19 + 0x7898" (identifier "iVar19") (+ "+") (number_literal "0x7898")) (, ",") (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x78e0" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" (* "*") (cast_expression "(int *)(pcVar31 + 0x171abc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar31 + 0x171abc)" (( "(") (binary_expression "pcVar31 + 0x171abc" (identifier "pcVar31") (+ "+") (number_literal "0x171abc")) () ")")))) (+ "+") (number_literal "0x78e0")) (, ",") (binary_expression "*(int *)(pcVar31 + 0x171b2c) + -0x4760" (pointer_expression "*(int *)(pcVar31 + 0x171b2c)" (* "*") (cast_expression "(int *)(pcVar31 + 0x171b2c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar31 + 0x171b2c)" (( "(") (binary_expression "pcVar31 + 0x171b2c" (identifier "pcVar31") (+ "+") (number_literal "0x171b2c")) () ")")))) (+ "+") (number_literal "-0x4760")) () ")")))) (; ";")) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" (* "*") (cast_expression "(int *)(iVar20 + 0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x18)" (( "(") (binary_expression "iVar20 + 0x18" (identifier "iVar20") (+ "+") (number_literal "0x18")) () ")")))) (= "=") (identifier "iVar3")) (; ";")) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" (* "*") (cast_expression "(int *)(iVar20 + 0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x1c)" (( "(") (binary_expression "iVar20 + 0x1c" (identifier "iVar20") (+ "+") (number_literal "0x1c")) () ")")))) (= "=") (identifier "iVar2")) (; ";")) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" (* "*") (cast_expression "(uint *)(iVar20 + 0x2c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x2c)" (( "(") (binary_expression "iVar20 + 0x2c" (identifier "iVar20") (+ "+") (number_literal "0x2c")) () ")")))) (= "=") (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" (* "*") (cast_expression "(uint *)(iVar20 + 0x2c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x2c)" (( "(") (binary_expression "iVar20 + 0x2c" (identifier "iVar20") (+ "+") (number_literal "0x2c")) () ")")))) (^ "^") (number_literal "1")) (| "|") (number_literal "0x280"))) (; ";")) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" (( "(") (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" (* "*") (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" (* "*") (cast_expression "(code **)(pcVar31 + 0x1720b0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar31 + 0x1720b0)" (( "(") (binary_expression "pcVar31 + 0x1720b0" (identifier "pcVar31") (+ "+") (number_literal "0x1720b0")) () ")"))))) () ")")) (argument_list "(iVar20)" (( "(") (identifier "iVar20") () ")"))) (; ";")) (expression_statement "iVar13 = *(int *)(pcVar31 + 0x171b2c);" (assignment_expression "iVar13 = *(int *)(pcVar31 + 0x171b2c)" (identifier "iVar13") (= "=") (pointer_expression "*(int *)(pcVar31 + 0x171b2c)" (* "*") (cast_expression "(int *)(pcVar31 + 0x171b2c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar31 + 0x171b2c)" (( "(") (binary_expression "pcVar31 + 0x171b2c" (identifier "pcVar31") (+ "+") (number_literal "0x171b2c")) () ")"))))) (; ";")) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e8,iVar13 + -0x4750);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e8,iVar13 + -0x4750)" (identifier "iVar20") (= "=") (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e8,iVar13 + -0x4750)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" (( "(") (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" (* "*") (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" (* "*") (cast_expression "(code **)(pcVar31 + 0x1727d0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar31 + 0x1727d0)" (( "(") (binary_expression "pcVar31 + 0x1727d0" (identifier "pcVar31") (+ "+") (number_literal "0x1727d0")) () ")"))))) () ")")) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e8,iVar13 + -0x4750)" (( "(") (binary_expression "iVar19 + 0x7898" (identifier "iVar19") (+ "+") (number_literal "0x7898")) (, ",") (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x78e8" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" (* "*") (cast_expression "(int *)(pcVar31 + 0x171abc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar31 + 0x171abc)" (( "(") (binary_expression "pcVar31 + 0x171abc" (identifier "pcVar31") (+ "+") (number_literal "0x171abc")) () ")")))) (+ "+") (number_literal "0x78e8")) (, ",") (binary_expression "iVar13 + -0x4750" (identifier "iVar13") (+ "+") (number_literal "-0x4750")) () ")")))) (; ";")) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" (* "*") (cast_expression "(int *)(iVar20 + 0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x18)" (( "(") (binary_expression "iVar20 + 0x18" (identifier "iVar20") (+ "+") (number_literal "0x18")) () ")")))) (= "=") (identifier "iVar3")) (; ";")) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" (* "*") (cast_expression "(int *)(iVar20 + 0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x1c)" (( "(") (binary_expression "iVar20 + 0x1c" (identifier "iVar20") (+ "+") (number_literal "0x1c")) () ")")))) (= "=") (identifier "iVar2")) (; ";")) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" (* "*") (cast_expression "(uint *)(iVar20 + 0x2c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x2c)" (( "(") (binary_expression "iVar20 + 0x2c" (identifier "iVar20") (+ "+") (number_literal "0x2c")) () ")")))) (= "=") (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" (* "*") (cast_expression "(uint *)(iVar20 + 0x2c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x2c)" (( "(") (binary_expression "iVar20 + 0x2c" (identifier "iVar20") (+ "+") (number_literal "0x2c")) () ")")))) (^ "^") (number_literal "1")) (| "|") (number_literal "0x280"))) (; ";")) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" (( "(") (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" (* "*") (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" (* "*") (cast_expression "(code **)(pcVar31 + 0x1720b0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar31 + 0x1720b0)" (( "(") (binary_expression "pcVar31 + 0x1720b0" (identifier "pcVar31") (+ "+") (number_literal "0x1720b0")) () ")"))))) () ")")) (argument_list "(iVar20)" (( "(") (identifier "iVar20") () ")"))) (; ";")) (expression_statement "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78f4,iVar13 + -0x4750);" (assignment_expression "iVar20 = (**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78f4,iVar13 + -0x4750)" (identifier "iVar20") (= "=") (call_expression "(**(code **)(pcVar31 + 0x1727d0))\n                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78f4,iVar13 + -0x4750)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1727d0))" (( "(") (pointer_expression "**(code **)(pcVar31 + 0x1727d0)" (* "*") (pointer_expression "*(code **)(pcVar31 + 0x1727d0)" (* "*") (cast_expression "(code **)(pcVar31 + 0x1727d0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar31 + 0x1727d0)" (( "(") (binary_expression "pcVar31 + 0x1727d0" (identifier "pcVar31") (+ "+") (number_literal "0x1727d0")) () ")"))))) () ")")) (argument_list "(iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78f4,iVar13 + -0x4750)" (( "(") (binary_expression "iVar19 + 0x7898" (identifier "iVar19") (+ "+") (number_literal "0x7898")) (, ",") (binary_expression "*(int *)(pcVar31 + 0x171abc) + 0x78f4" (pointer_expression "*(int *)(pcVar31 + 0x171abc)" (* "*") (cast_expression "(int *)(pcVar31 + 0x171abc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar31 + 0x171abc)" (( "(") (binary_expression "pcVar31 + 0x171abc" (identifier "pcVar31") (+ "+") (number_literal "0x171abc")) () ")")))) (+ "+") (number_literal "0x78f4")) (, ",") (binary_expression "iVar13 + -0x4750" (identifier "iVar13") (+ "+") (number_literal "-0x4750")) () ")")))) (; ";")) (expression_statement "*(int *)(iVar20 + 0x18) = iVar3;" (assignment_expression "*(int *)(iVar20 + 0x18) = iVar3" (pointer_expression "*(int *)(iVar20 + 0x18)" (* "*") (cast_expression "(int *)(iVar20 + 0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x18)" (( "(") (binary_expression "iVar20 + 0x18" (identifier "iVar20") (+ "+") (number_literal "0x18")) () ")")))) (= "=") (identifier "iVar3")) (; ";")) (expression_statement "*(int *)(iVar20 + 0x1c) = iVar2;" (assignment_expression "*(int *)(iVar20 + 0x1c) = iVar2" (pointer_expression "*(int *)(iVar20 + 0x1c)" (* "*") (cast_expression "(int *)(iVar20 + 0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x1c)" (( "(") (binary_expression "iVar20 + 0x1c" (identifier "iVar20") (+ "+") (number_literal "0x1c")) () ")")))) (= "=") (identifier "iVar2")) (; ";")) (expression_statement "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;" (assignment_expression "*(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (pointer_expression "*(uint *)(iVar20 + 0x2c)" (* "*") (cast_expression "(uint *)(iVar20 + 0x2c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x2c)" (( "(") (binary_expression "iVar20 + 0x2c" (identifier "iVar20") (+ "+") (number_literal "0x2c")) () ")")))) (= "=") (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1 | 0x280" (binary_expression "*(uint *)(iVar20 + 0x2c) ^ 1" (pointer_expression "*(uint *)(iVar20 + 0x2c)" (* "*") (cast_expression "(uint *)(iVar20 + 0x2c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + 0x2c)" (( "(") (binary_expression "iVar20 + 0x2c" (identifier "iVar20") (+ "+") (number_literal "0x2c")) () ")")))) (^ "^") (number_literal "1")) (| "|") (number_literal "0x280"))) (; ";")) (expression_statement "(**(code **)(pcVar31 + 0x1720b0))(iVar20);" (call_expression "(**(code **)(pcVar31 + 0x1720b0))(iVar20)" (parenthesized_expression "(**(code **)(pcVar31 + 0x1720b0))" (( "(") (pointer_expression "**(code **)(pcVar31 + 0x1720b0)" (* "*") (pointer_expression "*(code **)(pcVar31 + 0x1720b0)" (* "*") (cast_expression "(code **)(pcVar31 + 0x1720b0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar31 + 0x1720b0)" (( "(") (binary_expression "pcVar31 + 0x1720b0" (identifier "pcVar31") (+ "+") (number_literal "0x1720b0")) () ")"))))) () ")")) (argument_list "(iVar20)" (( "(") (identifier "iVar20") () ")"))) (; ";")) (return_statement "return (char *)0x810;" (return "return") (cast_expression "(char *)0x810" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x810")) (; ";")) (} "}")))) (return_statement "return pcStack_10fc;" (return "return") (identifier "pcStack_10fc") (; ";")) (} "}")))
(translation_unit (function_definition type: (primitive_type) declarator: (pointer_declarator declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (parameter_declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier)))))) body: (compound_statement (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (char_literal (character)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal))))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)) right: (identifier))) right: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (char_literal (character)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (identifier) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (char_literal (character)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (identifier) (binary_expression left: (identifier) right: (number_literal)))))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (char_literal (character)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (char_literal (character)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier))) (goto_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: (number_literal))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (cast_expression type: (type_descriptor type: (type_identifier)) value: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (char_literal (escape_sequence)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (while_statement condition: (parenthesized_expression (true)) body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (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: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))))) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (identifier))))) (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: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))))) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (binary_expression left: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (char_literal (escape_sequence)))))) consequence: (break_statement)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (identifier))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (goto_statement label: (statement_identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (identifier) (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (subscript_expression argument: (identifier) index: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (goto_statement label: (statement_identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal))))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (char_literal (character)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (goto_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))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))))))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))))) consequence: (compound_statement (return_statement (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (return_statement (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (return_statement (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (return_statement (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (return_statement (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier) (number_literal) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (char_literal (escape_sequence)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (char_literal (escape_sequence)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (char_literal (escape_sequence)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (char_literal (escape_sequence)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (char_literal (escape_sequence)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (char_literal (escape_sequence)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (char_literal (escape_sequence)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (char_literal (escape_sequence)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (goto_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: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (number_literal) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (number_literal) (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (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))))) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (number_literal) (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (char_literal (escape_sequence)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (labeled_statement label: (statement_identifier) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (number_literal)) (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (goto_statement label: (statement_identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) right: (number_literal))) right: (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))) right: (number_literal)))))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (while_statement condition: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal) (identifier) (identifier) (identifier) (identifier) (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal)) (number_literal) (pointer_expression argument: (identifier)) (pointer_expression argument: (identifier)) (pointer_expression argument: (identifier))))) right: (binary_expression left: (identifier) right: (number_literal)))) body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (labeled_statement label: (statement_identifier) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal) (identifier) (identifier) (identifier) (identifier) (binary_expression left: (identifier) right: (number_literal)) (identifier) (number_literal) (pointer_expression argument: (identifier)) (pointer_expression argument: (identifier)) (pointer_expression argument: (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal) (number_literal))))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier) (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (goto_statement label: (statement_identifier))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal) (number_literal)))))))))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (true)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list)))) (while_statement condition: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal) (identifier) (identifier) (identifier) (identifier) (binary_expression left: (identifier) right: (number_literal)) (identifier) (number_literal) (pointer_expression argument: (identifier)) (pointer_expression argument: (identifier)) (pointer_expression argument: (identifier))))) right: (binary_expression left: (identifier) right: (number_literal)))) body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier))))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (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 (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (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)))))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))))))) condition: (parenthesized_expression (true)))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (number_literal) (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal) (number_literal)))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) consequence: (compound_statement (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (identifier)) (binary_expression left: (identifier) right: (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (break_statement))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))))))) condition: (parenthesized_expression (true))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (number_literal) (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (char_literal (escape_sequence)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (while_statement condition: (parenthesized_expression (true)) body: (compound_statement (while_statement condition: (parenthesized_expression (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) right: (binary_expression left: (identifier) right: (number_literal)))))))) body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (number_literal)) (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (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 (comma_expression left: (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) right: (number_literal))) right: (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))) right: (number_literal)))))) consequence: (break_statement)) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (while_statement condition: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal) (identifier) (identifier) (identifier) (identifier) (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal)) (number_literal) (pointer_expression argument: (identifier)) (pointer_expression argument: (identifier)) (pointer_expression argument: (identifier))))) right: (binary_expression left: (identifier) right: (number_literal)))) body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (labeled_statement label: (statement_identifier) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal) (identifier) (identifier) (identifier) (identifier) (binary_expression left: (identifier) right: (number_literal)) (identifier) (number_literal) (pointer_expression argument: (identifier)) (pointer_expression argument: (identifier)) (pointer_expression argument: (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal) (number_literal)))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (goto_statement label: (statement_identifier))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal) (number_literal)))))))))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (true)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list)))) (while_statement condition: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal) (identifier) (identifier) (identifier) (identifier) (binary_expression left: (identifier) right: (number_literal)) (identifier) (number_literal) (pointer_expression argument: (identifier)) (pointer_expression argument: (identifier)) (pointer_expression argument: (identifier))))) right: (binary_expression left: (identifier) right: (number_literal)))) body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier))))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (identifier))))) (goto_statement label: (statement_identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_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 (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (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)))))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))))))))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (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: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) right: (binary_expression left: (number_literal) right: (identifier)))))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) consequence: (goto_statement label: (statement_identifier))))) (goto_statement label: (statement_identifier)))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (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 (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))))) (goto_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: (goto_statement label: (statement_identifier)))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (goto_statement label: (statement_identifier)) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (goto_statement label: (statement_identifier)) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (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: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (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 (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))))) (goto_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: (goto_statement label: (statement_identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) right: (binary_expression left: (number_literal) right: (identifier)))))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) consequence: (goto_statement label: (statement_identifier))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (identifier) (identifier))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))))) (goto_statement label: (statement_identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (number_literal) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (goto_statement label: (statement_identifier))))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (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))))) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (number_literal) (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal) (number_literal)))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) consequence: (compound_statement (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (identifier)) (binary_expression left: (identifier) right: (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (break_statement))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))))))) condition: (parenthesized_expression (true))))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (goto_statement label: (statement_identifier))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (number_literal) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (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 (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (goto_statement label: (statement_identifier))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier) (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 (expression_statement (assignment_expression left: (identifier) right: (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: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) arguments: (argument_list (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (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: (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: (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: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_array_declarator declarator: (abstract_parenthesized_declarator (abstract_pointer_declarator)) size: (number_literal))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (identifier))) (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (char_literal (escape_sequence))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (do_statement body: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal))))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)) right: (identifier)))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) arguments: (argument_list (identifier)))))))))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (number_literal)))))))) (goto_statement label: (statement_identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (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 (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (goto_statement label: (statement_identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (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 (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (goto_statement label: (statement_identifier)))))))))))))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (goto_statement label: (statement_identifier)) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (goto_statement label: (statement_identifier)) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (goto_statement label: (statement_identifier)) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (goto_statement label: (statement_identifier)) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (goto_statement label: (statement_identifier)) (labeled_statement label: (statement_identifier) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (goto_statement label: (statement_identifier))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier) (identifier) (identifier))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (number_literal) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))))) (goto_statement label: (statement_identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (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))))) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (number_literal) (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal) (number_literal)))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) consequence: (compound_statement (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (identifier)) (binary_expression left: (identifier) right: (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (break_statement))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))))))) condition: (parenthesized_expression (true))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))))) (goto_statement label: (statement_identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (identifier) (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (number_literal) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))))) (goto_statement label: (statement_identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (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))))) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (number_literal) (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal) (number_literal)))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) consequence: (compound_statement (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (identifier)) (binary_expression left: (identifier) right: (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (break_statement))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))))))) condition: (parenthesized_expression (true))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))))) (goto_statement label: (statement_identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (identifier) (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (number_literal) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))))) (goto_statement label: (statement_identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (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))))) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (number_literal) (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal) (number_literal)))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) consequence: (compound_statement (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (identifier)) (binary_expression left: (identifier) right: (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (break_statement))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))))))) condition: (parenthesized_expression (true))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))))) (goto_statement label: (statement_identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (identifier) (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))))) (goto_statement label: (statement_identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (goto_statement label: (statement_identifier))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (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: (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)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (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: (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)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (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: (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)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (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: (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)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (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: (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)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (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: (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)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (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: (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)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (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: (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)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (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: (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)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (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: (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)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (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: (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)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (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: (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)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (return_statement (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))))) (return_statement (identifier)))))

char * MASKED(char *param_1,char *param_2)

{
  undefined1 uVar16;
  char *pcVar1;
  int iVar2;
  int iVar3;
  undefined1 *puVar4;
  char cVar17;
  int iVar5;
  int iVar6;
  byte bVar18;
  int iVar7;
  int iVar8;
  int iVar9;
  undefined4 uVar10;
  int iVar11;
  uint uVar12;
  int iVar13;
  int iVar14;
  undefined4 uVar15;
  undefined4 extraout_v1;
  uint extraout_v1_00;
  uint extraout_v1_01;
  undefined4 extraout_v1_02;
  undefined4 extraout_v1_03;
  undefined4 extraout_v1_04;
  undefined4 extraout_v1_05;
  int iVar19;
  int iVar20;
  undefined1 *puVar21;
  int iVar22;
  char *unaff_s1;
  char *pcVar23;
  char *unaff_s2;
  int iVar24;
  int unaff_s3;
  undefined4 *puVar25;
  char *unaff_s4;
  undefined4 uVar26;
  char *unaff_s5;
  char *pcVar27;
  int unaff_s6;
  int iVar28;
  uint uVar29;
  int unaff_s7;
  undefined *puVar30;
  int *unaff_s8;
  code *pcVar31;
  char *pcStack_10fc;
  undefined1 *puStack_10ec;
  uint uStack_10e4;
  undefined1 *puStack_10dc;
  uint uStack_10d4;
  int iStack_10cc;
  uint uStack_10c8;
  undefined1 uStack_10b0;
  undefined1 uStack_10af;
  char cStack_10ae;
  undefined1 uStack_10ad;
  undefined4 uStack_10ac;
  int iStack_10a8;
  undefined4 uStack_10a4;
  undefined4 uStack_10a0;
  undefined4 uStack_109c;
  undefined4 uStack_1098;
  undefined1 auStack_1094 [4];
  undefined4 uStack_1090;
  undefined4 uStack_108c;
  undefined1 uStack_1088;
  undefined1 auStack_1084 [4096];
  int iStack_84;
  char *pcStack_80;
  char *pcStack_7c;
  char *pcStack_78;
  int iStack_74;
  char *pcStack_70;
  char *pcStack_6c;
  int iStack_68;
  int iStack_64;
  int *piStack_60;
  code *pcStack_5c;
  undefined1 local_30 [3];
  char cStack_2d;
  int local_2c;
  
  puVar30 = PTR_s__003f9950;
  local_2c = *(int *)PTR___stack_chk_guard_003fa248;
  if (*param_1 == '\0') {
    pcVar1 = (char *)0x0;
  }
  else {
    unaff_s2 = param_1;
    if (*param_1 == ';') {
      pcVar1 = (char *)0x1;
LAB_0028466c:
      if (param_1 == (char *)0x0) {
        pcVar1 = (char *)0x0;
      }
      else {
        if (((char *)0x3 < pcVar1) && (param_1[1] == '#')) {
          param_2 = PTR_s__003f9950 + -0x4900;
          iVar20 = (*(code *)PTR_sscanf_003f9e4c)(param_1,param_2,local_30);
          unaff_s4 = puVar30 + -0x46bf;
          if (iVar20 == 1) {
            if (param_1[3] == ';') {
              pcVar1 = (char *)0x3;
LAB_002848d4:
              unaff_s1 = param_1 + (int)(pcVar1 + 1);
              iVar20 = (*(code *)PTR_strlen_003fa350)(unaff_s1);
              param_2 = unaff_s1;
              (*(code *)PTR_memmove_003f9f68)(param_1 + 1,unaff_s1,iVar20 + 1);
            }
            else {
              if (param_1[4] == ';') {
                pcVar1 = &DAT_00000004;
                goto LAB_002848d4;
              }
              if (param_1[5] == ';') {
                pcVar1 = &DAT_00000005;
                goto LAB_002848d4;
              }
              pcVar1 = &DAT_00000006;
            }
            *param_1 = cStack_2d;
            goto LAB_00284620;
          }
        }
        unaff_s4 = puVar30 + -0x46bf;
        unaff_s6 = 0;
        do {
          pcVar27 = (char *)(uint)(byte)unaff_s4[-1];
          unaff_s1 = unaff_s4;
          unaff_s5 = pcVar27;
          if ((int)pcVar27 <= (int)pcVar1) {
            if (param_1 != unaff_s4) {
              iVar20 = (int)*param_1;
              unaff_s5 = param_1;
              if ((iVar20 != 0) && (*unaff_s4 != '\0')) {
                unaff_s8 = (int *)(*(code *)PTR___ctype_b_loc_003fa44c)();
                pcVar23 = unaff_s4;
                while( true ) {
                  unaff_s7 = iVar20;
                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {
                    unaff_s7 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);
                  }
                  iVar20 = (int)*pcVar23;
                  if ((*(ushort *)(*unaff_s8 + iVar20 * 2) & 2) != 0) {
                    iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)(iVar20);
                  }
                  unaff_s1 = pcVar23;
                  if ((unaff_s7 != iVar20) ||
                     (unaff_s1 = unaff_s4 + (int)(pcVar27 + -1),
                     unaff_s4 + (int)(pcVar27 + -1) == pcVar23)) break;
                  unaff_s5 = unaff_s5 + 1;
                  iVar20 = (int)*unaff_s5;
                  pcVar23 = pcVar23 + 1;
                  unaff_s1 = pcVar23;
                  if ((iVar20 == 0) || (*pcVar23 == '\0')) break;
                }
              }
              unaff_s3 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s5);
              iVar20 = (*(code *)PTR_LocaleUppercase_003fa768)((int)*unaff_s1);
              if (unaff_s3 != iVar20) goto LAB_002847f0;
            }
            param_2 = param_1 + (int)pcVar27;
            iVar20 = (*(code *)PTR_strlen_003fa350)(param_2);
            (*(code *)PTR_memmove_003f9f68)(param_1 + 1,param_2,iVar20 + 1);
            *param_1 = PTR_s__003f9950[unaff_s6 * 9 + -0x46b8];
            pcVar1 = pcVar27 + -1;
            goto LAB_00284620;
          }
LAB_002847f0:
          unaff_s6 = unaff_s6 + 1;
          unaff_s4 = unaff_s4 + 9;
        } while (unaff_s6 != 3);
        pcVar1 = (char *)0x0;
      }
    }
    else {
      pcVar1 = param_1 + 1;
      iVar20 = 1;
      param_2 = &DAT_00000007;
      do {
        if (*pcVar1 == '\0') {
          pcVar1 = (char *)0x0;
          goto LAB_00284620;
        }
        if (*pcVar1 == ';') {
          pcVar1 = (char *)(iVar20 + 1);
          if (pcVar1 == (char *)0x0) goto LAB_00284620;
          goto LAB_0028466c;
        }
        iVar20 = iVar20 + 1;
        pcVar1 = pcVar1 + 1;
      } while (iVar20 != 7);
      pcVar1 = (char *)0x0;
    }
  }
LAB_00284620:
  if (local_2c == *(int *)PTR___stack_chk_guard_003fa248) {
    return pcVar1;
  }
  pcVar31 = FUN_00284930;
  iVar20 = local_2c;
  puVar30 = PTR___stack_chk_fail_003fa07c;
  (*(code *)PTR___stack_chk_fail_003fa07c)();
  iStack_84 = **(int **)(puVar30 + 0x175918);
  pcStack_80 = pcVar1;
  pcStack_7c = unaff_s1;
  pcStack_78 = unaff_s2;
  iStack_74 = unaff_s3;
  pcStack_70 = unaff_s4;
  pcStack_6c = unaff_s5;
  iStack_68 = unaff_s6;
  iStack_64 = unaff_s7;
  piStack_60 = unaff_s8;
  pcStack_5c = pcVar31;
  if (iVar20 == 0) {
    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))
                               (*(int *)(puVar30 + 0x174fb0) + 0x3d48,
                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a5,
                                *(int *)(puVar30 + 0x175020) + -0x46f0);
    return pcVar1;
  }
  if (*(int *)(iVar20 + 0x3214) != -0x54535255) {
    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))
                               (*(int *)(puVar30 + 0x174fb0) + 0x3d70,
                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4a6,
                                *(int *)(puVar30 + 0x175020) + -0x46f0);
    return pcVar1;
  }
  if (*(int *)(iVar20 + 0x3210) != 0) {
    (**(code **)(puVar30 + 0x1758c8))
              (0x8000,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700,
               0x4a8,*(int *)(puVar30 + 0x174fb8) + -0x2f6c,iVar20 + 0x2210);
  }
  if (param_2 == (char *)0x0) {
    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))
                               (*(int *)(puVar30 + 0x174fb0) + 0x4c80,
                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4aa,
                                *(int *)(puVar30 + 0x175020) + -0x46f0);
    return pcVar1;
  }
  if (*(int *)(param_2 + 0x1c) != -0x54535255) {
    pcVar1 = (char *)(**(code **)(puVar30 + 0x175cf0))
                               (*(int *)(puVar30 + 0x174fb0) + 0x595c,
                                *(int *)(puVar30 + 0x175020) + -0x48cc,0x4ab,
                                *(int *)(puVar30 + 0x175020) + -0x46f0);
    return pcVar1;
  }
  pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175cf4))(iVar20,param_2);
  iVar2 = (**(code **)(puVar30 + 0x175934))(iVar20,pcStack_10fc,2,param_2);
  if (iVar2 == 0) {
    (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
    pcStack_10fc = (char *)0x0;
    goto LAB_00287858;
  }
  pcStack_10fc[0x18] = '\0';
  pcStack_10fc[0x19] = '\0';
  pcStack_10fc[0x1a] = '\0';
  pcStack_10fc[0x1b] = '\x01';
  pcStack_10fc[0x1c] = '\0';
  pcStack_10fc[0x1d] = '\0';
  pcStack_10fc[0x1e] = '\0';
  pcStack_10fc[0x1f] = '\x01';
  iVar2 = (**(code **)(puVar30 + 0x175578))(pcStack_10fc,param_2);
  if (iVar2 == 0) {
    (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
    pcStack_10fc = (char *)0x0;
    goto LAB_00287858;
  }
  iVar2 = iVar20 + 0x210;
  iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x7890,4);
  if (iVar3 == 0) {
    iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);
    if (iVar3 == 0) {
      (**(code **)(puVar30 + 0x175608))
                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c2,400,
                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                 iVar20 + 0x2210);
      if (pcStack_10fc != (char *)0x0) {
        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
        pcStack_10fc = (char *)0x0;
      }
      goto LAB_00287858;
    }
    puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(1,1);
    if (puVar4 == (undefined1 *)0x0) {
      (**(code **)(puVar30 + 0x175634))(iVar3);
      (**(code **)(puVar30 + 0x175608))
                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4c7,400,
                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                 iVar20 + 0x2210);
      if (pcStack_10fc != (char *)0x0) {
        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
        pcStack_10fc = (char *)0x0;
      }
      goto LAB_00287858;
    }
    *puVar4 = 0;
    (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),puVar4);
    iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78a0);
    if (iVar19 != 0) {
      iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78ac);
      if (iVar19 == 0) {
        puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);
        if (puVar4 != (undefined1 *)0x0) {
          uVar15 = (**(code **)(puVar30 + 0x175bdc))();
          iStack_10cc = 0x1000;
          uStack_10d4 = 0;
          uStack_10c8 = 0;
          puStack_10dc = (undefined1 *)0x0;
          cVar17 = '\0';
          puStack_10ec = (undefined1 *)0x0;
          iVar19 = 0;
          iVar11 = 0;
          iVar13 = *(int *)(puVar30 + 0x175020);
          iVar22 = *(int *)(puVar30 + 0x1752b0);
          iVar14 = *(int *)(puVar30 + 0x174fb8);
          puVar21 = puVar4;
LAB_00285dec:
          do {
            iVar8 = (**(code **)(puVar30 + 0x175a78))(pcStack_10fc);
            if ((iVar8 != -1) && (iVar8 != 10)) {
              iVar9 = (**(code **)(puVar30 + 0x175e30))(pcStack_10fc);
              iVar24 = (int)puVar21 - (int)puVar4;
              if (iVar9 == 0) {
                if (iStack_10cc <= iVar24 + 1) {
                  iStack_10cc = iStack_10cc * 2;
                  puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1)
                  ;
                  if (puVar4 == (undefined1 *)0x0) goto LAB_00285f24;
                  puVar21 = puVar4 + iVar24;
                }
                *puVar21 = (char)iVar8;
                puVar21 = puVar21 + 1;
                goto LAB_00285dec;
              }
            }
            if ((puVar4 == (undefined1 *)0x0) ||
               (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0))
            goto LAB_00285f24;
            *puVar21 = 0;
            uStack_10ac = 0;
            iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);
            if (iVar11 == 0) {
              (**(code **)(puVar30 + 0x175450))(uVar15);
              goto LAB_00287bf8;
            }
            iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);
            if (iVar19 == 0) {
              (**(code **)(puVar30 + 0x175450))(uVar15);
              iVar19 = 0;
              goto LAB_00287be8;
            }
            iVar9 = *(int *)(puVar30 + 0x174fc8);
            iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;
            iVar8 = 0;
            while (iVar6 = (**(code **)(puVar30 + 0x175720))
                                     (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,
                                      iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),
                  iVar6 == 0) {
              if (iVar8 == 0) {
                iStack_10a8 = 0;
                iVar7 = *(int *)(puVar30 + 0x174fc8);
                iVar28 = *(int *)(puVar30 + 0x174fb0);
                iVar6 = 0;
LAB_002857fc:
                do {
                  iVar5 = (**(code **)(puVar30 + 0x175720))
                                    (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,
                                     0,&cStack_10ae,&iStack_10a8,&uStack_10ad);
                  if (iVar5 != 0) goto LAB_00285914;
                  if (iVar6 == 1) {
                    puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175a28))(iVar19,0,10);
                  }
                  else if (iVar6 == 2) {
                    iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);
                    puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1)
                    ;
                    if (puStack_10ec != (undefined1 *)0x0) {
                      iVar6 = (**(code **)(puVar30 + 0x175a20))(iVar19);
                      (**(code **)(puVar30 + 0x175f24))(puStack_10ec,iVar19,iVar6 + 0x1000);
                      iVar6 = 3;
                      goto LAB_002857fc;
                    }
                  }
                  else if (iVar6 == 0) {
                    iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);
                    if (iVar5 == 0) {
                      cVar17 = -1;
                    }
                    else {
                      cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);
                    }
                  }
                  iVar6 = iVar6 + 1;
                } while( true );
              }
              if (iVar8 != 1) goto LAB_00285914;
              iStack_10a8 = 0;
              uVar12 = (**(code **)(puVar30 + 0x175a20))();
              while (iVar6 = (**(code **)(puVar30 + 0x175720))
                                       (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,
                                        iVar24,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0
                    ) {
                if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {
                  iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);
                  if ((int)uVar12 < iVar6) {
                    uVar12 = 0;
                  }
                  else {
                    uVar12 = uVar12 - iVar6;
                  }
                }
              }
              if (cVar17 == -1) {
                if (0 < (int)uStack_10c8) {
                  iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);
                  if ((iVar6 < 0) || (iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3), iVar6 < 0))
                  goto LAB_00287db0;
                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);
                  iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);
                  if (iVar6 < 0) goto LAB_00287db0;
                  uStack_10c8 = 0;
                }
                if ((uStack_10d4 & 1) != 0) {
                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);
                  uStack_10d4 = uStack_10d4 + 1;
                }
                (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);
                (**(code **)(puVar30 + 0x175970))(iVar3,(uint)puStack_10dc & 0xffff);
                if (puStack_10ec == (undefined1 *)0x0) {
                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);
                  iVar6 = uStack_10d4 + 7;
LAB_00287bac:
                  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);
                  iVar6 = iVar6 + 1;
                }
                else {
                  bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10ec);
                  (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);
                  uVar29 = (uint)bVar18;
                  if (uVar29 != 0) {
                    puVar21 = puStack_10ec;
                    do {
                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);
                      puVar21 = puVar21 + 1;
                    } while (puVar21 != puStack_10ec + uVar29);
                  }
                  iVar6 = uStack_10d4 + 7 + uVar29;
                  if ((bVar18 & 1) == 0) goto LAB_00287bac;
                }
                if (puStack_10dc == (undefined1 *)0x404) {
                  iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);
                  if (iVar7 < 0) goto LAB_00287db0;
                  (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);
                  uStack_10d4 = iVar6 + 4;
                  uStack_10c8 = uStack_10d4;
                }
                else {
                  (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);
                  iStack_10a8 = 0;
                  uStack_10d4 = uVar12 + iVar6 + 4;
                  iVar6 = uVar12 - 1;
                  if (uVar12 != 0) {
                    iStack_10a8 = 0;
                    do {
                      puVar21 = (undefined1 *)(iVar11 + iStack_10a8);
                      iStack_10a8 = iStack_10a8 + 1;
                      (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);
                      iVar6 = iVar6 + -1;
                    } while (iVar6 != -1);
                  }
                  if ((uStack_10d4 & 1) != 0) {
                    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);
                    uStack_10d4 = uStack_10d4 + 1;
                  }
                }
LAB_00285914:
                iVar8 = iVar8 + 1;
              }
              else {
                if (0x7fff < (int)uVar12) goto LAB_00285914;
                (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);
                (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);
                (**(code **)(puVar30 + 0x1756c4))(iVar3,(uint)puStack_10dc & 0xff);
                (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);
                iStack_10a8 = 0;
                uStack_10d4 = uVar12 + uStack_10d4 + 5;
                iVar6 = uVar12 - 1;
                if (uVar12 == 0) goto LAB_00285914;
                iStack_10a8 = 0;
                do {
                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);
                  iStack_10a8 = iStack_10a8 + 1;
                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);
                  iVar6 = iVar6 + -1;
                } while (iVar6 != -1);
                iVar8 = 2;
              }
            }
            iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);
            iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);
            puVar21 = puVar4;
            if (puStack_10ec != (undefined1 *)0x0) {
              puStack_10ec = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10ec);
            }
          } while( true );
        }
        goto LAB_00287db0;
      }
      iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);
      if (iVar19 != 0) {
        (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);
        do {
          iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);
          if (iVar13 == 0) goto LAB_00286038;
          iVar22 = 0;
          if (0 < iVar13) {
            do {
              iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);
              if (iVar14 < 1) {
                if (iVar22 < iVar13) goto LAB_00286038;
                break;
              }
              iVar22 = iVar22 + iVar14;
            } while (iVar22 < iVar13);
          }
        } while( true );
      }
      uStack_10d4 = 1;
      goto LAB_00286050;
    }
    puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(0x1000,1);
    if (puVar4 == (undefined1 *)0x0) {
LAB_0028544c:
      uStack_10d4 = 0xffffffff;
    }
    else {
      uVar15 = (**(code **)(puVar30 + 0x175bdc))();
      iStack_10cc = 0x1000;
      uStack_10d4 = 0;
      uStack_10c8 = 0;
      uStack_10e4 = 0;
      cVar17 = '\0';
      puStack_10dc = (undefined1 *)0x0;
      iVar19 = 0;
      iVar11 = 0;
      iVar13 = *(int *)(puVar30 + 0x175020);
      iVar22 = *(int *)(puVar30 + 0x1752b0);
      iVar14 = *(int *)(puVar30 + 0x174fb8);
      puVar21 = puVar4;
      while( true ) {
        while ((iVar8 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar8 != -1 &&
               (iVar9 = (int)puVar21 - (int)puVar4, iVar8 != 10))) {
          if (iStack_10cc <= iVar9 + 1) {
            iStack_10cc = iStack_10cc * 2;
            puVar4 = (undefined1 *)(**(code **)(puVar30 + 0x175b08))(puVar4,iStack_10cc + 2,1);
            if (puVar4 == (undefined1 *)0x0) goto LAB_0028573c;
            puVar21 = puVar4 + iVar9;
          }
          *puVar21 = (char)iVar8;
          puVar21 = puVar21 + 1;
        }
        if ((puVar4 == (undefined1 *)0x0) ||
           (iStack_10cc = ((int)puVar21 - (int)puVar4) + 1, (int)puVar21 - (int)puVar4 == 0)) break;
        *puVar21 = 0;
        uStack_10ac = 0;
        iVar11 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);
        if (iVar11 == 0) {
          (**(code **)(puVar30 + 0x175450))(uVar15);
          goto LAB_002879d4;
        }
        iVar19 = (**(code **)(puVar30 + 0x175bf4))(iStack_10cc,1);
        if (iVar19 == 0) {
          (**(code **)(puVar30 + 0x175450))(uVar15);
          iVar19 = 0;
          goto LAB_002879c4;
        }
        iVar9 = *(int *)(puVar30 + 0x174fc8);
        iVar24 = *(int *)(puVar30 + 0x174fb8) + -0x2d8;
        iVar8 = 0;
        while (iVar6 = (**(code **)(puVar30 + 0x175720))
                                 (uVar15,0,iVar11,iStack_10cc,puVar4,iVar24,iVar9 + 0x2c44,
                                  iVar13 + 0x7178,0,&uStack_10b0,&uStack_10ac,&uStack_10af),
              iVar6 == 0) {
          if (iVar8 == 0) {
            iStack_10a8 = 0;
            iVar7 = *(int *)(puVar30 + 0x174fc8);
            iVar28 = *(int *)(puVar30 + 0x174fb0);
            iVar6 = 0;
LAB_00284ff4:
            do {
              iVar5 = (**(code **)(puVar30 + 0x175720))
                                (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar7 + 0xabc,iVar24,0,
                                 &cStack_10ae,&iStack_10a8,&uStack_10ad);
              if (iVar5 != 0) goto LAB_002850f4;
              if (iVar6 == 1) {
                uStack_10e4 = (**(code **)(puVar30 + 0x175a28))(iVar19,0,10);
              }
              else if (iVar6 == 2) {
                iVar5 = (**(code **)(puVar30 + 0x175a20))(iVar19);
                puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x175bf4))(iVar5 + 0x1000,1);
                if (puStack_10dc != (undefined1 *)0x0) {
                  (**(code **)(puVar30 + 0x17595c))(puStack_10dc,iVar19);
                  iVar6 = 3;
                  goto LAB_00284ff4;
                }
              }
              else if (iVar6 == 0) {
                iVar5 = (**(code **)(puVar30 + 0x1753e4))(iVar19,iVar28 + 0x7890);
                if (iVar5 == 0) {
                  cVar17 = -1;
                }
                else {
                  cVar17 = (**(code **)(puVar30 + 0x175c34))(iVar19,0,10);
                }
              }
              iVar6 = iVar6 + 1;
            } while( true );
          }
          if (iVar8 != 1) goto LAB_002850f4;
          iStack_10a8 = 0;
          uVar12 = (**(code **)(puVar30 + 0x175a20))();
          while (iVar6 = (**(code **)(puVar30 + 0x175720))
                                   (uVar15,0,iVar19,iStack_10cc,iVar11,iVar24,iVar14 + -0x3bc,iVar24
                                    ,0,&cStack_10ae,&iStack_10a8,&uStack_10ad), iVar6 == 0) {
            if ((cStack_10ae != '\0') && (0 < iStack_10a8)) {
              iVar6 = (*(code *)(iVar22 + 0x458c))(iVar11 + iStack_10a8 + -1);
              if ((int)uVar12 < iVar6) {
                uVar12 = 0;
              }
              else {
                uVar12 = uVar12 - iVar6;
              }
            }
          }
          if (cVar17 == -1) {
            if (0 < (int)uStack_10c8) {
              iVar6 = (**(code **)(puVar30 + 0x175a04))(iVar3);
              if (iVar6 < 0) {
                (**(code **)(puVar30 + 0x17575c))(puVar4);
                goto LAB_0028544c;
              }
              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);
              if (iVar6 < 0) {
                (**(code **)(puVar30 + 0x17575c))(puVar4,uStack_10d4 - uStack_10c8);
                goto LAB_0028544c;
              }
              (**(code **)(puVar30 + 0x1759bc))(iVar3);
              iVar6 = (**(code **)(puVar30 + 0x175a10))(iVar3);
              if (iVar6 < 0) {
                (**(code **)(puVar30 + 0x17575c))(puVar4);
                goto LAB_0028544c;
              }
              uStack_10c8 = 0;
            }
            if ((uStack_10d4 & 1) != 0) {
              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);
              uStack_10d4 = uStack_10d4 + 1;
            }
            (**(code **)(puVar30 + 0x175c90))(iVar3,*(int *)(puVar30 + 0x174fb0) + 0x7890);
            (**(code **)(puVar30 + 0x175970))(iVar3,uStack_10e4 & 0xffff);
            if (puStack_10dc == (undefined1 *)0x0) {
              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);
              iVar6 = uStack_10d4 + 7;
LAB_00287988:
              (**(code **)(puVar30 + 0x1756c4))(iVar3,0);
              iVar6 = iVar6 + 1;
            }
            else {
              bVar18 = (**(code **)(puVar30 + 0x175a20))(puStack_10dc);
              (**(code **)(puVar30 + 0x1756c4))(iVar3,bVar18);
              uVar29 = (uint)bVar18;
              if (uVar29 != 0) {
                puVar21 = puStack_10dc;
                do {
                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);
                  puVar21 = puVar21 + 1;
                } while (puVar21 != puStack_10dc + uVar29);
              }
              iVar6 = uStack_10d4 + 7 + uVar29;
              if ((bVar18 & 1) == 0) goto LAB_00287988;
            }
            if (uStack_10e4 == 0x404) {
              iVar7 = (**(code **)(puVar30 + 0x175a04))(iVar3);
              if (iVar7 < 0) goto LAB_0028544c;
              (**(code **)(puVar30 + 0x1759bc))(iVar3,0xffffffff);
              uStack_10d4 = iVar6 + 4;
              uStack_10c8 = uStack_10d4;
            }
            else {
              (**(code **)(puVar30 + 0x1759bc))(iVar3,uVar12);
              iStack_10a8 = 0;
              uStack_10d4 = uVar12 + iVar6 + 4;
              iVar6 = uVar12 - 1;
              if (0 < (int)uVar12) {
                iStack_10a8 = 0;
                do {
                  puVar21 = (undefined1 *)(iVar11 + iStack_10a8);
                  iStack_10a8 = iStack_10a8 + 1;
                  (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);
                  iVar6 = iVar6 + -1;
                } while (iVar6 != -1);
              }
              if ((uStack_10d4 & 1) != 0) {
                (**(code **)(puVar30 + 0x1756c4))(iVar3,0);
                uStack_10d4 = uStack_10d4 + 1;
              }
            }
LAB_002850f4:
            iVar8 = iVar8 + 1;
          }
          else {
            if (0x7fff < (int)uVar12) goto LAB_002850f4;
            (**(code **)(puVar30 + 0x1756c4))(iVar3,0x1c);
            (**(code **)(puVar30 + 0x1756c4))(iVar3,cVar17);
            (**(code **)(puVar30 + 0x1756c4))(iVar3,uStack_10e4 & 0xff);
            (**(code **)(puVar30 + 0x175970))(iVar3,uVar12 & 0xffff);
            iStack_10a8 = 0;
            uStack_10d4 = uVar12 + uStack_10d4 + 5;
            iVar6 = uVar12 - 1;
            if ((int)uVar12 < 1) goto LAB_002850f4;
            iStack_10a8 = 0;
            do {
              puVar21 = (undefined1 *)(iVar11 + iStack_10a8);
              iStack_10a8 = iStack_10a8 + 1;
              (**(code **)(puVar30 + 0x1756c4))(iVar3,*puVar21);
              iVar6 = iVar6 + -1;
            } while (iVar6 != -1);
            iVar8 = 2;
          }
        }
        iVar11 = (**(code **)(puVar30 + 0x17575c))(iVar11);
        iVar19 = (**(code **)(puVar30 + 0x17575c))(iVar19);
        puVar21 = puVar4;
        if (puStack_10dc != (undefined1 *)0x0) {
          puStack_10dc = (undefined1 *)(**(code **)(puVar30 + 0x17575c))(puStack_10dc);
        }
      }
LAB_0028573c:
      (**(code **)(puVar30 + 0x175450))(uVar15);
      if (iVar11 != 0) {
LAB_002879c4:
        (**(code **)(puVar30 + 0x17575c))(iVar11);
      }
LAB_002879d4:
      if (iVar19 != 0) {
        (**(code **)(puVar30 + 0x17575c))(iVar19);
      }
      if (puStack_10dc != (undefined1 *)0x0) {
        (**(code **)(puVar30 + 0x17575c))(puStack_10dc);
      }
      (**(code **)(puVar30 + 0x17575c))(puVar4);
      if (0 < (int)uStack_10c8) {
        iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);
        if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {
          (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);
          iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);
          if (-1 < iVar19) goto LAB_00287ab4;
        }
        goto LAB_0028544c;
      }
LAB_00287ab4:
      if (uStack_10d4 == 0) {
        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));
        (**(code **)(puVar30 + 0x1756a8))(uVar15);
        (**(code **)(puVar30 + 0x175634))(iVar3);
        (**(code **)(puVar30 + 0x175608))
                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                   *(int *)(puVar30 + 0x175020) + -0x4700,0x4d3,0x1a9,
                   *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                   iVar20 + 0x2210);
        if (pcStack_10fc != (char *)0x0) {
          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
          pcStack_10fc = (char *)0x0;
        }
        goto LAB_00287858;
      }
      if ((uStack_10d4 & 1) == 0) goto LAB_00286050;
    }
    (**(code **)(puVar30 + 0x1756c4))(iVar3,0);
    goto LAB_00286050;
  }
  uStack_10d4 = 1;
  goto LAB_00284a7c;
LAB_00286038:
  (**(code **)(puVar30 + 0x1756a8))(iVar19);
  uStack_10d4 = 1;
  goto LAB_00286050;
LAB_00285f24:
  (**(code **)(puVar30 + 0x175450))(uVar15);
  if (iVar11 != 0) {
LAB_00287be8:
    (**(code **)(puVar30 + 0x17575c))(iVar11);
  }
LAB_00287bf8:
  if (iVar19 != 0) {
    (**(code **)(puVar30 + 0x17575c))(iVar19);
  }
  if (puStack_10ec != (undefined1 *)0x0) {
    (**(code **)(puVar30 + 0x17575c))(puStack_10ec);
  }
  (**(code **)(puVar30 + 0x17575c))(puVar4);
  if ((int)uStack_10c8 < 1) {
LAB_00287cd8:
    if (uStack_10d4 == 0) {
      uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));
      (**(code **)(puVar30 + 0x1756a8))(uVar15);
      (**(code **)(puVar30 + 0x175634))(iVar3);
      (**(code **)(puVar30 + 0x175608))
                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                 *(int *)(puVar30 + 0x175020) + -0x4700,0x4e0,0x1a9,
                 *(int *)(puVar30 + 0x174fb4) + 0x1854,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                 iVar20 + 0x2210);
      if (pcStack_10fc != (char *)0x0) {
        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
        pcStack_10fc = (char *)0x0;
      }
      goto LAB_00287858;
    }
    if ((uStack_10d4 & 1) == 0) goto LAB_00286050;
  }
  else {
    iVar19 = (**(code **)(puVar30 + 0x175a04))(iVar3);
    if ((-1 < iVar19) && (iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3), -1 < iVar19)) {
      (**(code **)(puVar30 + 0x1759bc))(iVar3,uStack_10d4 - uStack_10c8);
      iVar19 = (**(code **)(puVar30 + 0x175a10))(iVar3);
      if (-1 < iVar19) goto LAB_00287cd8;
    }
LAB_00287db0:
    uStack_10d4 = 0xffffffff;
  }
  (**(code **)(puVar30 + 0x1756c4))(iVar3,0);
LAB_00286050:
  uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);
  (**(code **)(puVar30 + 0x175ba0))(iVar3);
  iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1);
  if (iVar19 == 0) {
    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));
    (**(code **)(puVar30 + 0x1756a8))(uVar15);
    (**(code **)(puVar30 + 0x175634))(iVar3);
    (**(code **)(puVar30 + 0x175608))
              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700
               ,0x4ee,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,
               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);
    if (pcStack_10fc != (char *)0x0) {
      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
      pcStack_10fc = (char *)0x0;
    }
    goto LAB_00287858;
  }
  iVar13 = (**(code **)(puVar30 + 0x175d80))
                     (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f8,iVar19,param_2);
  (**(code **)(puVar30 + 0x1754e4))(iVar19);
  uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));
  (**(code **)(puVar30 + 0x1756a8))(uVar15);
  (**(code **)(puVar30 + 0x175634))(iVar3);
  if (iVar13 == 0) {
    (**(code **)(puVar30 + 0x175608))
              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700
               ,0x4f6,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,
               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);
    if (pcStack_10fc != (char *)0x0) {
      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
      pcStack_10fc = (char *)0x0;
    }
    goto LAB_00287858;
  }
LAB_00284a7c:
  iVar3 = (**(code **)(puVar30 + 0x175d04))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78b8,4);
  if (iVar3 == 0) {
    (**(code **)(puVar30 + 0x175464))(auStack_1084,0x1000,*(int *)(puVar30 + 0x175020) + -0x4858,1);
    iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);
    if (iVar3 == 0) {
      (**(code **)(puVar30 + 0x175608))
                (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                 *(int *)(puVar30 + 0x175020) + -0x4700,0x500,400,
                 *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                 iVar20 + 0x2210);
      if (pcStack_10fc != (char *)0x0) {
        (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
        (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
      }
    }
    else {
      iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);
      if (iVar19 == 0) {
        (**(code **)(puVar30 + 0x175634))(iVar3);
        (**(code **)(puVar30 + 0x175608))
                  (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                   *(int *)(puVar30 + 0x175020) + -0x4700,0x505,400,
                   *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                   iVar20 + 0x2210);
        if (pcStack_10fc != (char *)0x0) {
          (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
          (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
          pcStack_10fc = (char *)0x0;
          goto LAB_00287858;
        }
      }
      else {
        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);
        iVar19 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78c0);
        if (iVar19 != 0) {
          iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);
          if (iVar19 != 0) {
            (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);
            do {
              iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);
              if (iVar13 == 0) goto LAB_00286b70;
              iVar22 = 0;
              if (0 < iVar13) {
                do {
                  iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);
                  if (iVar14 < 1) {
                    if (iVar22 < iVar13) goto LAB_00286b70;
                    break;
                  }
                  iVar22 = iVar22 + iVar14;
                } while (iVar22 < iVar13);
              }
            } while( true );
          }
          goto LAB_00286b84;
        }
        if (*(int *)(iVar20 + 0x1ec) == 0) {
          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));
          (**(code **)(puVar30 + 0x1756a8))(uVar15);
          (**(code **)(puVar30 + 0x175634))(iVar3);
          (**(code **)(puVar30 + 0x175608))
                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                     *(int *)(puVar30 + 0x175020) + -0x4700,0x515,0x1c2,
                     *(int *)(puVar30 + 0x175020) + -0x48a4,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                     iVar20 + 0x2210);
          if (pcStack_10fc != (char *)0x0) {
            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
            pcStack_10fc = (char *)0x0;
            goto LAB_00287858;
          }
        }
        else {
          uVar15 = (**(code **)(puVar30 + 0x175548))();
          iVar19 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);
          if (iVar19 == 0) {
            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));
            (**(code **)(puVar30 + 0x1756a8))(uVar15);
            (**(code **)(puVar30 + 0x175634))(iVar3);
            (**(code **)(puVar30 + 0x175608))
                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                       *(int *)(puVar30 + 0x175020) + -0x4700,0x51e,400,
                       *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                       iVar20 + 0x2210);
            if (pcStack_10fc != (char *)0x0) {
              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
              pcStack_10fc = (char *)0x0;
              goto LAB_00287858;
            }
          }
          else {
            uVar26 = *(undefined4 *)(iVar19 + 0x3348);
            uVar10 = (**(code **)(puVar30 + 0x175550))(uVar15);
            uVar15 = (**(code **)(puVar30 + 0x175430))(uVar15);
            (**(code **)(puVar30 + 0x1759b0))(uVar26,uVar10,uVar15);
            iVar13 = FUN_00282440(pcStack_10fc,iVar3);
            if (iVar13 == 0xff) {
              iVar13 = FUN_00282440(pcStack_10fc,iVar3);
              iVar22 = *(int *)(puVar30 + 0x1752b0);
              if (iVar13 == 0xd8) {
                iVar13 = *(int *)(puVar30 + 0x175020);
                uVar15 = *(undefined4 *)(iVar13 + -0x4720);
LAB_002869d4:
                uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);
                if (uVar12 != 0xffffffff) {
                  if (uVar12 == 0xff) {
                    do {
                      uVar12 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);
                      if (uVar12 == 0xffffffff) goto LAB_00287dd0;
                    } while (uVar12 == 0xff);
                    if (uVar12 == 0xd9) goto LAB_002867e4;
                    if (uVar12 != 0xed) {
                      (**(code **)(puVar30 + 0x1756c4))(iVar3,0xff);
                      (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);
                    }
                    if (uVar12 == 0xe0) {
                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc,iVar3);
                      uStack_10a0 = *(undefined4 *)(iVar13 + -0x471c);
                      uStack_109c = *(undefined4 *)(iVar13 + -0x4718);
                      uStack_1098 = *(undefined4 *)(iVar13 + -0x4714);
                      auStack_1094 = *(undefined1 (*) [4])(iVar13 + -0x4710);
                      uStack_1090 = *(undefined4 *)(iVar13 + -0x470c);
                      uStack_108c = *(undefined4 *)(iVar13 + -0x4708);
                      uStack_1088 = *(undefined1 *)(iVar13 + -0x4704);
                      uStack_10a4 = uVar15;
                      (**(code **)(puVar30 + 0x175ba0))(iVar19);
                      uVar16 = (undefined1)(extraout_v1_00 + 0x10 >> 8);
                      uVar12 = extraout_v1_00;
                      if ((extraout_v1_00 & 1) != 0) {
                        uVar12 = extraout_v1_00 + 1;
                        uVar16 = (undefined1)(extraout_v1_00 + 0x11 >> 8);
                      }
                      uStack_10a4 = CONCAT31(CONCAT21(uStack_10a4._0_2_,uVar16),
                                             (char)uVar12 + '\x10');
                      puVar25 = &uStack_10a4;
                      do {
                        (**(code **)(puVar30 + 0x1756c4))(iVar3,*(undefined1 *)puVar25);
                        puVar25 = (undefined4 *)((int)puVar25 + 1);
                      } while (puVar25 != (undefined4 *)(auStack_1094 + 2));
                      do {
                        iVar14 = FUN_00282440(iVar19,iVar3);
                      } while (iVar14 != -1);
                      (**(code **)(puVar30 + 0x175ba0))(iVar19);
                      if ((extraout_v1_01 & 1) != 0) {
                        (**(code **)(puVar30 + 0x1756c4))(iVar3,0);
                      }
                    }
                    else if (uVar12 == 0xed) {
                      iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);
                      if ((iVar14 != -1) &&
                         (iVar11 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc), iVar11 != -1)) {
                        iVar11 = iVar14 * 0x100 + -2 + iVar11;
                        do {
                          if (iVar11 == 0) break;
                          iVar14 = (**(code **)(puVar30 + 0x175ed8))(pcStack_10fc);
                          iVar11 = iVar11 + -1;
                        } while (iVar14 != -1);
                      }
                    }
                    else {
                      if (uVar12 == 0xda) goto LAB_002867c8;
                      (*(code *)(iVar22 + 0x24b0))(pcStack_10fc);
                    }
                  }
                  else {
                    (**(code **)(puVar30 + 0x1756c4))(iVar3,uVar12 & 0xff);
                  }
                  goto LAB_002869d4;
                }
LAB_00287dd0:
                uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));
                (**(code **)(puVar30 + 0x1756a8))(uVar15);
                (**(code **)(puVar30 + 0x175634))(iVar19);
                goto LAB_00286b84;
              }
            }
            uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));
            (**(code **)(puVar30 + 0x1756a8))(uVar15);
            (**(code **)(puVar30 + 0x175634))(iVar19);
            (**(code **)(puVar30 + 0x175634))(iVar3);
            (**(code **)(puVar30 + 0x175608))
                      (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                       *(int *)(puVar30 + 0x175020) + -0x4700,0x529,0x1c2,
                       *(int *)(puVar30 + 0x175020) + -0x4850,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                       iVar20 + 0x2210);
            if (pcStack_10fc != (char *)0x0) {
              (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
              (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
              pcStack_10fc = (char *)0x0;
              goto LAB_00287858;
            }
          }
        }
      }
    }
    goto LAB_00286534;
  }
  iVar3 = *(int *)(puVar30 + 0x174fb0);
  goto LAB_00284aa4;
LAB_00286b70:
  (**(code **)(puVar30 + 0x1756a8))(iVar19);
  goto LAB_00286b84;
LAB_00286f40:
  (**(code **)(puVar30 + 0x1756a8))(iVar19);
  goto LAB_00286f50;
LAB_00287414:
  (**(code **)(puVar30 + 0x1756a8))(iVar19);
  goto LAB_00287424;
LAB_00287758:
  (**(code **)(puVar30 + 0x1756a8))(iVar3);
  goto LAB_00287768;
LAB_002867c8:
  do {
    iVar13 = FUN_00282440(pcStack_10fc,iVar3);
  } while (iVar13 != -1);
LAB_002867e4:
  uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar19 + 0x3348));
  (**(code **)(puVar30 + 0x1756a8))(uVar15);
  (**(code **)(puVar30 + 0x175634))(iVar19);
LAB_00286b84:
  uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);
  (**(code **)(puVar30 + 0x175ba0))(iVar3);
  iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_02);
  if (iVar19 == 0) {
    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));
    (**(code **)(puVar30 + 0x1756a8))(uVar15);
    (**(code **)(puVar30 + 0x175634))(iVar3);
    (**(code **)(puVar30 + 0x175608))
              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700
               ,0x535,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,
               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);
    if (pcStack_10fc != (char *)0x0) {
      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
      pcStack_10fc = (char *)0x0;
      goto LAB_00287858;
    }
  }
  else {
    iVar13 = (**(code **)(puVar30 + 0x175d80))(pcStack_10fc,auStack_1084,iVar19,param_2);
    (**(code **)(puVar30 + 0x1754e4))(iVar19);
    uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));
    (**(code **)(puVar30 + 0x1756a8))(uVar15);
    (**(code **)(puVar30 + 0x175634))(iVar3);
    iVar3 = *(int *)(puVar30 + 0x174fb0);
    if (iVar13 != 0) {
LAB_00284aa4:
      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78dc);
      if (iVar3 == 0) {
LAB_00284ae8:
        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);
        if (iVar3 == 0) {
          (**(code **)(puVar30 + 0x175608))
                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                     *(int *)(puVar30 + 0x175020) + -0x4700,0x544,400,
                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                     iVar20 + 0x2210);
          if (pcStack_10fc != (char *)0x0) {
            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
            pcStack_10fc = (char *)0x0;
          }
          goto LAB_00287858;
        }
        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);
        if (iVar19 == 0) {
          (**(code **)(puVar30 + 0x175634))(iVar3);
          (**(code **)(puVar30 + 0x175608))
                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                     *(int *)(puVar30 + 0x175020) + -0x4700,0x549,400,
                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                     iVar20 + 0x2210);
          if (pcStack_10fc != (char *)0x0) {
            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
            pcStack_10fc = (char *)0x0;
          }
          goto LAB_00287858;
        }
        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);
        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);
        if (iVar19 != 0) {
          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);
          do {
            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);
            if (iVar13 == 0) goto LAB_00286f40;
            iVar22 = 0;
            if (0 < iVar13) {
              do {
                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);
                if (iVar14 < 1) {
                  if (iVar22 < iVar13) goto LAB_00286f40;
                  break;
                }
                iVar22 = iVar22 + iVar14;
              } while (iVar22 < iVar13);
            }
          } while( true );
        }
LAB_00286f50:
        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);
        (**(code **)(puVar30 + 0x175ba0))(iVar3);
        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_03);
        if (iVar19 == 0) {
          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));
          (**(code **)(puVar30 + 0x1756a8))(uVar15);
          (**(code **)(puVar30 + 0x175634))(iVar3);
          (**(code **)(puVar30 + 0x175608))
                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                     *(int *)(puVar30 + 0x175020) + -0x4700,0x554,400,
                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                     iVar20 + 0x2210);
          if (pcStack_10fc != (char *)0x0) {
            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
            pcStack_10fc = (char *)0x0;
          }
          goto LAB_00287858;
        }
        (**(code **)(puVar30 + 0x175d80))
                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + -0x286c,iVar19,param_2);
        (**(code **)(puVar30 + 0x1754e4))(iVar19);
        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));
        (**(code **)(puVar30 + 0x1756a8))(uVar15);
        (**(code **)(puVar30 + 0x175634))(iVar3);
        iVar19 = *(int *)(puVar30 + 0x174fb0);
      }
      else {
        iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,*(int *)(puVar30 + 0x174fb0) + 0x78d8);
        iVar19 = *(int *)(puVar30 + 0x174fb0);
        if (iVar3 == 0) goto LAB_00284ae8;
      }
      iVar3 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar19 + 0x78e0);
      if (iVar3 == 0) {
        iVar3 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);
        if (iVar3 == 0) {
          (**(code **)(puVar30 + 0x175608))
                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                     *(int *)(puVar30 + 0x175020) + -0x4700,0x560,400,
                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                     iVar20 + 0x2210);
          if (pcStack_10fc != (char *)0x0) {
            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
            pcStack_10fc = (char *)0x0;
          }
          goto LAB_00287858;
        }
        iVar19 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);
        if (iVar19 == 0) {
          (**(code **)(puVar30 + 0x175634))(iVar3);
          (**(code **)(puVar30 + 0x175608))
                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                     *(int *)(puVar30 + 0x175020) + -0x4700,0x565,400,
                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                     iVar20 + 0x2210);
          if (pcStack_10fc != (char *)0x0) {
            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
            pcStack_10fc = (char *)0x0;
          }
          goto LAB_00287858;
        }
        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar3 + 0x3348),iVar19);
        iVar19 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);
        if (iVar19 != 0) {
          (**(code **)(puVar30 + 0x175dbc))(iVar19,0,0x14000);
          do {
            iVar13 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar19);
            if (iVar13 == 0) goto LAB_00287414;
            iVar22 = 0;
            if (0 < iVar13) {
              do {
                iVar14 = (**(code **)(puVar30 + 0x17607c))(iVar3,iVar13 - iVar22,iVar19 + iVar22);
                if (iVar14 < 1) {
                  if (iVar22 < iVar13) goto LAB_00287414;
                  break;
                }
                iVar22 = iVar22 + iVar14;
              } while (iVar22 < iVar13);
            }
          } while( true );
        }
LAB_00287424:
        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar3);
        (**(code **)(puVar30 + 0x175ba0))(iVar3);
        iVar19 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_04);
        if (iVar19 == 0) {
          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));
          (**(code **)(puVar30 + 0x1756a8))(uVar15);
          (**(code **)(puVar30 + 0x175634))(iVar3);
          (**(code **)(puVar30 + 0x175608))
                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                     *(int *)(puVar30 + 0x175020) + -0x4700,0x570,400,
                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                     iVar20 + 0x2210);
          if (pcStack_10fc != (char *)0x0) {
            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
            pcStack_10fc = (char *)0x0;
          }
          goto LAB_00287858;
        }
        (**(code **)(puVar30 + 0x175d80))
                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb4) + 0x17f0,iVar19,param_2);
        (**(code **)(puVar30 + 0x1754e4))(iVar19);
        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar3 + 0x3348));
        (**(code **)(puVar30 + 0x1756a8))(uVar15);
        (**(code **)(puVar30 + 0x175634))(iVar3);
        iVar3 = *(int *)(puVar30 + 0x174fb0);
      }
      else {
        iVar3 = *(int *)(puVar30 + 0x174fb0);
      }
      iVar2 = (**(code **)(puVar30 + 0x1757f8))(iVar2,iVar3 + 0x78d4);
      if (iVar2 == 0) {
        iVar2 = (**(code **)(puVar30 + 0x175cf4))(0,param_2);
        if (iVar2 == 0) {
          (**(code **)(puVar30 + 0x175608))
                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                     *(int *)(puVar30 + 0x175020) + -0x4700,0x57c,400,
                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                     iVar20 + 0x2210);
          if (pcStack_10fc != (char *)0x0) {
            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
            pcStack_10fc = (char *)0x0;
          }
          goto LAB_00287858;
        }
        iVar3 = (**(code **)(puVar30 + 0x175bf4))(uStack_10d4,1);
        if (iVar3 == 0) {
          (**(code **)(puVar30 + 0x175634))(iVar2);
          (**(code **)(puVar30 + 0x175608))
                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                     *(int *)(puVar30 + 0x175020) + -0x4700,0x581,400,
                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                     iVar20 + 0x2210);
          if (pcStack_10fc != (char *)0x0) {
            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
            pcStack_10fc = (char *)0x0;
          }
          goto LAB_00287858;
        }
        (**(code **)(puVar30 + 0x1759b0))(*(undefined4 *)(iVar2 + 0x3348),iVar3);
        iVar3 = (**(code **)(puVar30 + 0x175bf4))(0x14000,1);
        if (iVar3 != 0) {
          (**(code **)(puVar30 + 0x175dbc))(iVar3,0,0x14000);
          do {
            iVar19 = (**(code **)(puVar30 + 0x175494))(pcStack_10fc,0x14000,iVar3);
            if (iVar19 == 0) goto LAB_00287758;
            iVar13 = 0;
            if (0 < iVar19) {
              do {
                iVar22 = (**(code **)(puVar30 + 0x17607c))(iVar2,iVar19 - iVar13,iVar3 + iVar13);
                if (iVar22 < 1) {
                  if (iVar13 < iVar19) goto LAB_00287758;
                  break;
                }
                iVar13 = iVar13 + iVar22;
              } while (iVar13 < iVar19);
            }
          } while( true );
        }
LAB_00287768:
        uVar15 = (**(code **)(puVar30 + 0x1754cc))(iVar2);
        (**(code **)(puVar30 + 0x175ba0))(iVar2);
        iVar3 = (**(code **)(puVar30 + 0x175dac))(uVar15,extraout_v1_05);
        if (iVar3 == 0) {
          uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));
          (**(code **)(puVar30 + 0x1756a8))(uVar15);
          (**(code **)(puVar30 + 0x175634))(iVar2);
          (**(code **)(puVar30 + 0x175608))
                    (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,
                     *(int *)(puVar30 + 0x175020) + -0x4700,0x58c,400,
                     *(int *)(puVar30 + 0x174fb0) + 0x46c8,*(int *)(puVar30 + 0x174fb0) + 0x6e78,
                     iVar20 + 0x2210);
          if (pcStack_10fc != (char *)0x0) {
            (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
            (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
            pcStack_10fc = (char *)0x0;
          }
          goto LAB_00287858;
        }
        (**(code **)(puVar30 + 0x175d80))
                  (pcStack_10fc,*(int *)(puVar30 + 0x174fb8) + 0x76a8,iVar3,param_2);
        (**(code **)(puVar30 + 0x1754e4))(iVar3);
        uVar15 = (**(code **)(puVar30 + 0x175e54))(*(undefined4 *)(iVar2 + 0x3348));
        (**(code **)(puVar30 + 0x1756a8))(uVar15);
        (**(code **)(puVar30 + 0x175634))(iVar2);
      }
      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
      pcStack_10fc = (char *)(**(code **)(puVar30 + 0x175b34))(pcStack_10fc);
      goto LAB_00287858;
    }
    (**(code **)(puVar30 + 0x175608))
              (param_2,*(int *)(puVar30 + 0x175020) + -0x48cc,*(int *)(puVar30 + 0x175020) + -0x4700
               ,0x53d,400,*(int *)(puVar30 + 0x174fb0) + 0x46c8,
               *(int *)(puVar30 + 0x174fb0) + 0x6e78,iVar20 + 0x2210);
    if (pcStack_10fc != (char *)0x0) {
      (**(code **)(puVar30 + 0x175d70))(pcStack_10fc);
      (**(code **)(puVar30 + 0x175bf8))(pcStack_10fc);
      pcStack_10fc = (char *)0x0;
      goto LAB_00287858;
    }
  }
LAB_00286534:
  pcStack_10fc = (char *)0x0;
LAB_00287858:
  if (iStack_84 != **(int **)(puVar30 + 0x175918)) {
    pcVar31 = *(code **)(puVar30 + 0x17574c);
    (*pcVar31)();
    iVar19 = *(int *)(pcVar31 + 0x171abc);
    iVar20 = (**(code **)(pcVar31 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x7890,
                        *(int *)(pcVar31 + 0x171b2c) + -0x483c);
    iVar3 = *(int *)(pcVar31 + 0x171dbc) + 0x4930;
    *(int *)(iVar20 + 0x18) = iVar3;
    iVar2 = *(int *)(pcVar31 + 0x171dbc) + 0x3578;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar31 + 0x1720b0))(iVar20);
    iVar20 = (**(code **)(pcVar31 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78a0,
                        *(int *)(pcVar31 + 0x171b2c) + -0x4820);
    *(int *)(iVar20 + 0x18) = iVar3;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar31 + 0x1720b0))(iVar20);
    iVar20 = (**(code **)(pcVar31 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78ac,
                        *(int *)(pcVar31 + 0x171b2c) + -0x4800);
    *(int *)(iVar20 + 0x18) = iVar3;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar31 + 0x1720b0))(iVar20);
    iVar20 = (**(code **)(pcVar31 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78b8,
                        *(int *)(pcVar31 + 0x171b2c) + -0x47dc);
    *(int *)(iVar20 + 0x18) = iVar3;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar31 + 0x1720b0))(iVar20);
    iVar20 = (**(code **)(pcVar31 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78c0,
                        *(int *)(pcVar31 + 0x171b2c) + -0x47c0);
    *(int *)(iVar20 + 0x18) = iVar3;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar31 + 0x1720b0))(iVar20);
    iVar20 = (**(code **)(pcVar31 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78cc,
                        *(int *)(pcVar31 + 0x171b2c) + -0x47a8);
    *(int *)(iVar20 + 0x18) = iVar3;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar31 + 0x1720b0))(iVar20);
    iVar20 = (**(code **)(pcVar31 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d4,
                        *(int *)(pcVar31 + 0x171b2c) + -0x4788);
    *(int *)(iVar20 + 0x18) = iVar3;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar31 + 0x1720b0))(iVar20);
    iVar13 = *(int *)(pcVar31 + 0x171b2c);
    iVar20 = (**(code **)(pcVar31 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78d8,iVar13 + -0x4774);
    *(int *)(iVar20 + 0x18) = iVar3;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar31 + 0x1720b0))(iVar20);
    iVar20 = (**(code **)(pcVar31 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78dc,iVar13 + -0x4774);
    *(int *)(iVar20 + 0x18) = iVar3;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar31 + 0x1720b0))(iVar20);
    iVar20 = (**(code **)(pcVar31 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e0,
                        *(int *)(pcVar31 + 0x171b2c) + -0x4760);
    *(int *)(iVar20 + 0x18) = iVar3;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar31 + 0x1720b0))(iVar20);
    iVar13 = *(int *)(pcVar31 + 0x171b2c);
    iVar20 = (**(code **)(pcVar31 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78e8,iVar13 + -0x4750);
    *(int *)(iVar20 + 0x18) = iVar3;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar31 + 0x1720b0))(iVar20);
    iVar20 = (**(code **)(pcVar31 + 0x1727d0))
                       (iVar19 + 0x7898,*(int *)(pcVar31 + 0x171abc) + 0x78f4,iVar13 + -0x4750);
    *(int *)(iVar20 + 0x18) = iVar3;
    *(int *)(iVar20 + 0x1c) = iVar2;
    *(uint *)(iVar20 + 0x2c) = *(uint *)(iVar20 + 0x2c) ^ 1 | 0x280;
    (**(code **)(pcVar31 + 0x1720b0))(iVar20);
    return (char *)0x810;
  }
  return pcStack_10fc;
}

