
int ccm_add_nonce(ccm_state *ccm,uchar *nonce,ulong noncelen)

{
  byte bVar1;
  byte bVar2;
  int iVar3;
  ulong uVar4;
  long lVar5;
  ulong uVar6;
  ulong uVar7;
  
  if (ccm == (ccm_state *)0x0) {
                    /* WARNING: Subroutine does not return */
    crypt_argchk("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a);
  }
  if (nonce == (uchar *)0x0) {
                    /* WARNING: Subroutine does not return */
    crypt_argchk("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b);
  }
  if (0xd < noncelen) {
    noncelen = 0xd;
  }
  uVar6 = ccm->L;
  uVar4 = 0xf - noncelen;
  ccm->noncelen = noncelen;
  if (uVar6 < uVar4) {
    ccm->L = uVar4;
  }
  else {
    uVar7 = noncelen + uVar6;
    noncelen = 0xf - uVar6;
    uVar4 = uVar6;
    if (0xf < uVar7) {
      ccm->noncelen = noncelen;
    }
  }
  uVar6 = ccm->ptlen;
  ccm->PAD[0] = (ccm->aadlen != 0) << 6 | (byte)((ccm->taglen + -2 >> 1) << 3) | (char)uVar4 - 1U;
  if (noncelen == 0) {
    lVar5 = 1;
LAB_00133225:
    if (uVar4 < 5) goto LAB_00132d92;
    ccm->PAD[lVar5] = '\0';
    if ((((uVar4 != 5) && (ccm->PAD[lVar5 + 1] = '\0', uVar4 != 6)) &&
        ((ccm->PAD[lVar5 + 2] = '\0', uVar4 != 7 &&
         (((((ccm->PAD[lVar5 + 3] = '\0', uVar4 != 8 && (ccm->PAD[lVar5 + 4] = '\0', uVar4 != 9)) &&
            (ccm->PAD[lVar5 + 5] = '\0', uVar4 != 10)) &&
           ((ccm->PAD[lVar5 + 6] = '\0', uVar4 != 0xb && (ccm->PAD[lVar5 + 7] = '\0', uVar4 != 0xc))
           )) && (ccm->PAD[lVar5 + 8] = '\0', uVar4 != 0xd)))))) &&
       (((ccm->PAD[lVar5 + 9] = '\0', uVar4 != 0xe && (ccm->PAD[lVar5 + 10] = '\0', uVar4 != 0xf))
        && ((ccm->PAD[lVar5 + 0xb] = '\0', uVar4 != 0x10 &&
            ((ccm->PAD[lVar5 + 0xc] = '\0', uVar4 != 0x11 &&
             (ccm->PAD[lVar5 + 0xd] = '\0', uVar4 != 0x12)))))))) {
      ccm->PAD[lVar5 + 0xe] = '\0';
    }
    uVar7 = uVar4 - 4;
    lVar5 = lVar5 + uVar7;
  }
  else {
    ccm->PAD[1] = *nonce;
    if ((((1 < noncelen) && (ccm->PAD[2] = nonce[1], noncelen != 2)) &&
        (ccm->PAD[3] = nonce[2], noncelen != 3)) &&
       (((((ccm->PAD[4] = nonce[3], noncelen != 4 && (ccm->PAD[5] = nonce[4], noncelen != 5)) &&
          ((ccm->PAD[6] = nonce[5], noncelen != 6 &&
           ((ccm->PAD[7] = nonce[6], noncelen != 7 && (ccm->PAD[8] = nonce[7], noncelen != 8))))))
         && (ccm->PAD[9] = nonce[8], noncelen != 9)) &&
        ((((ccm->PAD[10] = nonce[9], noncelen != 10 && (ccm->PAD[0xb] = nonce[10], noncelen != 0xb))
          && (ccm->PAD[0xc] = nonce[0xb], noncelen != 0xc)) &&
         ((ccm->PAD[0xd] = nonce[0xc], noncelen != 0xd &&
          (ccm->PAD[0xe] = nonce[0xd], noncelen != 0xe)))))))) {
      ccm->PAD[0xf] = nonce[0xe];
    }
    lVar5 = noncelen + 1;
    if (3 < uVar4) goto LAB_00133225;
    iVar3 = 8;
    if ((uVar4 == 3) || (iVar3 = 0x10, uVar4 == 2)) {
      uVar6 = uVar6 << iVar3;
    }
    else {
      uVar7 = uVar6 << 0x18;
      uVar6 = 0;
      if (uVar4 != 0) {
        uVar6 = uVar7;
      }
    }
LAB_00132d92:
    uVar7 = 0;
  }
  if (((((uVar7 < uVar4) && (ccm->PAD[lVar5] = (uchar)(uVar6 >> 0x18), uVar7 + 1 < uVar4)) &&
       (ccm->PAD[lVar5 + 1] = (uchar)(uVar6 >> 0x10), uVar7 + 2 < uVar4)) &&
      (((ccm->PAD[lVar5 + 2] = (uchar)(uVar6 >> 8), uVar7 + 3 < uVar4 &&
        (ccm->PAD[lVar5 + 3] = (uchar)uVar6, uVar7 + 4 < uVar4)) &&
       ((ccm->PAD[lVar5 + 4] = '\0', uVar7 + 5 < uVar4 &&
        ((ccm->PAD[lVar5 + 5] = '\0', uVar7 + 6 < uVar4 &&
         (ccm->PAD[lVar5 + 6] = '\0', uVar7 + 7 < uVar4)))))))) &&
     (((ccm->PAD[lVar5 + 7] = '\0', uVar7 + 8 < uVar4 &&
       (((ccm->PAD[lVar5 + 8] = '\0', uVar7 + 9 < uVar4 &&
         (ccm->PAD[lVar5 + 9] = '\0', uVar7 + 10 < uVar4)) &&
        (ccm->PAD[lVar5 + 10] = '\0', uVar7 + 0xb < uVar4)))) &&
      ((ccm->PAD[lVar5 + 0xb] = '\0', uVar7 + 0xc < uVar4 &&
       (ccm->PAD[lVar5 + 0xc] = '\0', uVar7 + 0xd < uVar4)))))) {
    ccm->PAD[lVar5 + 0xd] = '\0';
    if (uVar7 + 0xe < uVar4) {
      ccm->PAD[lVar5 + 0xe] = '\0';
      if (uVar7 + 0xf < uVar4) {
        ccm->PAD[lVar5 + 0xf] = '\0';
      }
    }
  }
  iVar3 = (**(code **)(PTR_cipher_descriptor_001dded0 + (long)ccm->cipher * 0xc0 + 0x28))
                    (ccm->PAD,ccm->PAD,ccm);
  if (iVar3 != 0) {
    return iVar3;
  }
  uVar6 = ccm->aadlen;
  ccm->x = 0;
  if (uVar6 != 0) {
    bVar1 = ccm->PAD[1];
    bVar2 = (byte)(uVar6 >> 8);
    if (uVar6 < 0xff00) {
      ccm->x = 2;
      ccm->PAD[0] = ccm->PAD[0] ^ bVar2;
      ccm->PAD[1] = (byte)uVar6 ^ bVar1;
    }
    else {
      ccm->PAD[0] = ~ccm->PAD[0];
      ccm->PAD[1] = bVar1 ^ 0xfe;
      ccm->PAD[2] = ccm->PAD[2] ^ (byte)(uVar6 >> 0x18);
      ccm->PAD[3] = ccm->PAD[3] ^ (byte)(uVar6 >> 0x10);
      ccm->PAD[4] = ccm->PAD[4] ^ bVar2;
      ccm->x = 6;
      ccm->PAD[5] = ccm->PAD[5] ^ (byte)uVar6;
    }
  }
  uVar6 = ccm->L;
  ccm->ctr[0] = (char)uVar6 + 0xff;
  if (uVar6 == 0xf) {
    lVar5 = 3;
    ccm->ctr[1] = '\0';
    ccm->ctr[2] = '\0';
  }
  else {
    ccm->ctr[1] = *nonce;
    if (((((uVar6 != 0xe) && (ccm->ctr[2] = nonce[1], uVar6 != 0xd)) &&
         ((ccm->ctr[3] = nonce[2], uVar6 != 0xc &&
          ((((ccm->ctr[4] = nonce[3], uVar6 != 0xb && (ccm->ctr[5] = nonce[4], uVar6 != 10)) &&
            (ccm->ctr[6] = nonce[5], uVar6 != 9)) &&
           ((ccm->ctr[7] = nonce[6], uVar6 != 8 && (ccm->ctr[8] = nonce[7], uVar6 != 7)))))))) &&
        (ccm->ctr[9] = nonce[8], uVar6 != 6)) &&
       (((ccm->ctr[10] = nonce[9], uVar6 != 5 && (ccm->ctr[0xb] = nonce[10], uVar6 != 4)) &&
        ((ccm->ctr[0xc] = nonce[0xb], uVar6 != 3 &&
         ((ccm->ctr[0xd] = nonce[0xc], uVar6 != 2 && (ccm->ctr[0xe] = nonce[0xd], uVar6 != 1))))))))
    {
      ccm->ctr[0xf] = nonce[0xe];
    }
    if (0xf < -uVar6 + 0x10) goto LAB_001331f8;
    *(undefined1 *)((long)ccm + -uVar6 + 0x1100) = 0;
    if (-uVar6 == -1) goto LAB_001331f8;
    *(undefined1 *)((long)ccm + -uVar6 + 0x1101) = 0;
    lVar5 = 0x12 - uVar6;
    if (lVar5 == 0x10) goto LAB_001331f8;
  }
  ccm->ctr[lVar5] = '\0';
  if (((((lVar5 != 0xf) && (ccm->ctr[lVar5 + 1] = '\0', lVar5 != 0xe)) &&
       (ccm->ctr[lVar5 + 2] = '\0', lVar5 != 0xd)) &&
      (((ccm->ctr[lVar5 + 3] = '\0', lVar5 != 0xc && (ccm->ctr[lVar5 + 4] = '\0', lVar5 != 0xb)) &&
       ((ccm->ctr[lVar5 + 5] = '\0', lVar5 != 10 &&
        ((ccm->ctr[lVar5 + 6] = '\0', lVar5 != 9 && (ccm->ctr[lVar5 + 7] = '\0', lVar5 != 8))))))))
     && ((ccm->ctr[lVar5 + 8] = '\0', lVar5 != 7 &&
         (((ccm->ctr[lVar5 + 9] = '\0', lVar5 != 6 && (ccm->ctr[lVar5 + 10] = '\0', lVar5 != 5)) &&
          (ccm->ctr[lVar5 + 0xb] = '\0', lVar5 == 3)))))) {
    ccm->ctr[0xf] = '\0';
  }
LAB_001331f8:
  ccm->CTRlen = '\x10';
  return 0;
}



void ccm_add_nonce(long param_1,undefined1 *param_2,ulong param_3)

{
  ulong uVar1;
  byte bVar2;
  int iVar3;
  ulong uVar4;
  ulong uVar5;
  long lVar6;
  long lVar7;
  long lVar8;
  
  if (param_1 == 0) {
                    /* WARNING: Subroutine does not return */
    crypt_argchk("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a);
  }
  if (param_2 == (undefined1 *)0x0) {
                    /* WARNING: Subroutine does not return */
    crypt_argchk("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b);
  }
  if (0xd < param_3) {
    param_3 = 0xd;
  }
  uVar4 = *(ulong *)(param_1 + 0x10b0);
  uVar5 = 0xf - param_3;
  *(ulong *)(param_1 + 0x10d8) = param_3;
  if (uVar4 < uVar5) {
    *(ulong *)(param_1 + 0x10b0) = uVar5;
  }
  else {
    uVar1 = param_3 + uVar4;
    param_3 = 0xf - uVar4;
    uVar5 = uVar4;
    if (0xf < uVar1) {
      *(ulong *)(param_1 + 0x10d8) = param_3;
    }
  }
  lVar7 = *(long *)(param_1 + 0x10b8);
  *(byte *)(param_1 + 0x10e0) =
       (*(long *)(param_1 + 0x10c8) != 0) << 6 | (byte)((*(int *)(param_1 + 0x10a4) + -2 >> 1) << 3)
       | (char)uVar5 - 1U;
  if (param_3 == 0) {
    lVar6 = 1;
LAB_00133225:
    if (uVar5 < 5) goto LAB_00132d92;
    *(undefined1 *)(param_1 + 0x10e0 + lVar6) = 0;
    if ((((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)) &&
        ((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&
         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&
             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&
            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&
           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&
            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&
          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))))) &&
       (((*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&
         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&
        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&
         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&
          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))))))) {
      *(undefined1 *)(param_1 + 0x10ee + lVar6) = 0;
    }
    uVar4 = uVar5 - 4;
    lVar6 = lVar6 + uVar4;
  }
  else {
    *(undefined1 *)(param_1 + 0x10e1) = *param_2;
    if ((((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&
        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)) &&
       (((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&
           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&
          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&
           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&
            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&
         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&
        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&
           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&
          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&
         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&
          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))))) {
      *(undefined1 *)(param_1 + 0x10ef) = param_2[0xe];
    }
    lVar6 = param_3 + 1;
    if (3 < uVar5) goto LAB_00133225;
    iVar3 = 8;
    if ((uVar5 == 3) || (iVar3 = 0x10, uVar5 == 2)) {
      lVar7 = lVar7 << iVar3;
    }
    else {
      lVar8 = lVar7 << 0x18;
      lVar7 = 0;
      if (uVar5 != 0) {
        lVar7 = lVar8;
      }
    }
LAB_00132d92:
    uVar4 = 0;
  }
  if (((((uVar4 < uVar5) &&
        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)) &&
       (*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5)) &&
      (((*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&
        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&
       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&
        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&
         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))))))) &&
     (((*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&
       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&
         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&
        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))) &&
      ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&
       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)))))) {
    *(undefined1 *)(param_1 + 0x10ed + lVar6) = 0;
    if (uVar4 + 0xe < uVar5) {
      *(undefined1 *)(param_1 + lVar6 + 0x10ee) = 0;
      if (uVar4 + 0xf < uVar5) {
        *(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0;
      }
    }
  }
  iVar3 = (**(code **)(PTR_cipher_descriptor_001dded0 +
                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28))
                    (param_1 + 0x10e0,param_1 + 0x10e0,param_1);
  if (iVar3 != 0) {
    return;
  }
  uVar4 = *(ulong *)(param_1 + 0x10c8);
  *(undefined4 *)(param_1 + 0x10a8) = 0;
  if (uVar4 != 0) {
    bVar2 = (byte)(uVar4 >> 8);
    if (uVar4 < 0xff00) {
      *(undefined4 *)(param_1 + 0x10a8) = 2;
      *(byte *)(param_1 + 0x10e0) = *(byte *)(param_1 + 0x10e0) ^ bVar2;
      *(byte *)(param_1 + 0x10e1) = (byte)uVar4 ^ *(byte *)(param_1 + 0x10e1);
    }
    else {
      *(byte *)(param_1 + 0x10e0) = ~*(byte *)(param_1 + 0x10e0);
      *(byte *)(param_1 + 0x10e1) = *(byte *)(param_1 + 0x10e1) ^ 0xfe;
      *(byte *)(param_1 + 0x10e2) = *(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18);
      *(byte *)(param_1 + 0x10e3) = *(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10);
      *(byte *)(param_1 + 0x10e4) = *(byte *)(param_1 + 0x10e4) ^ bVar2;
      *(undefined4 *)(param_1 + 0x10a8) = 6;
      *(byte *)(param_1 + 0x10e5) = *(byte *)(param_1 + 0x10e5) ^ (byte)uVar4;
    }
  }
  lVar7 = *(long *)(param_1 + 0x10b0);
  *(char *)(param_1 + 0x10f0) = (char)lVar7 + -1;
  if (lVar7 == 0xf) {
    lVar7 = 3;
    *(undefined2 *)(param_1 + 0x10f1) = 0;
  }
  else {
    *(undefined1 *)(param_1 + 0x10f1) = *param_2;
    if (((((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&
         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&
          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&
             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&
            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&
           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&
            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&
        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)) &&
       (((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&
         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&
        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&
         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&
          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))))) {
      *(undefined1 *)(param_1 + 0x10ff) = param_2[0xe];
    }
    if (0xf < 0x10U - lVar7) goto LAB_001331f8;
    *(undefined1 *)(param_1 + 0x10f0 + (0x10U - lVar7)) = 0;
    if (0x11 - lVar7 == 0x10) goto LAB_001331f8;
    *(undefined1 *)(param_1 + 0x10f0 + (0x11 - lVar7)) = 0;
    lVar7 = 0x12 - lVar7;
    if (lVar7 == 0x10) goto LAB_001331f8;
  }
  *(undefined1 *)(param_1 + 0x10f0 + lVar7) = 0;
  if (((((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)) &&
       (*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd)) &&
      (((*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&
        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&
       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&
        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&
         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))))))) &&
     ((*(undefined1 *)(param_1 + 0x10f8 + lVar7) = 0, lVar7 != 7 &&
      (((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&
        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&
       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)))))) {
    *(undefined1 *)(param_1 + 0x10ff) = 0;
  }
LAB_001331f8:
  *(undefined1 *)(param_1 + 0x1110) = 0x10;
  return;
}


PUSH RBP
PUSH RBX
SUB RSP,0x8
TEST RDI,RDI
JZ 0x00133391
MOV RBP,RSI
TEST RSI,RSI
JZ 0x001333a9
CMP RDX,0xd
MOV EAX,0xd
MOV ESI,0xf
MOV RBX,RDI
CMOVA RDX,RAX
MOV RCX,RSI
MOV R9,qword ptr [RDI + 0x10b0]
SUB RCX,RDX
MOV qword ptr [RDI + 0x10d8],RDX
CMP RCX,R9
JA 0x00133210
LEA RDI,[RDX + R9*0x1]
SUB RSI,R9
MOV RDX,RSI
CMP RDI,0xf
JBE 0x00132bf4
MOV qword ptr [RBX + 0x10d8],RSI
MOV R10D,dword ptr [RBX + 0x10a4]
CMP qword ptr [RBX + 0x10c8],0x0
LEA EAX,[R9 + -0x1]
SETNZ R8B
MOV RSI,qword ptr [RBX + 0x10b8]
LEA R11D,[R10 + -0x2]
SHL R8D,0x6
SAR R11D,0x1
SHL R11D,0x3
OR R8D,R11D
OR R8D,EAX
MOV byte ptr [RBX + 0x10e0],R8B
TEST RDX,RDX
JZ 0x00133220
MOVZX ECX,byte ptr [RBP]
MOV byte ptr [RBX + 0x10e1],CL
CMP RDX,0x1
JBE 0x00132d50
MOVZX EDI,byte ptr [RBP + 0x1]
MOV byte ptr [RBX + 0x10e2],DIL
CMP RDX,0x2
JZ 0x00132d50
MOVZX R8D,byte ptr [RBP + 0x2]
MOV byte ptr [RBX + 0x10e3],R8B
CMP RDX,0x3
JZ 0x00132d50
MOVZX R10D,byte ptr [RBP + 0x3]
MOV byte ptr [RBX + 0x10e4],R10B
CMP RDX,0x4
JZ 0x00132d50
MOVZX R11D,byte ptr [RBP + 0x4]
MOV byte ptr [RBX + 0x10e5],R11B
CMP RDX,0x5
JZ 0x00132d50
MOVZX EAX,byte ptr [RBP + 0x5]
MOV byte ptr [RBX + 0x10e6],AL
CMP RDX,0x6
JZ 0x00132d50
MOVZX ECX,byte ptr [RBP + 0x6]
MOV byte ptr [RBX + 0x10e7],CL
CMP RDX,0x7
JZ 0x00132d50
MOVZX EDI,byte ptr [RBP + 0x7]
MOV byte ptr [RBX + 0x10e8],DIL
CMP RDX,0x8
JZ 0x00132d50
MOVZX R8D,byte ptr [RBP + 0x8]
MOV byte ptr [RBX + 0x10e9],R8B
CMP RDX,0x9
JZ 0x00132d50
MOVZX R10D,byte ptr [RBP + 0x9]
MOV byte ptr [RBX + 0x10ea],R10B
CMP RDX,0xa
JZ 0x00132d50
MOVZX R11D,byte ptr [RBP + 0xa]
MOV byte ptr [RBX + 0x10eb],R11B
CMP RDX,0xb
JZ 0x00132d50
MOVZX EAX,byte ptr [RBP + 0xb]
MOV byte ptr [RBX + 0x10ec],AL
CMP RDX,0xc
JZ 0x00132d50
MOVZX ECX,byte ptr [RBP + 0xc]
MOV byte ptr [RBX + 0x10ed],CL
CMP RDX,0xd
JZ 0x00132d50
MOVZX EDI,byte ptr [RBP + 0xd]
MOV byte ptr [RBX + 0x10ee],DIL
CMP RDX,0xe
JZ 0x00132d50
MOVZX R8D,byte ptr [RBP + 0xe]
MOV byte ptr [RBX + 0x10ef],R8B
NOP
ADD RDX,0x1
CMP R9,0x3
JA 0x00133225
MOV R10,RSI
SHL R10,0x8
CMP R9,0x3
JZ 0x00133320
MOV R10,RSI
SHL R10,0x10
CMP R9,0x2
JZ 0x00133320
MOV R11,RSI
SHL RSI,0x20
SHL R11,0x18
TEST R9,R9
CMOVNZ RSI,R11
XOR EAX,EAX
CMP RAX,R9
JNC 0x00132ef0
MOV RCX,RSI
MOV RDI,RSI
LEA R8,[RAX + 0x1]
SHR RCX,0x18
SHL RDI,0x8
MOV byte ptr [RBX + RDX*0x1 + 0x10e0],CL
CMP R9,R8
JBE 0x00132ef0
SHR RDI,0x18
MOV R10,RSI
LEA R11,[RAX + 0x2]
MOV byte ptr [RBX + RDX*0x1 + 0x10e1],DIL
SHL R10,0x10
CMP R9,R11
JBE 0x00132ef0
SHR R10,0x18
LEA RCX,[RAX + 0x3]
MOV byte ptr [RBX + RDX*0x1 + 0x10e2],R10B
CMP R9,RCX
JBE 0x00132ef0
MOV byte ptr [RBX + RDX*0x1 + 0x10e3],SIL
LEA RSI,[RAX + 0x4]
CMP R9,RSI
JBE 0x00132ef0
LEA RDI,[RAX + 0x5]
MOV byte ptr [RBX + RDX*0x1 + 0x10e4],0x0
CMP R9,RDI
JBE 0x00132ef0
LEA R8,[RAX + 0x6]
MOV byte ptr [RBX + RDX*0x1 + 0x10e5],0x0
CMP R9,R8
JBE 0x00132ef0
LEA R10,[RAX + 0x7]
MOV byte ptr [RBX + RDX*0x1 + 0x10e6],0x0
CMP R9,R10
JBE 0x00132ef0
LEA R11,[RAX + 0x8]
MOV byte ptr [RBX + RDX*0x1 + 0x10e7],0x0
CMP R9,R11
JBE 0x00132ef0
LEA RCX,[RAX + 0x9]
MOV byte ptr [RBX + RDX*0x1 + 0x10e8],0x0
CMP R9,RCX
JBE 0x00132ef0
LEA RSI,[RAX + 0xa]
MOV byte ptr [RBX + RDX*0x1 + 0x10e9],0x0
CMP R9,RSI
JBE 0x00132ef0
LEA RDI,[RAX + 0xb]
MOV byte ptr [RBX + RDX*0x1 + 0x10ea],0x0
CMP R9,RDI
JBE 0x00132ef0
LEA R8,[RAX + 0xc]
MOV byte ptr [RBX + RDX*0x1 + 0x10eb],0x0
CMP R9,R8
JBE 0x00132ef0
LEA R10,[RAX + 0xd]
MOV byte ptr [RBX + RDX*0x1 + 0x10ec],0x0
CMP R9,R10
JBE 0x00132ef0
LEA RCX,[RAX + 0xe]
LEA R11,[RDX + 0xe]
MOV byte ptr [RBX + RDX*0x1 + 0x10ed],0x0
CMP R9,RCX
JBE 0x00132ef0
ADD RAX,0xf
ADD RDX,0xf
MOV byte ptr [RBX + R11*0x1 + 0x10e0],0x0
CMP R9,RAX
JBE 0x00132ef0
MOV byte ptr [RBX + RDX*0x1 + 0x10e0],0x0
NOP dword ptr [RAX]
MOVSXD RDX,dword ptr [RBX + 0x10a0]
LEA RDI,[RBX + 0x10e0]
MOV RSI,RDI
LEA RAX,[RDX + RDX*0x2]
MOV RDX,RBX
SHL RAX,0x6
ADD RAX,qword ptr [0x001dded0]
CALL qword ptr [RAX + 0x28]
TEST EAX,EAX
JNZ 0x001331ff
MOV R9,qword ptr [RBX + 0x10c8]
MOV dword ptr [RBX + 0x10a8],0x0
TEST R9,R9
JZ 0x00132f74
MOV RDI,R9
MOVZX ESI,byte ptr [RBX + 0x10e0]
MOVZX R8D,byte ptr [RBX + 0x10e1]
SHR RDI,0x8
CMP R9,0xfeff
JA 0x00133330
MOV dword ptr [RBX + 0x10a8],0x2
XOR ESI,EDI
XOR R9D,R8D
MOV byte ptr [RBX + 0x10e0],SIL
MOV byte ptr [RBX + 0x10e1],R9B
MOV R9,qword ptr [RBX + 0x10b0]
MOV EDX,0xf
LEA ECX,[R9 + -0x1]
MOV byte ptr [RBX + 0x10f0],CL
SUB RDX,R9
JZ 0x0013337d
MOVZX ESI,byte ptr [RBP]
MOV byte ptr [RBX + 0x10f1],SIL
CMP RDX,0x1
JZ 0x001330b0
MOVZX EDI,byte ptr [RBP + 0x1]
MOV byte ptr [RBX + 0x10f2],DIL
CMP RDX,0x2
JZ 0x001330b0
MOVZX R10D,byte ptr [RBP + 0x2]
MOV byte ptr [RBX + 0x10f3],R10B
CMP RDX,0x3
JZ 0x001330b0
MOVZX R11D,byte ptr [RBP + 0x3]
MOV byte ptr [RBX + 0x10f4],R11B
CMP RDX,0x4
JZ 0x001330b0
MOVZX ECX,byte ptr [RBP + 0x4]
MOV byte ptr [RBX + 0x10f5],CL
CMP RDX,0x5
JZ 0x001330b0
MOVZX R8D,byte ptr [RBP + 0x5]
MOV byte ptr [RBX + 0x10f6],R8B
CMP RDX,0x6
JZ 0x001330b0
MOVZX ESI,byte ptr [RBP + 0x6]
MOV byte ptr [RBX + 0x10f7],SIL
CMP RDX,0x7
JZ 0x001330b0
MOVZX EDI,byte ptr [RBP + 0x7]
MOV byte ptr [RBX + 0x10f8],DIL
CMP RDX,0x8
JZ 0x001330b0
MOVZX R10D,byte ptr [RBP + 0x8]
MOV byte ptr [RBX + 0x10f9],R10B
CMP RDX,0x9
JZ 0x001330b0
MOVZX R11D,byte ptr [RBP + 0x9]
MOV byte ptr [RBX + 0x10fa],R11B
CMP RDX,0xa
JZ 0x001330b0
MOVZX ECX,byte ptr [RBP + 0xa]
MOV byte ptr [RBX + 0x10fb],CL
CMP RDX,0xb
JZ 0x001330b0
MOVZX R8D,byte ptr [RBP + 0xb]
MOV byte ptr [RBX + 0x10fc],R8B
CMP RDX,0xc
JZ 0x001330b0
MOVZX ESI,byte ptr [RBP + 0xc]
MOV byte ptr [RBX + 0x10fd],SIL
CMP RDX,0xd
JZ 0x001330b0
MOVZX EDI,byte ptr [RBP + 0xd]
MOV byte ptr [RBX + 0x10fe],DIL
CMP RDX,0xe
JZ 0x001330b0
MOVZX EDX,byte ptr [RBP + 0xe]
MOV byte ptr [RBX + 0x10ff],DL
NOP dword ptr [RAX + RAX*0x1]
MOV EBP,0x10
SUB RBP,R9
CMP RBP,0xf
JA 0x001331f8
MOV R10D,0x11
MOV byte ptr [RBX + RBP*0x1 + 0x10f0],0x0
SUB R10,R9
CMP R10,0x10
JZ 0x001331f8
MOV byte ptr [RBX + R10*0x1 + 0x10f0],0x0
MOV R8D,0x12
SUB R8,R9
CMP R8,0x10
JZ 0x001331f8
MOV byte ptr [RBX + R8*0x1 + 0x10f0],0x0
LEA R9,[R8 + 0x1]
CMP R9,0x10
JZ 0x001331f8
MOV byte ptr [RBX + R8*0x1 + 0x10f1],0x0
LEA R11,[R8 + 0x2]
CMP R11,0x10
JZ 0x001331f8
MOV byte ptr [RBX + R8*0x1 + 0x10f2],0x0
LEA RCX,[R8 + 0x3]
CMP RCX,0x10
JZ 0x001331f8
MOV byte ptr [RBX + R8*0x1 + 0x10f3],0x0
LEA RSI,[R8 + 0x4]
CMP RSI,0x10
JZ 0x001331f8
MOV byte ptr [RBX + R8*0x1 + 0x10f4],0x0
LEA RDI,[R8 + 0x5]
CMP RDI,0x10
JZ 0x001331f8
MOV byte ptr [RBX + R8*0x1 + 0x10f5],0x0
LEA RDX,[R8 + 0x6]
CMP RDX,0x10
JZ 0x001331f8
MOV byte ptr [RBX + R8*0x1 + 0x10f6],0x0
LEA RBP,[R8 + 0x7]
CMP RBP,0x10
JZ 0x001331f8
MOV byte ptr [RBX + R8*0x1 + 0x10f7],0x0
LEA R10,[R8 + 0x8]
CMP R10,0x10
JZ 0x001331f8
MOV byte ptr [RBX + R8*0x1 + 0x10f8],0x0
LEA R9,[R8 + 0x9]
CMP R9,0x10
JZ 0x001331f8
MOV byte ptr [RBX + R8*0x1 + 0x10f9],0x0
LEA R11,[R8 + 0xa]
CMP R11,0x10
JZ 0x001331f8
MOV byte ptr [RBX + R8*0x1 + 0x10fa],0x0
LEA RCX,[R8 + 0xb]
CMP RCX,0x10
JZ 0x001331f8
MOV byte ptr [RBX + R8*0x1 + 0x10fb],0x0
CMP R8,0x3
JNZ 0x001331f8
MOV byte ptr [RBX + 0x10ff],0x0
NOP dword ptr [RAX]
MOV byte ptr [RBX + 0x1110],0x10
ADD RSP,0x8
POP RBX
POP RBP
RET
MOV qword ptr [RDI + 0x10b0],RCX
MOV R9,RCX
JMP 0x00132bf4
MOV EDX,0x1
CMP R9,0x4
JBE 0x00132d92
MOV byte ptr [RBX + RDX*0x1 + 0x10e0],0x0
CMP R9,0x5
JZ 0x0013330f
MOV byte ptr [RBX + RDX*0x1 + 0x10e1],0x0
CMP R9,0x6
JZ 0x0013330f
MOV byte ptr [RBX + RDX*0x1 + 0x10e2],0x0
CMP R9,0x7
JZ 0x0013330f
MOV byte ptr [RBX + RDX*0x1 + 0x10e3],0x0
CMP R9,0x8
JZ 0x0013330f
MOV byte ptr [RBX + RDX*0x1 + 0x10e4],0x0
CMP R9,0x9
JZ 0x0013330f
MOV byte ptr [RBX + RDX*0x1 + 0x10e5],0x0
CMP R9,0xa
JZ 0x0013330f
MOV byte ptr [RBX + RDX*0x1 + 0x10e6],0x0
CMP R9,0xb
JZ 0x0013330f
MOV byte ptr [RBX + RDX*0x1 + 0x10e7],0x0
CMP R9,0xc
JZ 0x0013330f
MOV byte ptr [RBX + RDX*0x1 + 0x10e8],0x0
CMP R9,0xd
JZ 0x0013330f
MOV byte ptr [RBX + RDX*0x1 + 0x10e9],0x0
CMP R9,0xe
JZ 0x0013330f
MOV byte ptr [RBX + RDX*0x1 + 0x10ea],0x0
CMP R9,0xf
JZ 0x0013330f
MOV byte ptr [RBX + RDX*0x1 + 0x10eb],0x0
CMP R9,0x10
JZ 0x0013330f
MOV byte ptr [RBX + RDX*0x1 + 0x10ec],0x0
CMP R9,0x11
JZ 0x0013330f
MOV byte ptr [RBX + RDX*0x1 + 0x10ed],0x0
CMP R9,0x12
JZ 0x0013330f
MOV byte ptr [RBX + RDX*0x1 + 0x10ee],0x0
LEA RAX,[R9 + -0x4]
ADD RDX,RAX
JMP 0x00132d94
MOV RSI,R10
JMP 0x00132d92
NOT ESI
XOR R8D,0xfffffffe
MOV R10,R9
MOV R11,R9
SHR R10,0x18
SHR R11,0x10
MOV byte ptr [RBX + 0x10e0],SIL
MOV byte ptr [RBX + 0x10e1],R8B
XOR byte ptr [RBX + 0x10e2],R10B
XOR byte ptr [RBX + 0x10e3],R11B
XOR byte ptr [RBX + 0x10e4],DIL
MOV dword ptr [RBX + 0x10a8],0x6
XOR byte ptr [RBX + 0x10e5],R9B
JMP 0x00132f74
XOR EBP,EBP
MOV R8D,0x3
MOV word ptr [RBX + 0x10f1],BP
JMP 0x001330f9
MOV EDX,0x1a
LEA RSI,[0x1aa718]
LEA RDI,[0x1aa6fe]
CALL 0x00114270
MOV EDX,0x1b
LEA RSI,[0x1aa718]
LEA RDI,[0x1aa738]
CALL 0x00114270
(translation_unit "void ccm_add_nonce(long param_1,undefined1 *param_2,ulong param_3)\n\n{\n  ulong uVar1;\n  byte bVar2;\n  int iVar3;\n  ulong uVar4;\n  ulong uVar5;\n  long lVar6;\n  long lVar7;\n  long lVar8;\n  \n  if (param_1 == 0) {\n                    /* WARNING: Subroutine does not return */\n    crypt_argchk("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a);\n  }\n  if (param_2 == (undefined1 *)0x0) {\n                    /* WARNING: Subroutine does not return */\n    crypt_argchk("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b);\n  }\n  if (0xd < param_3) {\n    param_3 = 0xd;\n  }\n  uVar4 = *(ulong *)(param_1 + 0x10b0);\n  uVar5 = 0xf - param_3;\n  *(ulong *)(param_1 + 0x10d8) = param_3;\n  if (uVar4 < uVar5) {\n    *(ulong *)(param_1 + 0x10b0) = uVar5;\n  }\n  else {\n    uVar1 = param_3 + uVar4;\n    param_3 = 0xf - uVar4;\n    uVar5 = uVar4;\n    if (0xf < uVar1) {\n      *(ulong *)(param_1 + 0x10d8) = param_3;\n    }\n  }\n  lVar7 = *(long *)(param_1 + 0x10b8);\n  *(byte *)(param_1 + 0x10e0) =\n       (*(long *)(param_1 + 0x10c8) != 0) << 6 | (byte)((*(int *)(param_1 + 0x10a4) + -2 >> 1) << 3)\n       | (char)uVar5 - 1U;\n  if (param_3 == 0) {\n    lVar6 = 1;\nLAB_00133225:\n    if (uVar5 < 5) goto LAB_00132d92;\n    *(undefined1 *)(param_1 + 0x10e0 + lVar6) = 0;\n    if ((((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)) &&\n        ((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))))) &&\n       (((*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&\n        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))))))) {\n      *(undefined1 *)(param_1 + 0x10ee + lVar6) = 0;\n    }\n    uVar4 = uVar5 - 4;\n    lVar6 = lVar6 + uVar4;\n  }\n  else {\n    *(undefined1 *)(param_1 + 0x10e1) = *param_2;\n    if ((((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&\n        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)) &&\n       (((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))))) {\n      *(undefined1 *)(param_1 + 0x10ef) = param_2[0xe];\n    }\n    lVar6 = param_3 + 1;\n    if (3 < uVar5) goto LAB_00133225;\n    iVar3 = 8;\n    if ((uVar5 == 3) || (iVar3 = 0x10, uVar5 == 2)) {\n      lVar7 = lVar7 << iVar3;\n    }\n    else {\n      lVar8 = lVar7 << 0x18;\n      lVar7 = 0;\n      if (uVar5 != 0) {\n        lVar7 = lVar8;\n      }\n    }\nLAB_00132d92:\n    uVar4 = 0;\n  }\n  if (((((uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)) &&\n       (*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5)) &&\n      (((*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&\n       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))))))) &&\n     (((*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))) &&\n      ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)))))) {\n    *(undefined1 *)(param_1 + 0x10ed + lVar6) = 0;\n    if (uVar4 + 0xe < uVar5) {\n      *(undefined1 *)(param_1 + lVar6 + 0x10ee) = 0;\n      if (uVar4 + 0xf < uVar5) {\n        *(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0;\n      }\n    }\n  }\n  iVar3 = (**(code **)(PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28))\n                    (param_1 + 0x10e0,param_1 + 0x10e0,param_1);\n  if (iVar3 != 0) {\n    return;\n  }\n  uVar4 = *(ulong *)(param_1 + 0x10c8);\n  *(undefined4 *)(param_1 + 0x10a8) = 0;\n  if (uVar4 != 0) {\n    bVar2 = (byte)(uVar4 >> 8);\n    if (uVar4 < 0xff00) {\n      *(undefined4 *)(param_1 + 0x10a8) = 2;\n      *(byte *)(param_1 + 0x10e0) = *(byte *)(param_1 + 0x10e0) ^ bVar2;\n      *(byte *)(param_1 + 0x10e1) = (byte)uVar4 ^ *(byte *)(param_1 + 0x10e1);\n    }\n    else {\n      *(byte *)(param_1 + 0x10e0) = ~*(byte *)(param_1 + 0x10e0);\n      *(byte *)(param_1 + 0x10e1) = *(byte *)(param_1 + 0x10e1) ^ 0xfe;\n      *(byte *)(param_1 + 0x10e2) = *(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18);\n      *(byte *)(param_1 + 0x10e3) = *(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10);\n      *(byte *)(param_1 + 0x10e4) = *(byte *)(param_1 + 0x10e4) ^ bVar2;\n      *(undefined4 *)(param_1 + 0x10a8) = 6;\n      *(byte *)(param_1 + 0x10e5) = *(byte *)(param_1 + 0x10e5) ^ (byte)uVar4;\n    }\n  }\n  lVar7 = *(long *)(param_1 + 0x10b0);\n  *(char *)(param_1 + 0x10f0) = (char)lVar7 + -1;\n  if (lVar7 == 0xf) {\n    lVar7 = 3;\n    *(undefined2 *)(param_1 + 0x10f1) = 0;\n  }\n  else {\n    *(undefined1 *)(param_1 + 0x10f1) = *param_2;\n    if (((((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&\n        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)) &&\n       (((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))))) {\n      *(undefined1 *)(param_1 + 0x10ff) = param_2[0xe];\n    }\n    if (0xf < 0x10U - lVar7) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x10U - lVar7)) = 0;\n    if (0x11 - lVar7 == 0x10) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x11 - lVar7)) = 0;\n    lVar7 = 0x12 - lVar7;\n    if (lVar7 == 0x10) goto LAB_001331f8;\n  }\n  *(undefined1 *)(param_1 + 0x10f0 + lVar7) = 0;\n  if (((((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)) &&\n       (*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd)) &&\n      (((*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&\n       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))))))) &&\n     ((*(undefined1 *)(param_1 + 0x10f8 + lVar7) = 0, lVar7 != 7 &&\n      (((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)))))) {\n    *(undefined1 *)(param_1 + 0x10ff) = 0;\n  }\nLAB_001331f8:\n  *(undefined1 *)(param_1 + 0x1110) = 0x10;\n  return;\n}\n\n" (function_definition "void ccm_add_nonce(long param_1,undefined1 *param_2,ulong param_3)\n\n{\n  ulong uVar1;\n  byte bVar2;\n  int iVar3;\n  ulong uVar4;\n  ulong uVar5;\n  long lVar6;\n  long lVar7;\n  long lVar8;\n  \n  if (param_1 == 0) {\n                    /* WARNING: Subroutine does not return */\n    crypt_argchk("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a);\n  }\n  if (param_2 == (undefined1 *)0x0) {\n                    /* WARNING: Subroutine does not return */\n    crypt_argchk("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b);\n  }\n  if (0xd < param_3) {\n    param_3 = 0xd;\n  }\n  uVar4 = *(ulong *)(param_1 + 0x10b0);\n  uVar5 = 0xf - param_3;\n  *(ulong *)(param_1 + 0x10d8) = param_3;\n  if (uVar4 < uVar5) {\n    *(ulong *)(param_1 + 0x10b0) = uVar5;\n  }\n  else {\n    uVar1 = param_3 + uVar4;\n    param_3 = 0xf - uVar4;\n    uVar5 = uVar4;\n    if (0xf < uVar1) {\n      *(ulong *)(param_1 + 0x10d8) = param_3;\n    }\n  }\n  lVar7 = *(long *)(param_1 + 0x10b8);\n  *(byte *)(param_1 + 0x10e0) =\n       (*(long *)(param_1 + 0x10c8) != 0) << 6 | (byte)((*(int *)(param_1 + 0x10a4) + -2 >> 1) << 3)\n       | (char)uVar5 - 1U;\n  if (param_3 == 0) {\n    lVar6 = 1;\nLAB_00133225:\n    if (uVar5 < 5) goto LAB_00132d92;\n    *(undefined1 *)(param_1 + 0x10e0 + lVar6) = 0;\n    if ((((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)) &&\n        ((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))))) &&\n       (((*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&\n        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))))))) {\n      *(undefined1 *)(param_1 + 0x10ee + lVar6) = 0;\n    }\n    uVar4 = uVar5 - 4;\n    lVar6 = lVar6 + uVar4;\n  }\n  else {\n    *(undefined1 *)(param_1 + 0x10e1) = *param_2;\n    if ((((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&\n        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)) &&\n       (((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))))) {\n      *(undefined1 *)(param_1 + 0x10ef) = param_2[0xe];\n    }\n    lVar6 = param_3 + 1;\n    if (3 < uVar5) goto LAB_00133225;\n    iVar3 = 8;\n    if ((uVar5 == 3) || (iVar3 = 0x10, uVar5 == 2)) {\n      lVar7 = lVar7 << iVar3;\n    }\n    else {\n      lVar8 = lVar7 << 0x18;\n      lVar7 = 0;\n      if (uVar5 != 0) {\n        lVar7 = lVar8;\n      }\n    }\nLAB_00132d92:\n    uVar4 = 0;\n  }\n  if (((((uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)) &&\n       (*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5)) &&\n      (((*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&\n       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))))))) &&\n     (((*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))) &&\n      ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)))))) {\n    *(undefined1 *)(param_1 + 0x10ed + lVar6) = 0;\n    if (uVar4 + 0xe < uVar5) {\n      *(undefined1 *)(param_1 + lVar6 + 0x10ee) = 0;\n      if (uVar4 + 0xf < uVar5) {\n        *(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0;\n      }\n    }\n  }\n  iVar3 = (**(code **)(PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28))\n                    (param_1 + 0x10e0,param_1 + 0x10e0,param_1);\n  if (iVar3 != 0) {\n    return;\n  }\n  uVar4 = *(ulong *)(param_1 + 0x10c8);\n  *(undefined4 *)(param_1 + 0x10a8) = 0;\n  if (uVar4 != 0) {\n    bVar2 = (byte)(uVar4 >> 8);\n    if (uVar4 < 0xff00) {\n      *(undefined4 *)(param_1 + 0x10a8) = 2;\n      *(byte *)(param_1 + 0x10e0) = *(byte *)(param_1 + 0x10e0) ^ bVar2;\n      *(byte *)(param_1 + 0x10e1) = (byte)uVar4 ^ *(byte *)(param_1 + 0x10e1);\n    }\n    else {\n      *(byte *)(param_1 + 0x10e0) = ~*(byte *)(param_1 + 0x10e0);\n      *(byte *)(param_1 + 0x10e1) = *(byte *)(param_1 + 0x10e1) ^ 0xfe;\n      *(byte *)(param_1 + 0x10e2) = *(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18);\n      *(byte *)(param_1 + 0x10e3) = *(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10);\n      *(byte *)(param_1 + 0x10e4) = *(byte *)(param_1 + 0x10e4) ^ bVar2;\n      *(undefined4 *)(param_1 + 0x10a8) = 6;\n      *(byte *)(param_1 + 0x10e5) = *(byte *)(param_1 + 0x10e5) ^ (byte)uVar4;\n    }\n  }\n  lVar7 = *(long *)(param_1 + 0x10b0);\n  *(char *)(param_1 + 0x10f0) = (char)lVar7 + -1;\n  if (lVar7 == 0xf) {\n    lVar7 = 3;\n    *(undefined2 *)(param_1 + 0x10f1) = 0;\n  }\n  else {\n    *(undefined1 *)(param_1 + 0x10f1) = *param_2;\n    if (((((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&\n        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)) &&\n       (((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))))) {\n      *(undefined1 *)(param_1 + 0x10ff) = param_2[0xe];\n    }\n    if (0xf < 0x10U - lVar7) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x10U - lVar7)) = 0;\n    if (0x11 - lVar7 == 0x10) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x11 - lVar7)) = 0;\n    lVar7 = 0x12 - lVar7;\n    if (lVar7 == 0x10) goto LAB_001331f8;\n  }\n  *(undefined1 *)(param_1 + 0x10f0 + lVar7) = 0;\n  if (((((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)) &&\n       (*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd)) &&\n      (((*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&\n       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))))))) &&\n     ((*(undefined1 *)(param_1 + 0x10f8 + lVar7) = 0, lVar7 != 7 &&\n      (((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)))))) {\n    *(undefined1 *)(param_1 + 0x10ff) = 0;\n  }\nLAB_001331f8:\n  *(undefined1 *)(param_1 + 0x1110) = 0x10;\n  return;\n}" primitive_type (function_declarator "ccm_add_nonce(long param_1,undefined1 *param_2,ulong param_3)" identifier (parameter_list "(long param_1,undefined1 *param_2,ulong param_3)" ( (parameter_declaration "long param_1" (sized_type_specifier "long" long) identifier) , (parameter_declaration "undefined1 *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) , (parameter_declaration "ulong param_3" type_identifier identifier) ))) (compound_statement "{\n  ulong uVar1;\n  byte bVar2;\n  int iVar3;\n  ulong uVar4;\n  ulong uVar5;\n  long lVar6;\n  long lVar7;\n  long lVar8;\n  \n  if (param_1 == 0) {\n                    /* WARNING: Subroutine does not return */\n    crypt_argchk("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a);\n  }\n  if (param_2 == (undefined1 *)0x0) {\n                    /* WARNING: Subroutine does not return */\n    crypt_argchk("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b);\n  }\n  if (0xd < param_3) {\n    param_3 = 0xd;\n  }\n  uVar4 = *(ulong *)(param_1 + 0x10b0);\n  uVar5 = 0xf - param_3;\n  *(ulong *)(param_1 + 0x10d8) = param_3;\n  if (uVar4 < uVar5) {\n    *(ulong *)(param_1 + 0x10b0) = uVar5;\n  }\n  else {\n    uVar1 = param_3 + uVar4;\n    param_3 = 0xf - uVar4;\n    uVar5 = uVar4;\n    if (0xf < uVar1) {\n      *(ulong *)(param_1 + 0x10d8) = param_3;\n    }\n  }\n  lVar7 = *(long *)(param_1 + 0x10b8);\n  *(byte *)(param_1 + 0x10e0) =\n       (*(long *)(param_1 + 0x10c8) != 0) << 6 | (byte)((*(int *)(param_1 + 0x10a4) + -2 >> 1) << 3)\n       | (char)uVar5 - 1U;\n  if (param_3 == 0) {\n    lVar6 = 1;\nLAB_00133225:\n    if (uVar5 < 5) goto LAB_00132d92;\n    *(undefined1 *)(param_1 + 0x10e0 + lVar6) = 0;\n    if ((((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)) &&\n        ((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))))) &&\n       (((*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&\n        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))))))) {\n      *(undefined1 *)(param_1 + 0x10ee + lVar6) = 0;\n    }\n    uVar4 = uVar5 - 4;\n    lVar6 = lVar6 + uVar4;\n  }\n  else {\n    *(undefined1 *)(param_1 + 0x10e1) = *param_2;\n    if ((((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&\n        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)) &&\n       (((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))))) {\n      *(undefined1 *)(param_1 + 0x10ef) = param_2[0xe];\n    }\n    lVar6 = param_3 + 1;\n    if (3 < uVar5) goto LAB_00133225;\n    iVar3 = 8;\n    if ((uVar5 == 3) || (iVar3 = 0x10, uVar5 == 2)) {\n      lVar7 = lVar7 << iVar3;\n    }\n    else {\n      lVar8 = lVar7 << 0x18;\n      lVar7 = 0;\n      if (uVar5 != 0) {\n        lVar7 = lVar8;\n      }\n    }\nLAB_00132d92:\n    uVar4 = 0;\n  }\n  if (((((uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)) &&\n       (*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5)) &&\n      (((*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&\n       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))))))) &&\n     (((*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))) &&\n      ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)))))) {\n    *(undefined1 *)(param_1 + 0x10ed + lVar6) = 0;\n    if (uVar4 + 0xe < uVar5) {\n      *(undefined1 *)(param_1 + lVar6 + 0x10ee) = 0;\n      if (uVar4 + 0xf < uVar5) {\n        *(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0;\n      }\n    }\n  }\n  iVar3 = (**(code **)(PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28))\n                    (param_1 + 0x10e0,param_1 + 0x10e0,param_1);\n  if (iVar3 != 0) {\n    return;\n  }\n  uVar4 = *(ulong *)(param_1 + 0x10c8);\n  *(undefined4 *)(param_1 + 0x10a8) = 0;\n  if (uVar4 != 0) {\n    bVar2 = (byte)(uVar4 >> 8);\n    if (uVar4 < 0xff00) {\n      *(undefined4 *)(param_1 + 0x10a8) = 2;\n      *(byte *)(param_1 + 0x10e0) = *(byte *)(param_1 + 0x10e0) ^ bVar2;\n      *(byte *)(param_1 + 0x10e1) = (byte)uVar4 ^ *(byte *)(param_1 + 0x10e1);\n    }\n    else {\n      *(byte *)(param_1 + 0x10e0) = ~*(byte *)(param_1 + 0x10e0);\n      *(byte *)(param_1 + 0x10e1) = *(byte *)(param_1 + 0x10e1) ^ 0xfe;\n      *(byte *)(param_1 + 0x10e2) = *(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18);\n      *(byte *)(param_1 + 0x10e3) = *(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10);\n      *(byte *)(param_1 + 0x10e4) = *(byte *)(param_1 + 0x10e4) ^ bVar2;\n      *(undefined4 *)(param_1 + 0x10a8) = 6;\n      *(byte *)(param_1 + 0x10e5) = *(byte *)(param_1 + 0x10e5) ^ (byte)uVar4;\n    }\n  }\n  lVar7 = *(long *)(param_1 + 0x10b0);\n  *(char *)(param_1 + 0x10f0) = (char)lVar7 + -1;\n  if (lVar7 == 0xf) {\n    lVar7 = 3;\n    *(undefined2 *)(param_1 + 0x10f1) = 0;\n  }\n  else {\n    *(undefined1 *)(param_1 + 0x10f1) = *param_2;\n    if (((((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&\n        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)) &&\n       (((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))))) {\n      *(undefined1 *)(param_1 + 0x10ff) = param_2[0xe];\n    }\n    if (0xf < 0x10U - lVar7) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x10U - lVar7)) = 0;\n    if (0x11 - lVar7 == 0x10) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x11 - lVar7)) = 0;\n    lVar7 = 0x12 - lVar7;\n    if (lVar7 == 0x10) goto LAB_001331f8;\n  }\n  *(undefined1 *)(param_1 + 0x10f0 + lVar7) = 0;\n  if (((((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)) &&\n       (*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd)) &&\n      (((*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&\n       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))))))) &&\n     ((*(undefined1 *)(param_1 + 0x10f8 + lVar7) = 0, lVar7 != 7 &&\n      (((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)))))) {\n    *(undefined1 *)(param_1 + 0x10ff) = 0;\n  }\nLAB_001331f8:\n  *(undefined1 *)(param_1 + 0x1110) = 0x10;\n  return;\n}" { (declaration "ulong uVar1;" type_identifier identifier ;) (declaration "byte bVar2;" type_identifier identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "ulong uVar4;" type_identifier identifier ;) (declaration "ulong uVar5;" type_identifier identifier ;) (declaration "long lVar6;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar7;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar8;" (sized_type_specifier "long" long) identifier ;) (if_statement "if (param_1 == 0) {\n                    /* WARNING: Subroutine does not return */\n    crypt_argchk("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a);\n  }" if (parenthesized_expression "(param_1 == 0)" ( (binary_expression "param_1 == 0" identifier == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n    crypt_argchk("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a);\n  }" { comment (expression_statement "crypt_argchk("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a);" (call_expression "crypt_argchk("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a)" identifier (argument_list "("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a)" ( (string_literal ""ccm != NULL"" " string_content ") , (string_literal ""src/encauth/ccm/ccm_add_nonce.c"" " string_content ") , number_literal ))) ;) })) (if_statement "if (param_2 == (undefined1 *)0x0) {\n                    /* WARNING: Subroutine does not return */\n    crypt_argchk("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b);\n  }" if (parenthesized_expression "(param_2 == (undefined1 *)0x0)" ( (binary_expression "param_2 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n    crypt_argchk("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b);\n  }" { comment (expression_statement "crypt_argchk("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b);" (call_expression "crypt_argchk("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b)" identifier (argument_list "("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b)" ( (string_literal ""nonce != NULL"" " string_content ") , (string_literal ""src/encauth/ccm/ccm_add_nonce.c"" " string_content ") , number_literal ))) ;) })) (if_statement "if (0xd < param_3) {\n    param_3 = 0xd;\n  }" if (parenthesized_expression "(0xd < param_3)" ( (binary_expression "0xd < param_3" number_literal < identifier) )) (compound_statement "{\n    param_3 = 0xd;\n  }" { (expression_statement "param_3 = 0xd;" (assignment_expression "param_3 = 0xd" identifier = number_literal) ;) })) (expression_statement "uVar4 = *(ulong *)(param_1 + 0x10b0);" (assignment_expression "uVar4 = *(ulong *)(param_1 + 0x10b0)" identifier = (pointer_expression "*(ulong *)(param_1 + 0x10b0)" * (cast_expression "(ulong *)(param_1 + 0x10b0)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10b0)" ( (binary_expression "param_1 + 0x10b0" identifier + number_literal) ))))) ;) (expression_statement "uVar5 = 0xf - param_3;" (assignment_expression "uVar5 = 0xf - param_3" identifier = (binary_expression "0xf - param_3" number_literal - identifier)) ;) (expression_statement "*(ulong *)(param_1 + 0x10d8) = param_3;" (assignment_expression "*(ulong *)(param_1 + 0x10d8) = param_3" (pointer_expression "*(ulong *)(param_1 + 0x10d8)" * (cast_expression "(ulong *)(param_1 + 0x10d8)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10d8)" ( (binary_expression "param_1 + 0x10d8" identifier + number_literal) )))) = identifier) ;) (if_statement "if (uVar4 < uVar5) {\n    *(ulong *)(param_1 + 0x10b0) = uVar5;\n  }\n  else {\n    uVar1 = param_3 + uVar4;\n    param_3 = 0xf - uVar4;\n    uVar5 = uVar4;\n    if (0xf < uVar1) {\n      *(ulong *)(param_1 + 0x10d8) = param_3;\n    }\n  }" if (parenthesized_expression "(uVar4 < uVar5)" ( (binary_expression "uVar4 < uVar5" identifier < identifier) )) (compound_statement "{\n    *(ulong *)(param_1 + 0x10b0) = uVar5;\n  }" { (expression_statement "*(ulong *)(param_1 + 0x10b0) = uVar5;" (assignment_expression "*(ulong *)(param_1 + 0x10b0) = uVar5" (pointer_expression "*(ulong *)(param_1 + 0x10b0)" * (cast_expression "(ulong *)(param_1 + 0x10b0)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10b0)" ( (binary_expression "param_1 + 0x10b0" identifier + number_literal) )))) = identifier) ;) }) (else_clause "else {\n    uVar1 = param_3 + uVar4;\n    param_3 = 0xf - uVar4;\n    uVar5 = uVar4;\n    if (0xf < uVar1) {\n      *(ulong *)(param_1 + 0x10d8) = param_3;\n    }\n  }" else (compound_statement "{\n    uVar1 = param_3 + uVar4;\n    param_3 = 0xf - uVar4;\n    uVar5 = uVar4;\n    if (0xf < uVar1) {\n      *(ulong *)(param_1 + 0x10d8) = param_3;\n    }\n  }" { (expression_statement "uVar1 = param_3 + uVar4;" (assignment_expression "uVar1 = param_3 + uVar4" identifier = (binary_expression "param_3 + uVar4" identifier + identifier)) ;) (expression_statement "param_3 = 0xf - uVar4;" (assignment_expression "param_3 = 0xf - uVar4" identifier = (binary_expression "0xf - uVar4" number_literal - identifier)) ;) (expression_statement "uVar5 = uVar4;" (assignment_expression "uVar5 = uVar4" identifier = identifier) ;) (if_statement "if (0xf < uVar1) {\n      *(ulong *)(param_1 + 0x10d8) = param_3;\n    }" if (parenthesized_expression "(0xf < uVar1)" ( (binary_expression "0xf < uVar1" number_literal < identifier) )) (compound_statement "{\n      *(ulong *)(param_1 + 0x10d8) = param_3;\n    }" { (expression_statement "*(ulong *)(param_1 + 0x10d8) = param_3;" (assignment_expression "*(ulong *)(param_1 + 0x10d8) = param_3" (pointer_expression "*(ulong *)(param_1 + 0x10d8)" * (cast_expression "(ulong *)(param_1 + 0x10d8)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10d8)" ( (binary_expression "param_1 + 0x10d8" identifier + number_literal) )))) = identifier) ;) })) }))) (expression_statement "lVar7 = *(long *)(param_1 + 0x10b8);" (assignment_expression "lVar7 = *(long *)(param_1 + 0x10b8)" identifier = (pointer_expression "*(long *)(param_1 + 0x10b8)" * (cast_expression "(long *)(param_1 + 0x10b8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10b8)" ( (binary_expression "param_1 + 0x10b8" identifier + number_literal) ))))) ;) (expression_statement "*(byte *)(param_1 + 0x10e0) =\n       (*(long *)(param_1 + 0x10c8) != 0) << 6 | (byte)((*(int *)(param_1 + 0x10a4) + -2 >> 1) << 3)\n       | (char)uVar5 - 1U;" (assignment_expression "*(byte *)(param_1 + 0x10e0) =\n       (*(long *)(param_1 + 0x10c8) != 0) << 6 | (byte)((*(int *)(param_1 + 0x10a4) + -2 >> 1) << 3)\n       | (char)uVar5 - 1U" (pointer_expression "*(byte *)(param_1 + 0x10e0)" * (cast_expression "(byte *)(param_1 + 0x10e0)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e0)" ( (binary_expression "param_1 + 0x10e0" identifier + number_literal) )))) = (binary_expression "(*(long *)(param_1 + 0x10c8) != 0) << 6 | (byte)((*(int *)(param_1 + 0x10a4) + -2 >> 1) << 3)\n       | (char)uVar5 - 1U" (binary_expression "(*(long *)(param_1 + 0x10c8) != 0) << 6 | (byte)((*(int *)(param_1 + 0x10a4) + -2 >> 1) << 3)" (binary_expression "(*(long *)(param_1 + 0x10c8) != 0) << 6" (parenthesized_expression "(*(long *)(param_1 + 0x10c8) != 0)" ( (binary_expression "*(long *)(param_1 + 0x10c8) != 0" (pointer_expression "*(long *)(param_1 + 0x10c8)" * (cast_expression "(long *)(param_1 + 0x10c8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10c8)" ( (binary_expression "param_1 + 0x10c8" identifier + number_literal) )))) != number_literal) )) << number_literal) | (call_expression "(byte)((*(int *)(param_1 + 0x10a4) + -2 >> 1) << 3)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "((*(int *)(param_1 + 0x10a4) + -2 >> 1) << 3)" ( (binary_expression "(*(int *)(param_1 + 0x10a4) + -2 >> 1) << 3" (parenthesized_expression "(*(int *)(param_1 + 0x10a4) + -2 >> 1)" ( (binary_expression "*(int *)(param_1 + 0x10a4) + -2 >> 1" (binary_expression "*(int *)(param_1 + 0x10a4) + -2" (pointer_expression "*(int *)(param_1 + 0x10a4)" * (cast_expression "(int *)(param_1 + 0x10a4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10a4)" ( (binary_expression "param_1 + 0x10a4" identifier + number_literal) )))) + number_literal) >> number_literal) )) << number_literal) )))) | (binary_expression "(char)uVar5 - 1U" (cast_expression "(char)uVar5" ( (type_descriptor "char" primitive_type) ) identifier) - number_literal))) ;) (if_statement "if (param_3 == 0) {\n    lVar6 = 1;\nLAB_00133225:\n    if (uVar5 < 5) goto LAB_00132d92;\n    *(undefined1 *)(param_1 + 0x10e0 + lVar6) = 0;\n    if ((((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)) &&\n        ((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))))) &&\n       (((*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&\n        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))))))) {\n      *(undefined1 *)(param_1 + 0x10ee + lVar6) = 0;\n    }\n    uVar4 = uVar5 - 4;\n    lVar6 = lVar6 + uVar4;\n  }\n  else {\n    *(undefined1 *)(param_1 + 0x10e1) = *param_2;\n    if ((((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&\n        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)) &&\n       (((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))))) {\n      *(undefined1 *)(param_1 + 0x10ef) = param_2[0xe];\n    }\n    lVar6 = param_3 + 1;\n    if (3 < uVar5) goto LAB_00133225;\n    iVar3 = 8;\n    if ((uVar5 == 3) || (iVar3 = 0x10, uVar5 == 2)) {\n      lVar7 = lVar7 << iVar3;\n    }\n    else {\n      lVar8 = lVar7 << 0x18;\n      lVar7 = 0;\n      if (uVar5 != 0) {\n        lVar7 = lVar8;\n      }\n    }\nLAB_00132d92:\n    uVar4 = 0;\n  }" if (parenthesized_expression "(param_3 == 0)" ( (binary_expression "param_3 == 0" identifier == number_literal) )) (compound_statement "{\n    lVar6 = 1;\nLAB_00133225:\n    if (uVar5 < 5) goto LAB_00132d92;\n    *(undefined1 *)(param_1 + 0x10e0 + lVar6) = 0;\n    if ((((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)) &&\n        ((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))))) &&\n       (((*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&\n        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))))))) {\n      *(undefined1 *)(param_1 + 0x10ee + lVar6) = 0;\n    }\n    uVar4 = uVar5 - 4;\n    lVar6 = lVar6 + uVar4;\n  }" { (expression_statement "lVar6 = 1;" (assignment_expression "lVar6 = 1" identifier = number_literal) ;) (labeled_statement "LAB_00133225:\n    if (uVar5 < 5) goto LAB_00132d92;" statement_identifier : (if_statement "if (uVar5 < 5) goto LAB_00132d92;" if (parenthesized_expression "(uVar5 < 5)" ( (binary_expression "uVar5 < 5" identifier < number_literal) )) (goto_statement "goto LAB_00132d92;" goto statement_identifier ;))) (expression_statement "*(undefined1 *)(param_1 + 0x10e0 + lVar6) = 0;" (assignment_expression "*(undefined1 *)(param_1 + 0x10e0 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e0 + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e0 + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e0 + lVar6)" ( (binary_expression "param_1 + 0x10e0 + lVar6" (binary_expression "param_1 + 0x10e0" identifier + number_literal) + identifier) )))) = number_literal) ;) (if_statement "if ((((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)) &&\n        ((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))))) &&\n       (((*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&\n        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))))))) {\n      *(undefined1 *)(param_1 + 0x10ee + lVar6) = 0;\n    }" if (parenthesized_expression "((((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)) &&\n        ((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))))) &&\n       (((*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&\n        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12))))))))" ( (binary_expression "(((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)) &&\n        ((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))))) &&\n       (((*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&\n        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))))))" (parenthesized_expression "(((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)) &&\n        ((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd))))))" ( (binary_expression "((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)) &&\n        ((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))))" (parenthesized_expression "((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6))" ( (binary_expression "(uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)" (parenthesized_expression "(uVar5 != 5)" ( (binary_expression "uVar5 != 5" identifier != number_literal) )) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6" (assignment_expression "*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e1 + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e1 + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e1 + lVar6)" ( (binary_expression "param_1 + 0x10e1 + lVar6" (binary_expression "param_1 + 0x10e1" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar5 != 6" identifier != number_literal)) ))) )) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd))))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))" (assignment_expression "*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e2 + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e2 + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e2 + lVar6)" ( (binary_expression "param_1 + 0x10e2 + lVar6" (binary_expression "param_1 + 0x10e2" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))" (binary_expression "uVar5 != 7" identifier != number_literal) && (parenthesized_expression "(((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))" ( (parenthesized_expression "((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd))" ( (binary_expression "(((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)" (parenthesized_expression "(((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc))))" ( (binary_expression "((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))" (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10))" ( (binary_expression "(*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)" (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)" (assignment_expression "*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e3 + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e3 + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e3 + lVar6)" ( (binary_expression "param_1 + 0x10e3 + lVar6" (binary_expression "param_1 + 0x10e3" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)" (binary_expression "uVar5 != 8" identifier != number_literal) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9" (assignment_expression "*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e4 + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e4 + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e4 + lVar6)" ( (binary_expression "param_1 + 0x10e4 + lVar6" (binary_expression "param_1 + 0x10e4" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar5 != 9" identifier != number_literal)) )))) )) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10" (assignment_expression "*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e5 + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e5 + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e5 + lVar6)" ( (binary_expression "param_1 + 0x10e5 + lVar6" (binary_expression "param_1 + 0x10e5" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar5 != 10" identifier != number_literal)) ))) )) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)" (assignment_expression "*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e6 + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e6 + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e6 + lVar6)" ( (binary_expression "param_1 + 0x10e6 + lVar6" (binary_expression "param_1 + 0x10e6" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)" (binary_expression "uVar5 != 0xb" identifier != number_literal) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc" (assignment_expression "*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e7 + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e7 + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e7 + lVar6)" ( (binary_expression "param_1 + 0x10e7 + lVar6" (binary_expression "param_1 + 0x10e7" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar5 != 0xc" identifier != number_literal)) )))) )) ))) )) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd" (assignment_expression "*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e8 + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e8 + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e8 + lVar6)" ( (binary_expression "param_1 + 0x10e8 + lVar6" (binary_expression "param_1 + 0x10e8" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar5 != 0xd" identifier != number_literal)) ))) )) )))) )) ))) )) && (parenthesized_expression "(((*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&\n        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))))))" ( (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&\n        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12))))))" ( (binary_expression "(*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&\n        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))))" (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)" (assignment_expression "*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e9 + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e9 + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e9 + lVar6)" ( (binary_expression "param_1 + 0x10e9 + lVar6" (binary_expression "param_1 + 0x10e9" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)" (binary_expression "uVar5 != 0xe" identifier != number_literal) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf" (assignment_expression "*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10ea + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10ea + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10ea + lVar6)" ( (binary_expression "param_1 + 0x10ea + lVar6" (binary_expression "param_1 + 0x10ea" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar5 != 0xf" identifier != number_literal)) )))) )) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12))))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))" (assignment_expression "*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10eb + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10eb + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10eb + lVar6)" ( (binary_expression "param_1 + 0x10eb + lVar6" (binary_expression "param_1 + 0x10eb" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))" (binary_expression "uVar5 != 0x10" identifier != number_literal) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)" (assignment_expression "*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10ec + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10ec + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10ec + lVar6)" ( (binary_expression "param_1 + 0x10ec + lVar6" (binary_expression "param_1 + 0x10ec" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)" (binary_expression "uVar5 != 0x11" identifier != number_literal) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12" (assignment_expression "*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10ed + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10ed + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10ed + lVar6)" ( (binary_expression "param_1 + 0x10ed + lVar6" (binary_expression "param_1 + 0x10ed" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar5 != 0x12" identifier != number_literal)) )))) )) )))) )) ))) )) ))) )) (compound_statement "{\n      *(undefined1 *)(param_1 + 0x10ee + lVar6) = 0;\n    }" { (expression_statement "*(undefined1 *)(param_1 + 0x10ee + lVar6) = 0;" (assignment_expression "*(undefined1 *)(param_1 + 0x10ee + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10ee + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10ee + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10ee + lVar6)" ( (binary_expression "param_1 + 0x10ee + lVar6" (binary_expression "param_1 + 0x10ee" identifier + number_literal) + identifier) )))) = number_literal) ;) })) (expression_statement "uVar4 = uVar5 - 4;" (assignment_expression "uVar4 = uVar5 - 4" identifier = (binary_expression "uVar5 - 4" identifier - number_literal)) ;) (expression_statement "lVar6 = lVar6 + uVar4;" (assignment_expression "lVar6 = lVar6 + uVar4" identifier = (binary_expression "lVar6 + uVar4" identifier + identifier)) ;) }) (else_clause "else {\n    *(undefined1 *)(param_1 + 0x10e1) = *param_2;\n    if ((((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&\n        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)) &&\n       (((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))))) {\n      *(undefined1 *)(param_1 + 0x10ef) = param_2[0xe];\n    }\n    lVar6 = param_3 + 1;\n    if (3 < uVar5) goto LAB_00133225;\n    iVar3 = 8;\n    if ((uVar5 == 3) || (iVar3 = 0x10, uVar5 == 2)) {\n      lVar7 = lVar7 << iVar3;\n    }\n    else {\n      lVar8 = lVar7 << 0x18;\n      lVar7 = 0;\n      if (uVar5 != 0) {\n        lVar7 = lVar8;\n      }\n    }\nLAB_00132d92:\n    uVar4 = 0;\n  }" else (compound_statement "{\n    *(undefined1 *)(param_1 + 0x10e1) = *param_2;\n    if ((((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&\n        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)) &&\n       (((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))))) {\n      *(undefined1 *)(param_1 + 0x10ef) = param_2[0xe];\n    }\n    lVar6 = param_3 + 1;\n    if (3 < uVar5) goto LAB_00133225;\n    iVar3 = 8;\n    if ((uVar5 == 3) || (iVar3 = 0x10, uVar5 == 2)) {\n      lVar7 = lVar7 << iVar3;\n    }\n    else {\n      lVar8 = lVar7 << 0x18;\n      lVar7 = 0;\n      if (uVar5 != 0) {\n        lVar7 = lVar8;\n      }\n    }\nLAB_00132d92:\n    uVar4 = 0;\n  }" { (expression_statement "*(undefined1 *)(param_1 + 0x10e1) = *param_2;" (assignment_expression "*(undefined1 *)(param_1 + 0x10e1) = *param_2" (pointer_expression "*(undefined1 *)(param_1 + 0x10e1)" * (cast_expression "(undefined1 *)(param_1 + 0x10e1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e1)" ( (binary_expression "param_1 + 0x10e1" identifier + number_literal) )))) = (pointer_expression "*param_2" * identifier)) ;) (if_statement "if ((((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&\n        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)) &&\n       (((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))))) {\n      *(undefined1 *)(param_1 + 0x10ef) = param_2[0xe];\n    }" if (parenthesized_expression "((((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&\n        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)) &&\n       (((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe))))))))" ( (binary_expression "(((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&\n        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)) &&\n       (((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))))" (parenthesized_expression "(((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&\n        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3))" ( (binary_expression "((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&\n        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)" (parenthesized_expression "((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2))" ( (binary_expression "(1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)" (parenthesized_expression "(1 < param_3)" ( (binary_expression "1 < param_3" number_literal < identifier) )) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2" (assignment_expression "*(undefined1 *)(param_1 + 0x10e2) = param_2[1]" (pointer_expression "*(undefined1 *)(param_1 + 0x10e2)" * (cast_expression "(undefined1 *)(param_1 + 0x10e2)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e2)" ( (binary_expression "param_1 + 0x10e2" identifier + number_literal) )))) = (subscript_expression "param_2[1]" identifier [ number_literal ])) , (binary_expression "param_3 != 2" identifier != number_literal)) ))) )) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3" (assignment_expression "*(undefined1 *)(param_1 + 0x10e3) = param_2[2]" (pointer_expression "*(undefined1 *)(param_1 + 0x10e3)" * (cast_expression "(undefined1 *)(param_1 + 0x10e3)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e3)" ( (binary_expression "param_1 + 0x10e3" identifier + number_literal) )))) = (subscript_expression "param_2[2]" identifier [ number_literal ])) , (binary_expression "param_3 != 3" identifier != number_literal)) ))) )) && (parenthesized_expression "(((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))))" ( (parenthesized_expression "((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe))))))" ( (binary_expression "(((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))" (parenthesized_expression "(((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9))" ( (binary_expression "((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)" (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8))))))" ( (binary_expression "(*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))" (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)" (assignment_expression "*(undefined1 *)(param_1 + 0x10e4) = param_2[3]" (pointer_expression "*(undefined1 *)(param_1 + 0x10e4)" * (cast_expression "(undefined1 *)(param_1 + 0x10e4)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e4)" ( (binary_expression "param_1 + 0x10e4" identifier + number_literal) )))) = (subscript_expression "param_2[3]" identifier [ number_literal ])) , (binary_expression "param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)" (binary_expression "param_3 != 4" identifier != number_literal) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5" (assignment_expression "*(undefined1 *)(param_1 + 0x10e5) = param_2[4]" (pointer_expression "*(undefined1 *)(param_1 + 0x10e5)" * (cast_expression "(undefined1 *)(param_1 + 0x10e5)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e5)" ( (binary_expression "param_1 + 0x10e5" identifier + number_literal) )))) = (subscript_expression "param_2[4]" identifier [ number_literal ])) , (binary_expression "param_3 != 5" identifier != number_literal)) )))) )) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8))))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))" (assignment_expression "*(undefined1 *)(param_1 + 0x10e6) = param_2[5]" (pointer_expression "*(undefined1 *)(param_1 + 0x10e6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e6)" ( (binary_expression "param_1 + 0x10e6" identifier + number_literal) )))) = (subscript_expression "param_2[5]" identifier [ number_literal ])) , (binary_expression "param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))" (binary_expression "param_3 != 6" identifier != number_literal) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)" (assignment_expression "*(undefined1 *)(param_1 + 0x10e7) = param_2[6]" (pointer_expression "*(undefined1 *)(param_1 + 0x10e7)" * (cast_expression "(undefined1 *)(param_1 + 0x10e7)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e7)" ( (binary_expression "param_1 + 0x10e7" identifier + number_literal) )))) = (subscript_expression "param_2[6]" identifier [ number_literal ])) , (binary_expression "param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)" (binary_expression "param_3 != 7" identifier != number_literal) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8" (assignment_expression "*(undefined1 *)(param_1 + 0x10e8) = param_2[7]" (pointer_expression "*(undefined1 *)(param_1 + 0x10e8)" * (cast_expression "(undefined1 *)(param_1 + 0x10e8)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e8)" ( (binary_expression "param_1 + 0x10e8" identifier + number_literal) )))) = (subscript_expression "param_2[7]" identifier [ number_literal ])) , (binary_expression "param_3 != 8" identifier != number_literal)) )))) )) )))) )) ))) )) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9" (assignment_expression "*(undefined1 *)(param_1 + 0x10e9) = param_2[8]" (pointer_expression "*(undefined1 *)(param_1 + 0x10e9)" * (cast_expression "(undefined1 *)(param_1 + 0x10e9)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e9)" ( (binary_expression "param_1 + 0x10e9" identifier + number_literal) )))) = (subscript_expression "param_2[8]" identifier [ number_literal ])) , (binary_expression "param_3 != 9" identifier != number_literal)) ))) )) && (parenthesized_expression "((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))" ( (parenthesized_expression "(((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe))))" ( (binary_expression "((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))" (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc))" ( (binary_expression "(*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)" (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)" (assignment_expression "*(undefined1 *)(param_1 + 0x10ea) = param_2[9]" (pointer_expression "*(undefined1 *)(param_1 + 0x10ea)" * (cast_expression "(undefined1 *)(param_1 + 0x10ea)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10ea)" ( (binary_expression "param_1 + 0x10ea" identifier + number_literal) )))) = (subscript_expression "param_2[9]" identifier [ number_literal ])) , (binary_expression "param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)" (binary_expression "param_3 != 10" identifier != number_literal) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb" (assignment_expression "*(undefined1 *)(param_1 + 0x10eb) = param_2[10]" (pointer_expression "*(undefined1 *)(param_1 + 0x10eb)" * (cast_expression "(undefined1 *)(param_1 + 0x10eb)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10eb)" ( (binary_expression "param_1 + 0x10eb" identifier + number_literal) )))) = (subscript_expression "param_2[10]" identifier [ number_literal ])) , (binary_expression "param_3 != 0xb" identifier != number_literal)) )))) )) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc" (assignment_expression "*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb]" (pointer_expression "*(undefined1 *)(param_1 + 0x10ec)" * (cast_expression "(undefined1 *)(param_1 + 0x10ec)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10ec)" ( (binary_expression "param_1 + 0x10ec" identifier + number_literal) )))) = (subscript_expression "param_2[0xb]" identifier [ number_literal ])) , (binary_expression "param_3 != 0xc" identifier != number_literal)) ))) )) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)" (assignment_expression "*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc]" (pointer_expression "*(undefined1 *)(param_1 + 0x10ed)" * (cast_expression "(undefined1 *)(param_1 + 0x10ed)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10ed)" ( (binary_expression "param_1 + 0x10ed" identifier + number_literal) )))) = (subscript_expression "param_2[0xc]" identifier [ number_literal ])) , (binary_expression "param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)" (binary_expression "param_3 != 0xd" identifier != number_literal) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe" (assignment_expression "*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd]" (pointer_expression "*(undefined1 *)(param_1 + 0x10ee)" * (cast_expression "(undefined1 *)(param_1 + 0x10ee)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10ee)" ( (binary_expression "param_1 + 0x10ee" identifier + number_literal) )))) = (subscript_expression "param_2[0xd]" identifier [ number_literal ])) , (binary_expression "param_3 != 0xe" identifier != number_literal)) )))) )) ))) )) ))) )) ))) )) (compound_statement "{\n      *(undefined1 *)(param_1 + 0x10ef) = param_2[0xe];\n    }" { (expression_statement "*(undefined1 *)(param_1 + 0x10ef) = param_2[0xe];" (assignment_expression "*(undefined1 *)(param_1 + 0x10ef) = param_2[0xe]" (pointer_expression "*(undefined1 *)(param_1 + 0x10ef)" * (cast_expression "(undefined1 *)(param_1 + 0x10ef)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10ef)" ( (binary_expression "param_1 + 0x10ef" identifier + number_literal) )))) = (subscript_expression "param_2[0xe]" identifier [ number_literal ])) ;) })) (expression_statement "lVar6 = param_3 + 1;" (assignment_expression "lVar6 = param_3 + 1" identifier = (binary_expression "param_3 + 1" identifier + number_literal)) ;) (if_statement "if (3 < uVar5) goto LAB_00133225;" if (parenthesized_expression "(3 < uVar5)" ( (binary_expression "3 < uVar5" number_literal < identifier) )) (goto_statement "goto LAB_00133225;" goto statement_identifier ;)) (expression_statement "iVar3 = 8;" (assignment_expression "iVar3 = 8" identifier = number_literal) ;) (if_statement "if ((uVar5 == 3) || (iVar3 = 0x10, uVar5 == 2)) {\n      lVar7 = lVar7 << iVar3;\n    }\n    else {\n      lVar8 = lVar7 << 0x18;\n      lVar7 = 0;\n      if (uVar5 != 0) {\n        lVar7 = lVar8;\n      }\n    }" if (parenthesized_expression "((uVar5 == 3) || (iVar3 = 0x10, uVar5 == 2))" ( (binary_expression "(uVar5 == 3) || (iVar3 = 0x10, uVar5 == 2)" (parenthesized_expression "(uVar5 == 3)" ( (binary_expression "uVar5 == 3" identifier == number_literal) )) || (parenthesized_expression "(iVar3 = 0x10, uVar5 == 2)" ( (comma_expression "iVar3 = 0x10, uVar5 == 2" (assignment_expression "iVar3 = 0x10" identifier = number_literal) , (binary_expression "uVar5 == 2" identifier == number_literal)) ))) )) (compound_statement "{\n      lVar7 = lVar7 << iVar3;\n    }" { (expression_statement "lVar7 = lVar7 << iVar3;" (assignment_expression "lVar7 = lVar7 << iVar3" identifier = (binary_expression "lVar7 << iVar3" identifier << identifier)) ;) }) (else_clause "else {\n      lVar8 = lVar7 << 0x18;\n      lVar7 = 0;\n      if (uVar5 != 0) {\n        lVar7 = lVar8;\n      }\n    }" else (compound_statement "{\n      lVar8 = lVar7 << 0x18;\n      lVar7 = 0;\n      if (uVar5 != 0) {\n        lVar7 = lVar8;\n      }\n    }" { (expression_statement "lVar8 = lVar7 << 0x18;" (assignment_expression "lVar8 = lVar7 << 0x18" identifier = (binary_expression "lVar7 << 0x18" identifier << number_literal)) ;) (expression_statement "lVar7 = 0;" (assignment_expression "lVar7 = 0" identifier = number_literal) ;) (if_statement "if (uVar5 != 0) {\n        lVar7 = lVar8;\n      }" if (parenthesized_expression "(uVar5 != 0)" ( (binary_expression "uVar5 != 0" identifier != number_literal) )) (compound_statement "{\n        lVar7 = lVar8;\n      }" { (expression_statement "lVar7 = lVar8;" (assignment_expression "lVar7 = lVar8" identifier = identifier) ;) })) }))) (labeled_statement "LAB_00132d92:\n    uVar4 = 0;" statement_identifier : (expression_statement "uVar4 = 0;" (assignment_expression "uVar4 = 0" identifier = number_literal) ;)) }))) (if_statement "if (((((uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)) &&\n       (*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5)) &&\n      (((*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&\n       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))))))) &&\n     (((*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))) &&\n      ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)))))) {\n    *(undefined1 *)(param_1 + 0x10ed + lVar6) = 0;\n    if (uVar4 + 0xe < uVar5) {\n      *(undefined1 *)(param_1 + lVar6 + 0x10ee) = 0;\n      if (uVar4 + 0xf < uVar5) {\n        *(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0;\n      }\n    }\n  }" if (parenthesized_expression "(((((uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)) &&\n       (*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5)) &&\n      (((*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&\n       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))))))) &&\n     (((*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))) &&\n      ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5))))))" ( (binary_expression "((((uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)) &&\n       (*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5)) &&\n      (((*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&\n       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))))))) &&\n     (((*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))) &&\n      ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)))))" (parenthesized_expression "((((uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)) &&\n       (*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5)) &&\n      (((*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&\n       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5))))))))" ( (binary_expression "(((uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)) &&\n       (*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5)) &&\n      (((*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&\n       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))))))" (parenthesized_expression "(((uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)) &&\n       (*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5))" ( (binary_expression "((uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)) &&\n       (*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5)" (parenthesized_expression "((uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5))" ( (binary_expression "(uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)" (parenthesized_expression "(uVar4 < uVar5)" ( (binary_expression "uVar4 < uVar5" identifier < identifier) )) && (parenthesized_expression "(*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)" ( (comma_expression "*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5" (assignment_expression "*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18)" (pointer_expression "*(char *)(param_1 + 0x10e0 + lVar6)" * (cast_expression "(char *)(param_1 + 0x10e0 + lVar6)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e0 + lVar6)" ( (binary_expression "param_1 + 0x10e0 + lVar6" (binary_expression "param_1 + 0x10e0" identifier + number_literal) + identifier) )))) = (cast_expression "(char)((ulong)lVar7 >> 0x18)" ( (type_descriptor "char" primitive_type) ) (parenthesized_expression "((ulong)lVar7 >> 0x18)" ( (binary_expression "(ulong)lVar7 >> 0x18" (cast_expression "(ulong)lVar7" ( (type_descriptor "ulong" type_identifier) ) identifier) >> number_literal) )))) , (binary_expression "uVar4 + 1 < uVar5" (binary_expression "uVar4 + 1" identifier + number_literal) < identifier)) ))) )) && (parenthesized_expression "(*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5)" ( (comma_expression "*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5" (assignment_expression "*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10)" (pointer_expression "*(char *)(param_1 + 0x10e1 + lVar6)" * (cast_expression "(char *)(param_1 + 0x10e1 + lVar6)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e1 + lVar6)" ( (binary_expression "param_1 + 0x10e1 + lVar6" (binary_expression "param_1 + 0x10e1" identifier + number_literal) + identifier) )))) = (cast_expression "(char)((ulong)lVar7 >> 0x10)" ( (type_descriptor "char" primitive_type) ) (parenthesized_expression "((ulong)lVar7 >> 0x10)" ( (binary_expression "(ulong)lVar7 >> 0x10" (cast_expression "(ulong)lVar7" ( (type_descriptor "ulong" type_identifier) ) identifier) >> number_literal) )))) , (binary_expression "uVar4 + 2 < uVar5" (binary_expression "uVar4 + 2" identifier + number_literal) < identifier)) ))) )) && (parenthesized_expression "(((*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&\n       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))))))" ( (parenthesized_expression "((*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&\n       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5))))))" ( (binary_expression "(*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&\n       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))))" (parenthesized_expression "(*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5))" ( (comma_expression "*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)" (assignment_expression "*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8)" (pointer_expression "*(char *)(param_1 + 0x10e2 + lVar6)" * (cast_expression "(char *)(param_1 + 0x10e2 + lVar6)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e2 + lVar6)" ( (binary_expression "param_1 + 0x10e2 + lVar6" (binary_expression "param_1 + 0x10e2" identifier + number_literal) + identifier) )))) = (cast_expression "(char)((ulong)lVar7 >> 8)" ( (type_descriptor "char" primitive_type) ) (parenthesized_expression "((ulong)lVar7 >> 8)" ( (binary_expression "(ulong)lVar7 >> 8" (cast_expression "(ulong)lVar7" ( (type_descriptor "ulong" type_identifier) ) identifier) >> number_literal) )))) , (binary_expression "uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)" (binary_expression "uVar4 + 3 < uVar5" (binary_expression "uVar4 + 3" identifier + number_literal) < identifier) && (parenthesized_expression "(*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)" ( (comma_expression "*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5" (assignment_expression "*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7" (pointer_expression "*(char *)(param_1 + 0x10e3 + lVar6)" * (cast_expression "(char *)(param_1 + 0x10e3 + lVar6)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e3 + lVar6)" ( (binary_expression "param_1 + 0x10e3 + lVar6" (binary_expression "param_1 + 0x10e3" identifier + number_literal) + identifier) )))) = (cast_expression "(char)lVar7" ( (type_descriptor "char" primitive_type) ) identifier)) , (binary_expression "uVar4 + 4 < uVar5" (binary_expression "uVar4 + 4" identifier + number_literal) < identifier)) )))) )) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5))))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))" (assignment_expression "*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e4 + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e4 + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e4 + lVar6)" ( (binary_expression "param_1 + 0x10e4 + lVar6" (binary_expression "param_1 + 0x10e4" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))" (binary_expression "uVar4 + 5 < uVar5" (binary_expression "uVar4 + 5" identifier + number_literal) < identifier) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)" (assignment_expression "*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e5 + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e5 + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e5 + lVar6)" ( (binary_expression "param_1 + 0x10e5 + lVar6" (binary_expression "param_1 + 0x10e5" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)" (binary_expression "uVar4 + 6 < uVar5" (binary_expression "uVar4 + 6" identifier + number_literal) < identifier) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5" (assignment_expression "*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e6 + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e6 + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e6 + lVar6)" ( (binary_expression "param_1 + 0x10e6 + lVar6" (binary_expression "param_1 + 0x10e6" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar4 + 7 < uVar5" (binary_expression "uVar4 + 7" identifier + number_literal) < identifier)) )))) )) )))) )) ))) )) ))) )) && (parenthesized_expression "(((*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))) &&\n      ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)))))" ( (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))) &&\n      ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5))))" ( (binary_expression "(*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))) &&\n      ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)))" (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5))))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))" (assignment_expression "*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e7 + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e7 + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e7 + lVar6)" ( (binary_expression "param_1 + 0x10e7 + lVar6" (binary_expression "param_1 + 0x10e7" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))" (binary_expression "uVar4 + 8 < uVar5" (binary_expression "uVar4 + 8" identifier + number_literal) < identifier) && (parenthesized_expression "(((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))" ( (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5))" ( (binary_expression "(*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)" (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)" (assignment_expression "*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e8 + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e8 + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e8 + lVar6)" ( (binary_expression "param_1 + 0x10e8 + lVar6" (binary_expression "param_1 + 0x10e8" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)" (binary_expression "uVar4 + 9 < uVar5" (binary_expression "uVar4 + 9" identifier + number_literal) < identifier) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5" (assignment_expression "*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e9 + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e9 + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e9 + lVar6)" ( (binary_expression "param_1 + 0x10e9 + lVar6" (binary_expression "param_1 + 0x10e9" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar4 + 10 < uVar5" (binary_expression "uVar4 + 10" identifier + number_literal) < identifier)) )))) )) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5" (assignment_expression "*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10ea + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10ea + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10ea + lVar6)" ( (binary_expression "param_1 + 0x10ea + lVar6" (binary_expression "param_1 + 0x10ea" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar4 + 0xb < uVar5" (binary_expression "uVar4 + 0xb" identifier + number_literal) < identifier)) ))) )) )))) )) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)" (assignment_expression "*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10eb + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10eb + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10eb + lVar6)" ( (binary_expression "param_1 + 0x10eb + lVar6" (binary_expression "param_1 + 0x10eb" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)" (binary_expression "uVar4 + 0xc < uVar5" (binary_expression "uVar4 + 0xc" identifier + number_literal) < identifier) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5" (assignment_expression "*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10ec + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10ec + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10ec + lVar6)" ( (binary_expression "param_1 + 0x10ec + lVar6" (binary_expression "param_1 + 0x10ec" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar4 + 0xd < uVar5" (binary_expression "uVar4 + 0xd" identifier + number_literal) < identifier)) )))) )) ))) )) ))) )) (compound_statement "{\n    *(undefined1 *)(param_1 + 0x10ed + lVar6) = 0;\n    if (uVar4 + 0xe < uVar5) {\n      *(undefined1 *)(param_1 + lVar6 + 0x10ee) = 0;\n      if (uVar4 + 0xf < uVar5) {\n        *(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0;\n      }\n    }\n  }" { (expression_statement "*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0;" (assignment_expression "*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10ed + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10ed + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10ed + lVar6)" ( (binary_expression "param_1 + 0x10ed + lVar6" (binary_expression "param_1 + 0x10ed" identifier + number_literal) + identifier) )))) = number_literal) ;) (if_statement "if (uVar4 + 0xe < uVar5) {\n      *(undefined1 *)(param_1 + lVar6 + 0x10ee) = 0;\n      if (uVar4 + 0xf < uVar5) {\n        *(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0;\n      }\n    }" if (parenthesized_expression "(uVar4 + 0xe < uVar5)" ( (binary_expression "uVar4 + 0xe < uVar5" (binary_expression "uVar4 + 0xe" identifier + number_literal) < identifier) )) (compound_statement "{\n      *(undefined1 *)(param_1 + lVar6 + 0x10ee) = 0;\n      if (uVar4 + 0xf < uVar5) {\n        *(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0;\n      }\n    }" { (expression_statement "*(undefined1 *)(param_1 + lVar6 + 0x10ee) = 0;" (assignment_expression "*(undefined1 *)(param_1 + lVar6 + 0x10ee) = 0" (pointer_expression "*(undefined1 *)(param_1 + lVar6 + 0x10ee)" * (cast_expression "(undefined1 *)(param_1 + lVar6 + 0x10ee)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + lVar6 + 0x10ee)" ( (binary_expression "param_1 + lVar6 + 0x10ee" (binary_expression "param_1 + lVar6" identifier + identifier) + number_literal) )))) = number_literal) ;) (if_statement "if (uVar4 + 0xf < uVar5) {\n        *(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0;\n      }" if (parenthesized_expression "(uVar4 + 0xf < uVar5)" ( (binary_expression "uVar4 + 0xf < uVar5" (binary_expression "uVar4 + 0xf" identifier + number_literal) < identifier) )) (compound_statement "{\n        *(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0;\n      }" { (expression_statement "*(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0;" (assignment_expression "*(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0" (pointer_expression "*(undefined1 *)(param_1 + lVar6 + 0x10ef)" * (cast_expression "(undefined1 *)(param_1 + lVar6 + 0x10ef)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + lVar6 + 0x10ef)" ( (binary_expression "param_1 + lVar6 + 0x10ef" (binary_expression "param_1 + lVar6" identifier + identifier) + number_literal) )))) = number_literal) ;) })) })) })) (expression_statement "iVar3 = (**(code **)(PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28))\n                    (param_1 + 0x10e0,param_1 + 0x10e0,param_1);" (assignment_expression "iVar3 = (**(code **)(PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28))\n                    (param_1 + 0x10e0,param_1 + 0x10e0,param_1)" identifier = (call_expression "(**(code **)(PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28))\n                    (param_1 + 0x10e0,param_1 + 0x10e0,param_1)" (parenthesized_expression "(**(code **)(PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28))" ( (pointer_expression "**(code **)(PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28)" * (pointer_expression "*(code **)(PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28)" * (cast_expression "(code **)(PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28)" ( (binary_expression "PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28" (binary_expression "PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0" identifier + (binary_expression "(long)*(int *)(param_1 + 0x10a0) * 0xc0" (cast_expression "(long)*(int *)(param_1 + 0x10a0)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "*(int *)(param_1 + 0x10a0)" * (cast_expression "(int *)(param_1 + 0x10a0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10a0)" ( (binary_expression "param_1 + 0x10a0" identifier + number_literal) ))))) * number_literal)) + number_literal) ))))) )) (argument_list "(param_1 + 0x10e0,param_1 + 0x10e0,param_1)" ( (binary_expression "param_1 + 0x10e0" identifier + number_literal) , (binary_expression "param_1 + 0x10e0" identifier + number_literal) , identifier )))) ;) (if_statement "if (iVar3 != 0) {\n    return;\n  }" if (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (compound_statement "{\n    return;\n  }" { (return_statement "return;" return ;) })) (expression_statement "uVar4 = *(ulong *)(param_1 + 0x10c8);" (assignment_expression "uVar4 = *(ulong *)(param_1 + 0x10c8)" identifier = (pointer_expression "*(ulong *)(param_1 + 0x10c8)" * (cast_expression "(ulong *)(param_1 + 0x10c8)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10c8)" ( (binary_expression "param_1 + 0x10c8" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x10a8) = 0;" (assignment_expression "*(undefined4 *)(param_1 + 0x10a8) = 0" (pointer_expression "*(undefined4 *)(param_1 + 0x10a8)" * (cast_expression "(undefined4 *)(param_1 + 0x10a8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10a8)" ( (binary_expression "param_1 + 0x10a8" identifier + number_literal) )))) = number_literal) ;) (if_statement "if (uVar4 != 0) {\n    bVar2 = (byte)(uVar4 >> 8);\n    if (uVar4 < 0xff00) {\n      *(undefined4 *)(param_1 + 0x10a8) = 2;\n      *(byte *)(param_1 + 0x10e0) = *(byte *)(param_1 + 0x10e0) ^ bVar2;\n      *(byte *)(param_1 + 0x10e1) = (byte)uVar4 ^ *(byte *)(param_1 + 0x10e1);\n    }\n    else {\n      *(byte *)(param_1 + 0x10e0) = ~*(byte *)(param_1 + 0x10e0);\n      *(byte *)(param_1 + 0x10e1) = *(byte *)(param_1 + 0x10e1) ^ 0xfe;\n      *(byte *)(param_1 + 0x10e2) = *(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18);\n      *(byte *)(param_1 + 0x10e3) = *(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10);\n      *(byte *)(param_1 + 0x10e4) = *(byte *)(param_1 + 0x10e4) ^ bVar2;\n      *(undefined4 *)(param_1 + 0x10a8) = 6;\n      *(byte *)(param_1 + 0x10e5) = *(byte *)(param_1 + 0x10e5) ^ (byte)uVar4;\n    }\n  }" if (parenthesized_expression "(uVar4 != 0)" ( (binary_expression "uVar4 != 0" identifier != number_literal) )) (compound_statement "{\n    bVar2 = (byte)(uVar4 >> 8);\n    if (uVar4 < 0xff00) {\n      *(undefined4 *)(param_1 + 0x10a8) = 2;\n      *(byte *)(param_1 + 0x10e0) = *(byte *)(param_1 + 0x10e0) ^ bVar2;\n      *(byte *)(param_1 + 0x10e1) = (byte)uVar4 ^ *(byte *)(param_1 + 0x10e1);\n    }\n    else {\n      *(byte *)(param_1 + 0x10e0) = ~*(byte *)(param_1 + 0x10e0);\n      *(byte *)(param_1 + 0x10e1) = *(byte *)(param_1 + 0x10e1) ^ 0xfe;\n      *(byte *)(param_1 + 0x10e2) = *(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18);\n      *(byte *)(param_1 + 0x10e3) = *(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10);\n      *(byte *)(param_1 + 0x10e4) = *(byte *)(param_1 + 0x10e4) ^ bVar2;\n      *(undefined4 *)(param_1 + 0x10a8) = 6;\n      *(byte *)(param_1 + 0x10e5) = *(byte *)(param_1 + 0x10e5) ^ (byte)uVar4;\n    }\n  }" { (expression_statement "bVar2 = (byte)(uVar4 >> 8);" (assignment_expression "bVar2 = (byte)(uVar4 >> 8)" identifier = (call_expression "(byte)(uVar4 >> 8)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "(uVar4 >> 8)" ( (binary_expression "uVar4 >> 8" identifier >> number_literal) )))) ;) (if_statement "if (uVar4 < 0xff00) {\n      *(undefined4 *)(param_1 + 0x10a8) = 2;\n      *(byte *)(param_1 + 0x10e0) = *(byte *)(param_1 + 0x10e0) ^ bVar2;\n      *(byte *)(param_1 + 0x10e1) = (byte)uVar4 ^ *(byte *)(param_1 + 0x10e1);\n    }\n    else {\n      *(byte *)(param_1 + 0x10e0) = ~*(byte *)(param_1 + 0x10e0);\n      *(byte *)(param_1 + 0x10e1) = *(byte *)(param_1 + 0x10e1) ^ 0xfe;\n      *(byte *)(param_1 + 0x10e2) = *(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18);\n      *(byte *)(param_1 + 0x10e3) = *(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10);\n      *(byte *)(param_1 + 0x10e4) = *(byte *)(param_1 + 0x10e4) ^ bVar2;\n      *(undefined4 *)(param_1 + 0x10a8) = 6;\n      *(byte *)(param_1 + 0x10e5) = *(byte *)(param_1 + 0x10e5) ^ (byte)uVar4;\n    }" if (parenthesized_expression "(uVar4 < 0xff00)" ( (binary_expression "uVar4 < 0xff00" identifier < number_literal) )) (compound_statement "{\n      *(undefined4 *)(param_1 + 0x10a8) = 2;\n      *(byte *)(param_1 + 0x10e0) = *(byte *)(param_1 + 0x10e0) ^ bVar2;\n      *(byte *)(param_1 + 0x10e1) = (byte)uVar4 ^ *(byte *)(param_1 + 0x10e1);\n    }" { (expression_statement "*(undefined4 *)(param_1 + 0x10a8) = 2;" (assignment_expression "*(undefined4 *)(param_1 + 0x10a8) = 2" (pointer_expression "*(undefined4 *)(param_1 + 0x10a8)" * (cast_expression "(undefined4 *)(param_1 + 0x10a8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10a8)" ( (binary_expression "param_1 + 0x10a8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(byte *)(param_1 + 0x10e0) = *(byte *)(param_1 + 0x10e0) ^ bVar2;" (assignment_expression "*(byte *)(param_1 + 0x10e0) = *(byte *)(param_1 + 0x10e0) ^ bVar2" (pointer_expression "*(byte *)(param_1 + 0x10e0)" * (cast_expression "(byte *)(param_1 + 0x10e0)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e0)" ( (binary_expression "param_1 + 0x10e0" identifier + number_literal) )))) = (binary_expression "*(byte *)(param_1 + 0x10e0) ^ bVar2" (pointer_expression "*(byte *)(param_1 + 0x10e0)" * (cast_expression "(byte *)(param_1 + 0x10e0)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e0)" ( (binary_expression "param_1 + 0x10e0" identifier + number_literal) )))) ^ identifier)) ;) (expression_statement "*(byte *)(param_1 + 0x10e1) = (byte)uVar4 ^ *(byte *)(param_1 + 0x10e1);" (assignment_expression "*(byte *)(param_1 + 0x10e1) = (byte)uVar4 ^ *(byte *)(param_1 + 0x10e1)" (pointer_expression "*(byte *)(param_1 + 0x10e1)" * (cast_expression "(byte *)(param_1 + 0x10e1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e1)" ( (binary_expression "param_1 + 0x10e1" identifier + number_literal) )))) = (binary_expression "(byte)uVar4 ^ *(byte *)(param_1 + 0x10e1)" (cast_expression "(byte)uVar4" ( (type_descriptor "byte" type_identifier) ) identifier) ^ (pointer_expression "*(byte *)(param_1 + 0x10e1)" * (cast_expression "(byte *)(param_1 + 0x10e1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e1)" ( (binary_expression "param_1 + 0x10e1" identifier + number_literal) )))))) ;) }) (else_clause "else {\n      *(byte *)(param_1 + 0x10e0) = ~*(byte *)(param_1 + 0x10e0);\n      *(byte *)(param_1 + 0x10e1) = *(byte *)(param_1 + 0x10e1) ^ 0xfe;\n      *(byte *)(param_1 + 0x10e2) = *(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18);\n      *(byte *)(param_1 + 0x10e3) = *(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10);\n      *(byte *)(param_1 + 0x10e4) = *(byte *)(param_1 + 0x10e4) ^ bVar2;\n      *(undefined4 *)(param_1 + 0x10a8) = 6;\n      *(byte *)(param_1 + 0x10e5) = *(byte *)(param_1 + 0x10e5) ^ (byte)uVar4;\n    }" else (compound_statement "{\n      *(byte *)(param_1 + 0x10e0) = ~*(byte *)(param_1 + 0x10e0);\n      *(byte *)(param_1 + 0x10e1) = *(byte *)(param_1 + 0x10e1) ^ 0xfe;\n      *(byte *)(param_1 + 0x10e2) = *(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18);\n      *(byte *)(param_1 + 0x10e3) = *(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10);\n      *(byte *)(param_1 + 0x10e4) = *(byte *)(param_1 + 0x10e4) ^ bVar2;\n      *(undefined4 *)(param_1 + 0x10a8) = 6;\n      *(byte *)(param_1 + 0x10e5) = *(byte *)(param_1 + 0x10e5) ^ (byte)uVar4;\n    }" { (expression_statement "*(byte *)(param_1 + 0x10e0) = ~*(byte *)(param_1 + 0x10e0);" (assignment_expression "*(byte *)(param_1 + 0x10e0) = ~*(byte *)(param_1 + 0x10e0)" (pointer_expression "*(byte *)(param_1 + 0x10e0)" * (cast_expression "(byte *)(param_1 + 0x10e0)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e0)" ( (binary_expression "param_1 + 0x10e0" identifier + number_literal) )))) = (unary_expression "~*(byte *)(param_1 + 0x10e0)" ~ (pointer_expression "*(byte *)(param_1 + 0x10e0)" * (cast_expression "(byte *)(param_1 + 0x10e0)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e0)" ( (binary_expression "param_1 + 0x10e0" identifier + number_literal) )))))) ;) (expression_statement "*(byte *)(param_1 + 0x10e1) = *(byte *)(param_1 + 0x10e1) ^ 0xfe;" (assignment_expression "*(byte *)(param_1 + 0x10e1) = *(byte *)(param_1 + 0x10e1) ^ 0xfe" (pointer_expression "*(byte *)(param_1 + 0x10e1)" * (cast_expression "(byte *)(param_1 + 0x10e1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e1)" ( (binary_expression "param_1 + 0x10e1" identifier + number_literal) )))) = (binary_expression "*(byte *)(param_1 + 0x10e1) ^ 0xfe" (pointer_expression "*(byte *)(param_1 + 0x10e1)" * (cast_expression "(byte *)(param_1 + 0x10e1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e1)" ( (binary_expression "param_1 + 0x10e1" identifier + number_literal) )))) ^ number_literal)) ;) (expression_statement "*(byte *)(param_1 + 0x10e2) = *(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18);" (assignment_expression "*(byte *)(param_1 + 0x10e2) = *(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18)" (pointer_expression "*(byte *)(param_1 + 0x10e2)" * (cast_expression "(byte *)(param_1 + 0x10e2)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e2)" ( (binary_expression "param_1 + 0x10e2" identifier + number_literal) )))) = (binary_expression "*(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18)" (pointer_expression "*(byte *)(param_1 + 0x10e2)" * (cast_expression "(byte *)(param_1 + 0x10e2)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e2)" ( (binary_expression "param_1 + 0x10e2" identifier + number_literal) )))) ^ (call_expression "(byte)(uVar4 >> 0x18)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "(uVar4 >> 0x18)" ( (binary_expression "uVar4 >> 0x18" identifier >> number_literal) ))))) ;) (expression_statement "*(byte *)(param_1 + 0x10e3) = *(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10);" (assignment_expression "*(byte *)(param_1 + 0x10e3) = *(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10)" (pointer_expression "*(byte *)(param_1 + 0x10e3)" * (cast_expression "(byte *)(param_1 + 0x10e3)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e3)" ( (binary_expression "param_1 + 0x10e3" identifier + number_literal) )))) = (binary_expression "*(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10)" (pointer_expression "*(byte *)(param_1 + 0x10e3)" * (cast_expression "(byte *)(param_1 + 0x10e3)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e3)" ( (binary_expression "param_1 + 0x10e3" identifier + number_literal) )))) ^ (call_expression "(byte)(uVar4 >> 0x10)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "(uVar4 >> 0x10)" ( (binary_expression "uVar4 >> 0x10" identifier >> number_literal) ))))) ;) (expression_statement "*(byte *)(param_1 + 0x10e4) = *(byte *)(param_1 + 0x10e4) ^ bVar2;" (assignment_expression "*(byte *)(param_1 + 0x10e4) = *(byte *)(param_1 + 0x10e4) ^ bVar2" (pointer_expression "*(byte *)(param_1 + 0x10e4)" * (cast_expression "(byte *)(param_1 + 0x10e4)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e4)" ( (binary_expression "param_1 + 0x10e4" identifier + number_literal) )))) = (binary_expression "*(byte *)(param_1 + 0x10e4) ^ bVar2" (pointer_expression "*(byte *)(param_1 + 0x10e4)" * (cast_expression "(byte *)(param_1 + 0x10e4)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e4)" ( (binary_expression "param_1 + 0x10e4" identifier + number_literal) )))) ^ identifier)) ;) (expression_statement "*(undefined4 *)(param_1 + 0x10a8) = 6;" (assignment_expression "*(undefined4 *)(param_1 + 0x10a8) = 6" (pointer_expression "*(undefined4 *)(param_1 + 0x10a8)" * (cast_expression "(undefined4 *)(param_1 + 0x10a8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10a8)" ( (binary_expression "param_1 + 0x10a8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(byte *)(param_1 + 0x10e5) = *(byte *)(param_1 + 0x10e5) ^ (byte)uVar4;" (assignment_expression "*(byte *)(param_1 + 0x10e5) = *(byte *)(param_1 + 0x10e5) ^ (byte)uVar4" (pointer_expression "*(byte *)(param_1 + 0x10e5)" * (cast_expression "(byte *)(param_1 + 0x10e5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e5)" ( (binary_expression "param_1 + 0x10e5" identifier + number_literal) )))) = (binary_expression "*(byte *)(param_1 + 0x10e5) ^ (byte)uVar4" (pointer_expression "*(byte *)(param_1 + 0x10e5)" * (cast_expression "(byte *)(param_1 + 0x10e5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e5)" ( (binary_expression "param_1 + 0x10e5" identifier + number_literal) )))) ^ (cast_expression "(byte)uVar4" ( (type_descriptor "byte" type_identifier) ) identifier))) ;) }))) })) (expression_statement "lVar7 = *(long *)(param_1 + 0x10b0);" (assignment_expression "lVar7 = *(long *)(param_1 + 0x10b0)" identifier = (pointer_expression "*(long *)(param_1 + 0x10b0)" * (cast_expression "(long *)(param_1 + 0x10b0)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10b0)" ( (binary_expression "param_1 + 0x10b0" identifier + number_literal) ))))) ;) (expression_statement "*(char *)(param_1 + 0x10f0) = (char)lVar7 + -1;" (assignment_expression "*(char *)(param_1 + 0x10f0) = (char)lVar7 + -1" (pointer_expression "*(char *)(param_1 + 0x10f0)" * (cast_expression "(char *)(param_1 + 0x10f0)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f0)" ( (binary_expression "param_1 + 0x10f0" identifier + number_literal) )))) = (binary_expression "(char)lVar7 + -1" (cast_expression "(char)lVar7" ( (type_descriptor "char" primitive_type) ) identifier) + number_literal)) ;) (if_statement "if (lVar7 == 0xf) {\n    lVar7 = 3;\n    *(undefined2 *)(param_1 + 0x10f1) = 0;\n  }\n  else {\n    *(undefined1 *)(param_1 + 0x10f1) = *param_2;\n    if (((((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&\n        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)) &&\n       (((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))))) {\n      *(undefined1 *)(param_1 + 0x10ff) = param_2[0xe];\n    }\n    if (0xf < 0x10U - lVar7) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x10U - lVar7)) = 0;\n    if (0x11 - lVar7 == 0x10) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x11 - lVar7)) = 0;\n    lVar7 = 0x12 - lVar7;\n    if (lVar7 == 0x10) goto LAB_001331f8;\n  }" if (parenthesized_expression "(lVar7 == 0xf)" ( (binary_expression "lVar7 == 0xf" identifier == number_literal) )) (compound_statement "{\n    lVar7 = 3;\n    *(undefined2 *)(param_1 + 0x10f1) = 0;\n  }" { (expression_statement "lVar7 = 3;" (assignment_expression "lVar7 = 3" identifier = number_literal) ;) (expression_statement "*(undefined2 *)(param_1 + 0x10f1) = 0;" (assignment_expression "*(undefined2 *)(param_1 + 0x10f1) = 0" (pointer_expression "*(undefined2 *)(param_1 + 0x10f1)" * (cast_expression "(undefined2 *)(param_1 + 0x10f1)" ( (type_descriptor "undefined2 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f1)" ( (binary_expression "param_1 + 0x10f1" identifier + number_literal) )))) = number_literal) ;) }) (else_clause "else {\n    *(undefined1 *)(param_1 + 0x10f1) = *param_2;\n    if (((((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&\n        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)) &&\n       (((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))))) {\n      *(undefined1 *)(param_1 + 0x10ff) = param_2[0xe];\n    }\n    if (0xf < 0x10U - lVar7) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x10U - lVar7)) = 0;\n    if (0x11 - lVar7 == 0x10) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x11 - lVar7)) = 0;\n    lVar7 = 0x12 - lVar7;\n    if (lVar7 == 0x10) goto LAB_001331f8;\n  }" else (compound_statement "{\n    *(undefined1 *)(param_1 + 0x10f1) = *param_2;\n    if (((((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&\n        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)) &&\n       (((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))))) {\n      *(undefined1 *)(param_1 + 0x10ff) = param_2[0xe];\n    }\n    if (0xf < 0x10U - lVar7) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x10U - lVar7)) = 0;\n    if (0x11 - lVar7 == 0x10) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x11 - lVar7)) = 0;\n    lVar7 = 0x12 - lVar7;\n    if (lVar7 == 0x10) goto LAB_001331f8;\n  }" { (expression_statement "*(undefined1 *)(param_1 + 0x10f1) = *param_2;" (assignment_expression "*(undefined1 *)(param_1 + 0x10f1) = *param_2" (pointer_expression "*(undefined1 *)(param_1 + 0x10f1)" * (cast_expression "(undefined1 *)(param_1 + 0x10f1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f1)" ( (binary_expression "param_1 + 0x10f1" identifier + number_literal) )))) = (pointer_expression "*param_2" * identifier)) ;) (if_statement "if (((((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&\n        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)) &&\n       (((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))))) {\n      *(undefined1 *)(param_1 + 0x10ff) = param_2[0xe];\n    }" if (parenthesized_expression "(((((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&\n        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)) &&\n       (((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1))))))))" ( (binary_expression "((((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&\n        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)) &&\n       (((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))))" (parenthesized_expression "((((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&\n        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6))" ( (binary_expression "(((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&\n        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)" (parenthesized_expression "(((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7))))))))" ( (binary_expression "((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))" (parenthesized_expression "((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd))" ( (binary_expression "(lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)" (parenthesized_expression "(lVar7 != 0xe)" ( (binary_expression "lVar7 != 0xe" identifier != number_literal) )) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd" (assignment_expression "*(undefined1 *)(param_1 + 0x10f2) = param_2[1]" (pointer_expression "*(undefined1 *)(param_1 + 0x10f2)" * (cast_expression "(undefined1 *)(param_1 + 0x10f2)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f2)" ( (binary_expression "param_1 + 0x10f2" identifier + number_literal) )))) = (subscript_expression "param_2[1]" identifier [ number_literal ])) , (binary_expression "lVar7 != 0xd" identifier != number_literal)) ))) )) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7))))))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))" (assignment_expression "*(undefined1 *)(param_1 + 0x10f3) = param_2[2]" (pointer_expression "*(undefined1 *)(param_1 + 0x10f3)" * (cast_expression "(undefined1 *)(param_1 + 0x10f3)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f3)" ( (binary_expression "param_1 + 0x10f3" identifier + number_literal) )))) = (subscript_expression "param_2[2]" identifier [ number_literal ])) , (binary_expression "lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))" (binary_expression "lVar7 != 0xc" identifier != number_literal) && (parenthesized_expression "((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))" ( (parenthesized_expression "(((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7))))" ( (binary_expression "((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))" (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9))" ( (binary_expression "(*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)" (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)" (assignment_expression "*(undefined1 *)(param_1 + 0x10f4) = param_2[3]" (pointer_expression "*(undefined1 *)(param_1 + 0x10f4)" * (cast_expression "(undefined1 *)(param_1 + 0x10f4)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f4)" ( (binary_expression "param_1 + 0x10f4" identifier + number_literal) )))) = (subscript_expression "param_2[3]" identifier [ number_literal ])) , (binary_expression "lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)" (binary_expression "lVar7 != 0xb" identifier != number_literal) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10" (assignment_expression "*(undefined1 *)(param_1 + 0x10f5) = param_2[4]" (pointer_expression "*(undefined1 *)(param_1 + 0x10f5)" * (cast_expression "(undefined1 *)(param_1 + 0x10f5)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f5)" ( (binary_expression "param_1 + 0x10f5" identifier + number_literal) )))) = (subscript_expression "param_2[4]" identifier [ number_literal ])) , (binary_expression "lVar7 != 10" identifier != number_literal)) )))) )) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9" (assignment_expression "*(undefined1 *)(param_1 + 0x10f6) = param_2[5]" (pointer_expression "*(undefined1 *)(param_1 + 0x10f6)" * (cast_expression "(undefined1 *)(param_1 + 0x10f6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f6)" ( (binary_expression "param_1 + 0x10f6" identifier + number_literal) )))) = (subscript_expression "param_2[5]" identifier [ number_literal ])) , (binary_expression "lVar7 != 9" identifier != number_literal)) ))) )) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)" (assignment_expression "*(undefined1 *)(param_1 + 0x10f7) = param_2[6]" (pointer_expression "*(undefined1 *)(param_1 + 0x10f7)" * (cast_expression "(undefined1 *)(param_1 + 0x10f7)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f7)" ( (binary_expression "param_1 + 0x10f7" identifier + number_literal) )))) = (subscript_expression "param_2[6]" identifier [ number_literal ])) , (binary_expression "lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)" (binary_expression "lVar7 != 8" identifier != number_literal) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7" (assignment_expression "*(undefined1 *)(param_1 + 0x10f8) = param_2[7]" (pointer_expression "*(undefined1 *)(param_1 + 0x10f8)" * (cast_expression "(undefined1 *)(param_1 + 0x10f8)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f8)" ( (binary_expression "param_1 + 0x10f8" identifier + number_literal) )))) = (subscript_expression "param_2[7]" identifier [ number_literal ])) , (binary_expression "lVar7 != 7" identifier != number_literal)) )))) )) ))) )) )))) )) ))) )) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6" (assignment_expression "*(undefined1 *)(param_1 + 0x10f9) = param_2[8]" (pointer_expression "*(undefined1 *)(param_1 + 0x10f9)" * (cast_expression "(undefined1 *)(param_1 + 0x10f9)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f9)" ( (binary_expression "param_1 + 0x10f9" identifier + number_literal) )))) = (subscript_expression "param_2[8]" identifier [ number_literal ])) , (binary_expression "lVar7 != 6" identifier != number_literal)) ))) )) && (parenthesized_expression "(((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))))" ( (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1))))))" ( (binary_expression "(*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))" (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)" (assignment_expression "*(undefined1 *)(param_1 + 0x10fa) = param_2[9]" (pointer_expression "*(undefined1 *)(param_1 + 0x10fa)" * (cast_expression "(undefined1 *)(param_1 + 0x10fa)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10fa)" ( (binary_expression "param_1 + 0x10fa" identifier + number_literal) )))) = (subscript_expression "param_2[9]" identifier [ number_literal ])) , (binary_expression "lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)" (binary_expression "lVar7 != 5" identifier != number_literal) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4" (assignment_expression "*(undefined1 *)(param_1 + 0x10fb) = param_2[10]" (pointer_expression "*(undefined1 *)(param_1 + 0x10fb)" * (cast_expression "(undefined1 *)(param_1 + 0x10fb)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10fb)" ( (binary_expression "param_1 + 0x10fb" identifier + number_literal) )))) = (subscript_expression "param_2[10]" identifier [ number_literal ])) , (binary_expression "lVar7 != 4" identifier != number_literal)) )))) )) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1))))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))" (assignment_expression "*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb]" (pointer_expression "*(undefined1 *)(param_1 + 0x10fc)" * (cast_expression "(undefined1 *)(param_1 + 0x10fc)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10fc)" ( (binary_expression "param_1 + 0x10fc" identifier + number_literal) )))) = (subscript_expression "param_2[0xb]" identifier [ number_literal ])) , (binary_expression "lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))" (binary_expression "lVar7 != 3" identifier != number_literal) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)" (assignment_expression "*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc]" (pointer_expression "*(undefined1 *)(param_1 + 0x10fd)" * (cast_expression "(undefined1 *)(param_1 + 0x10fd)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10fd)" ( (binary_expression "param_1 + 0x10fd" identifier + number_literal) )))) = (subscript_expression "param_2[0xc]" identifier [ number_literal ])) , (binary_expression "lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)" (binary_expression "lVar7 != 2" identifier != number_literal) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1" (assignment_expression "*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd]" (pointer_expression "*(undefined1 *)(param_1 + 0x10fe)" * (cast_expression "(undefined1 *)(param_1 + 0x10fe)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10fe)" ( (binary_expression "param_1 + 0x10fe" identifier + number_literal) )))) = (subscript_expression "param_2[0xd]" identifier [ number_literal ])) , (binary_expression "lVar7 != 1" identifier != number_literal)) )))) )) )))) )) ))) )) ))) )) (compound_statement "{\n      *(undefined1 *)(param_1 + 0x10ff) = param_2[0xe];\n    }" { (expression_statement "*(undefined1 *)(param_1 + 0x10ff) = param_2[0xe];" (assignment_expression "*(undefined1 *)(param_1 + 0x10ff) = param_2[0xe]" (pointer_expression "*(undefined1 *)(param_1 + 0x10ff)" * (cast_expression "(undefined1 *)(param_1 + 0x10ff)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10ff)" ( (binary_expression "param_1 + 0x10ff" identifier + number_literal) )))) = (subscript_expression "param_2[0xe]" identifier [ number_literal ])) ;) })) (if_statement "if (0xf < 0x10U - lVar7) goto LAB_001331f8;" if (parenthesized_expression "(0xf < 0x10U - lVar7)" ( (binary_expression "0xf < 0x10U - lVar7" number_literal < (binary_expression "0x10U - lVar7" number_literal - identifier)) )) (goto_statement "goto LAB_001331f8;" goto statement_identifier ;)) (expression_statement "*(undefined1 *)(param_1 + 0x10f0 + (0x10U - lVar7)) = 0;" (assignment_expression "*(undefined1 *)(param_1 + 0x10f0 + (0x10U - lVar7)) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f0 + (0x10U - lVar7))" * (cast_expression "(undefined1 *)(param_1 + 0x10f0 + (0x10U - lVar7))" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f0 + (0x10U - lVar7))" ( (binary_expression "param_1 + 0x10f0 + (0x10U - lVar7)" (binary_expression "param_1 + 0x10f0" identifier + number_literal) + (parenthesized_expression "(0x10U - lVar7)" ( (binary_expression "0x10U - lVar7" number_literal - identifier) ))) )))) = number_literal) ;) (if_statement "if (0x11 - lVar7 == 0x10) goto LAB_001331f8;" if (parenthesized_expression "(0x11 - lVar7 == 0x10)" ( (binary_expression "0x11 - lVar7 == 0x10" (binary_expression "0x11 - lVar7" number_literal - identifier) == number_literal) )) (goto_statement "goto LAB_001331f8;" goto statement_identifier ;)) (expression_statement "*(undefined1 *)(param_1 + 0x10f0 + (0x11 - lVar7)) = 0;" (assignment_expression "*(undefined1 *)(param_1 + 0x10f0 + (0x11 - lVar7)) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f0 + (0x11 - lVar7))" * (cast_expression "(undefined1 *)(param_1 + 0x10f0 + (0x11 - lVar7))" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f0 + (0x11 - lVar7))" ( (binary_expression "param_1 + 0x10f0 + (0x11 - lVar7)" (binary_expression "param_1 + 0x10f0" identifier + number_literal) + (parenthesized_expression "(0x11 - lVar7)" ( (binary_expression "0x11 - lVar7" number_literal - identifier) ))) )))) = number_literal) ;) (expression_statement "lVar7 = 0x12 - lVar7;" (assignment_expression "lVar7 = 0x12 - lVar7" identifier = (binary_expression "0x12 - lVar7" number_literal - identifier)) ;) (if_statement "if (lVar7 == 0x10) goto LAB_001331f8;" if (parenthesized_expression "(lVar7 == 0x10)" ( (binary_expression "lVar7 == 0x10" identifier == number_literal) )) (goto_statement "goto LAB_001331f8;" goto statement_identifier ;)) }))) (expression_statement "*(undefined1 *)(param_1 + 0x10f0 + lVar7) = 0;" (assignment_expression "*(undefined1 *)(param_1 + 0x10f0 + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f0 + lVar7)" * (cast_expression "(undefined1 *)(param_1 + 0x10f0 + lVar7)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f0 + lVar7)" ( (binary_expression "param_1 + 0x10f0 + lVar7" (binary_expression "param_1 + 0x10f0" identifier + number_literal) + identifier) )))) = number_literal) ;) (if_statement "if (((((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)) &&\n       (*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd)) &&\n      (((*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&\n       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))))))) &&\n     ((*(undefined1 *)(param_1 + 0x10f8 + lVar7) = 0, lVar7 != 7 &&\n      (((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)))))) {\n    *(undefined1 *)(param_1 + 0x10ff) = 0;\n  }" if (parenthesized_expression "(((((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)) &&\n       (*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd)) &&\n      (((*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&\n       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))))))) &&\n     ((*(undefined1 *)(param_1 + 0x10f8 + lVar7) = 0, lVar7 != 7 &&\n      (((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3))))))" ( (binary_expression "((((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)) &&\n       (*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd)) &&\n      (((*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&\n       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))))))) &&\n     ((*(undefined1 *)(param_1 + 0x10f8 + lVar7) = 0, lVar7 != 7 &&\n      (((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)))))" (parenthesized_expression "((((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)) &&\n       (*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd)) &&\n      (((*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&\n       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8))))))))" ( (binary_expression "(((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)) &&\n       (*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd)) &&\n      (((*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&\n       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))))))" (parenthesized_expression "(((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)) &&\n       (*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd))" ( (binary_expression "((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)) &&\n       (*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd)" (parenthesized_expression "((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe))" ( (binary_expression "(lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)" (parenthesized_expression "(lVar7 != 0xf)" ( (binary_expression "lVar7 != 0xf" identifier != number_literal) )) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe" (assignment_expression "*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f1 + lVar7)" * (cast_expression "(undefined1 *)(param_1 + 0x10f1 + lVar7)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f1 + lVar7)" ( (binary_expression "param_1 + 0x10f1 + lVar7" (binary_expression "param_1 + 0x10f1" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "lVar7 != 0xe" identifier != number_literal)) ))) )) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd" (assignment_expression "*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f2 + lVar7)" * (cast_expression "(undefined1 *)(param_1 + 0x10f2 + lVar7)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f2 + lVar7)" ( (binary_expression "param_1 + 0x10f2 + lVar7" (binary_expression "param_1 + 0x10f2" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "lVar7 != 0xd" identifier != number_literal)) ))) )) && (parenthesized_expression "(((*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&\n       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))))))" ( (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&\n       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8))))))" ( (binary_expression "(*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&\n       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))))" (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)" (assignment_expression "*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f3 + lVar7)" * (cast_expression "(undefined1 *)(param_1 + 0x10f3 + lVar7)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f3 + lVar7)" ( (binary_expression "param_1 + 0x10f3 + lVar7" (binary_expression "param_1 + 0x10f3" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)" (binary_expression "lVar7 != 0xc" identifier != number_literal) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb" (assignment_expression "*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f4 + lVar7)" * (cast_expression "(undefined1 *)(param_1 + 0x10f4 + lVar7)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f4 + lVar7)" ( (binary_expression "param_1 + 0x10f4 + lVar7" (binary_expression "param_1 + 0x10f4" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "lVar7 != 0xb" identifier != number_literal)) )))) )) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8))))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))" (assignment_expression "*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f5 + lVar7)" * (cast_expression "(undefined1 *)(param_1 + 0x10f5 + lVar7)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f5 + lVar7)" ( (binary_expression "param_1 + 0x10f5 + lVar7" (binary_expression "param_1 + 0x10f5" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))" (binary_expression "lVar7 != 10" identifier != number_literal) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)" (assignment_expression "*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f6 + lVar7)" * (cast_expression "(undefined1 *)(param_1 + 0x10f6 + lVar7)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f6 + lVar7)" ( (binary_expression "param_1 + 0x10f6 + lVar7" (binary_expression "param_1 + 0x10f6" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)" (binary_expression "lVar7 != 9" identifier != number_literal) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8" (assignment_expression "*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f7 + lVar7)" * (cast_expression "(undefined1 *)(param_1 + 0x10f7 + lVar7)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f7 + lVar7)" ( (binary_expression "param_1 + 0x10f7 + lVar7" (binary_expression "param_1 + 0x10f7" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "lVar7 != 8" identifier != number_literal)) )))) )) )))) )) ))) )) ))) )) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10f8 + lVar7) = 0, lVar7 != 7 &&\n      (((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)))))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f8 + lVar7) = 0, lVar7 != 7 &&\n      (((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3))))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f8 + lVar7) = 0, lVar7 != 7 &&\n      (((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)))" (assignment_expression "*(undefined1 *)(param_1 + 0x10f8 + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f8 + lVar7)" * (cast_expression "(undefined1 *)(param_1 + 0x10f8 + lVar7)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f8 + lVar7)" ( (binary_expression "param_1 + 0x10f8 + lVar7" (binary_expression "param_1 + 0x10f8" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "lVar7 != 7 &&\n      (((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)))" (binary_expression "lVar7 != 7" identifier != number_literal) && (parenthesized_expression "(((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)))" ( (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3))" ( (binary_expression "(*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)" (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)" (assignment_expression "*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f9 + lVar7)" * (cast_expression "(undefined1 *)(param_1 + 0x10f9 + lVar7)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f9 + lVar7)" ( (binary_expression "param_1 + 0x10f9 + lVar7" (binary_expression "param_1 + 0x10f9" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)" (binary_expression "lVar7 != 6" identifier != number_literal) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5" (assignment_expression "*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10fa + lVar7)" * (cast_expression "(undefined1 *)(param_1 + 0x10fa + lVar7)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10fa + lVar7)" ( (binary_expression "param_1 + 0x10fa + lVar7" (binary_expression "param_1 + 0x10fa" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "lVar7 != 5" identifier != number_literal)) )))) )) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3" (assignment_expression "*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10fb + lVar7)" * (cast_expression "(undefined1 *)(param_1 + 0x10fb + lVar7)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10fb + lVar7)" ( (binary_expression "param_1 + 0x10fb + lVar7" (binary_expression "param_1 + 0x10fb" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "lVar7 == 3" identifier == number_literal)) ))) )) )))) )) ))) )) (compound_statement "{\n    *(undefined1 *)(param_1 + 0x10ff) = 0;\n  }" { (expression_statement "*(undefined1 *)(param_1 + 0x10ff) = 0;" (assignment_expression "*(undefined1 *)(param_1 + 0x10ff) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10ff)" * (cast_expression "(undefined1 *)(param_1 + 0x10ff)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10ff)" ( (binary_expression "param_1 + 0x10ff" identifier + number_literal) )))) = number_literal) ;) })) (labeled_statement "LAB_001331f8:\n  *(undefined1 *)(param_1 + 0x1110) = 0x10;" statement_identifier : (expression_statement "*(undefined1 *)(param_1 + 0x1110) = 0x10;" (assignment_expression "*(undefined1 *)(param_1 + 0x1110) = 0x10" (pointer_expression "*(undefined1 *)(param_1 + 0x1110)" * (cast_expression "(undefined1 *)(param_1 + 0x1110)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1110)" ( (binary_expression "param_1 + 0x1110" identifier + number_literal) )))) = number_literal) ;)) (return_statement "return;" return ;) })))
(translation_unit "int ccm_add_nonce(ccm_state *ccm,uchar *nonce,ulong noncelen)\n\n{\n  byte bVar1;\n  byte bVar2;\n  int iVar3;\n  ulong uVar4;\n  long lVar5;\n  ulong uVar6;\n  ulong uVar7;\n  \n  if (ccm == (ccm_state *)0x0) {\n                    /* WARNING: Subroutine does not return */\n    crypt_argchk("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a);\n  }\n  if (nonce == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n    crypt_argchk("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b);\n  }\n  if (0xd < noncelen) {\n    noncelen = 0xd;\n  }\n  uVar6 = ccm->L;\n  uVar4 = 0xf - noncelen;\n  ccm->noncelen = noncelen;\n  if (uVar6 < uVar4) {\n    ccm->L = uVar4;\n  }\n  else {\n    uVar7 = noncelen + uVar6;\n    noncelen = 0xf - uVar6;\n    uVar4 = uVar6;\n    if (0xf < uVar7) {\n      ccm->noncelen = noncelen;\n    }\n  }\n  uVar6 = ccm->ptlen;\n  ccm->PAD[0] = (ccm->aadlen != 0) << 6 | (byte)((ccm->taglen + -2 >> 1) << 3) | (char)uVar4 - 1U;\n  if (noncelen == 0) {\n    lVar5 = 1;\nLAB_00133225:\n    if (uVar4 < 5) goto LAB_00132d92;\n    ccm->PAD[lVar5] = '\0';\n    if ((((uVar4 != 5) && (ccm->PAD[lVar5 + 1] = '\0', uVar4 != 6)) &&\n        ((ccm->PAD[lVar5 + 2] = '\0', uVar4 != 7 &&\n         (((((ccm->PAD[lVar5 + 3] = '\0', uVar4 != 8 && (ccm->PAD[lVar5 + 4] = '\0', uVar4 != 9)) &&\n            (ccm->PAD[lVar5 + 5] = '\0', uVar4 != 10)) &&\n           ((ccm->PAD[lVar5 + 6] = '\0', uVar4 != 0xb && (ccm->PAD[lVar5 + 7] = '\0', uVar4 != 0xc))\n           )) && (ccm->PAD[lVar5 + 8] = '\0', uVar4 != 0xd)))))) &&\n       (((ccm->PAD[lVar5 + 9] = '\0', uVar4 != 0xe && (ccm->PAD[lVar5 + 10] = '\0', uVar4 != 0xf))\n        && ((ccm->PAD[lVar5 + 0xb] = '\0', uVar4 != 0x10 &&\n            ((ccm->PAD[lVar5 + 0xc] = '\0', uVar4 != 0x11 &&\n             (ccm->PAD[lVar5 + 0xd] = '\0', uVar4 != 0x12)))))))) {\n      ccm->PAD[lVar5 + 0xe] = '\0';\n    }\n    uVar7 = uVar4 - 4;\n    lVar5 = lVar5 + uVar7;\n  }\n  else {\n    ccm->PAD[1] = *nonce;\n    if ((((1 < noncelen) && (ccm->PAD[2] = nonce[1], noncelen != 2)) &&\n        (ccm->PAD[3] = nonce[2], noncelen != 3)) &&\n       (((((ccm->PAD[4] = nonce[3], noncelen != 4 && (ccm->PAD[5] = nonce[4], noncelen != 5)) &&\n          ((ccm->PAD[6] = nonce[5], noncelen != 6 &&\n           ((ccm->PAD[7] = nonce[6], noncelen != 7 && (ccm->PAD[8] = nonce[7], noncelen != 8))))))\n         && (ccm->PAD[9] = nonce[8], noncelen != 9)) &&\n        ((((ccm->PAD[10] = nonce[9], noncelen != 10 && (ccm->PAD[0xb] = nonce[10], noncelen != 0xb))\n          && (ccm->PAD[0xc] = nonce[0xb], noncelen != 0xc)) &&\n         ((ccm->PAD[0xd] = nonce[0xc], noncelen != 0xd &&\n          (ccm->PAD[0xe] = nonce[0xd], noncelen != 0xe)))))))) {\n      ccm->PAD[0xf] = nonce[0xe];\n    }\n    lVar5 = noncelen + 1;\n    if (3 < uVar4) goto LAB_00133225;\n    iVar3 = 8;\n    if ((uVar4 == 3) || (iVar3 = 0x10, uVar4 == 2)) {\n      uVar6 = uVar6 << iVar3;\n    }\n    else {\n      uVar7 = uVar6 << 0x18;\n      uVar6 = 0;\n      if (uVar4 != 0) {\n        uVar6 = uVar7;\n      }\n    }\nLAB_00132d92:\n    uVar7 = 0;\n  }\n  if (((((uVar7 < uVar4) && (ccm->PAD[lVar5] = (uchar)(uVar6 >> 0x18), uVar7 + 1 < uVar4)) &&\n       (ccm->PAD[lVar5 + 1] = (uchar)(uVar6 >> 0x10), uVar7 + 2 < uVar4)) &&\n      (((ccm->PAD[lVar5 + 2] = (uchar)(uVar6 >> 8), uVar7 + 3 < uVar4 &&\n        (ccm->PAD[lVar5 + 3] = (uchar)uVar6, uVar7 + 4 < uVar4)) &&\n       ((ccm->PAD[lVar5 + 4] = '\0', uVar7 + 5 < uVar4 &&\n        ((ccm->PAD[lVar5 + 5] = '\0', uVar7 + 6 < uVar4 &&\n         (ccm->PAD[lVar5 + 6] = '\0', uVar7 + 7 < uVar4)))))))) &&\n     (((ccm->PAD[lVar5 + 7] = '\0', uVar7 + 8 < uVar4 &&\n       (((ccm->PAD[lVar5 + 8] = '\0', uVar7 + 9 < uVar4 &&\n         (ccm->PAD[lVar5 + 9] = '\0', uVar7 + 10 < uVar4)) &&\n        (ccm->PAD[lVar5 + 10] = '\0', uVar7 + 0xb < uVar4)))) &&\n      ((ccm->PAD[lVar5 + 0xb] = '\0', uVar7 + 0xc < uVar4 &&\n       (ccm->PAD[lVar5 + 0xc] = '\0', uVar7 + 0xd < uVar4)))))) {\n    ccm->PAD[lVar5 + 0xd] = '\0';\n    if (uVar7 + 0xe < uVar4) {\n      ccm->PAD[lVar5 + 0xe] = '\0';\n      if (uVar7 + 0xf < uVar4) {\n        ccm->PAD[lVar5 + 0xf] = '\0';\n      }\n    }\n  }\n  iVar3 = (**(code **)(PTR_cipher_descriptor_001dded0 + (long)ccm->cipher * 0xc0 + 0x28))\n                    (ccm->PAD,ccm->PAD,ccm);\n  if (iVar3 != 0) {\n    return iVar3;\n  }\n  uVar6 = ccm->aadlen;\n  ccm->x = 0;\n  if (uVar6 != 0) {\n    bVar1 = ccm->PAD[1];\n    bVar2 = (byte)(uVar6 >> 8);\n    if (uVar6 < 0xff00) {\n      ccm->x = 2;\n      ccm->PAD[0] = ccm->PAD[0] ^ bVar2;\n      ccm->PAD[1] = (byte)uVar6 ^ bVar1;\n    }\n    else {\n      ccm->PAD[0] = ~ccm->PAD[0];\n      ccm->PAD[1] = bVar1 ^ 0xfe;\n      ccm->PAD[2] = ccm->PAD[2] ^ (byte)(uVar6 >> 0x18);\n      ccm->PAD[3] = ccm->PAD[3] ^ (byte)(uVar6 >> 0x10);\n      ccm->PAD[4] = ccm->PAD[4] ^ bVar2;\n      ccm->x = 6;\n      ccm->PAD[5] = ccm->PAD[5] ^ (byte)uVar6;\n    }\n  }\n  uVar6 = ccm->L;\n  ccm->ctr[0] = (char)uVar6 + 0xff;\n  if (uVar6 == 0xf) {\n    lVar5 = 3;\n    ccm->ctr[1] = '\0';\n    ccm->ctr[2] = '\0';\n  }\n  else {\n    ccm->ctr[1] = *nonce;\n    if (((((uVar6 != 0xe) && (ccm->ctr[2] = nonce[1], uVar6 != 0xd)) &&\n         ((ccm->ctr[3] = nonce[2], uVar6 != 0xc &&\n          ((((ccm->ctr[4] = nonce[3], uVar6 != 0xb && (ccm->ctr[5] = nonce[4], uVar6 != 10)) &&\n            (ccm->ctr[6] = nonce[5], uVar6 != 9)) &&\n           ((ccm->ctr[7] = nonce[6], uVar6 != 8 && (ccm->ctr[8] = nonce[7], uVar6 != 7)))))))) &&\n        (ccm->ctr[9] = nonce[8], uVar6 != 6)) &&\n       (((ccm->ctr[10] = nonce[9], uVar6 != 5 && (ccm->ctr[0xb] = nonce[10], uVar6 != 4)) &&\n        ((ccm->ctr[0xc] = nonce[0xb], uVar6 != 3 &&\n         ((ccm->ctr[0xd] = nonce[0xc], uVar6 != 2 && (ccm->ctr[0xe] = nonce[0xd], uVar6 != 1))))))))\n    {\n      ccm->ctr[0xf] = nonce[0xe];\n    }\n    if (0xf < -uVar6 + 0x10) goto LAB_001331f8;\n    *(undefined1 *)((long)ccm + -uVar6 + 0x1100) = 0;\n    if (-uVar6 == -1) goto LAB_001331f8;\n    *(undefined1 *)((long)ccm + -uVar6 + 0x1101) = 0;\n    lVar5 = 0x12 - uVar6;\n    if (lVar5 == 0x10) goto LAB_001331f8;\n  }\n  ccm->ctr[lVar5] = '\0';\n  if (((((lVar5 != 0xf) && (ccm->ctr[lVar5 + 1] = '\0', lVar5 != 0xe)) &&\n       (ccm->ctr[lVar5 + 2] = '\0', lVar5 != 0xd)) &&\n      (((ccm->ctr[lVar5 + 3] = '\0', lVar5 != 0xc && (ccm->ctr[lVar5 + 4] = '\0', lVar5 != 0xb)) &&\n       ((ccm->ctr[lVar5 + 5] = '\0', lVar5 != 10 &&\n        ((ccm->ctr[lVar5 + 6] = '\0', lVar5 != 9 && (ccm->ctr[lVar5 + 7] = '\0', lVar5 != 8))))))))\n     && ((ccm->ctr[lVar5 + 8] = '\0', lVar5 != 7 &&\n         (((ccm->ctr[lVar5 + 9] = '\0', lVar5 != 6 && (ccm->ctr[lVar5 + 10] = '\0', lVar5 != 5)) &&\n          (ccm->ctr[lVar5 + 0xb] = '\0', lVar5 == 3)))))) {\n    ccm->ctr[0xf] = '\0';\n  }\nLAB_001331f8:\n  ccm->CTRlen = '\x10';\n  return 0;\n}\n\n" (function_definition "int ccm_add_nonce(ccm_state *ccm,uchar *nonce,ulong noncelen)\n\n{\n  byte bVar1;\n  byte bVar2;\n  int iVar3;\n  ulong uVar4;\n  long lVar5;\n  ulong uVar6;\n  ulong uVar7;\n  \n  if (ccm == (ccm_state *)0x0) {\n                    /* WARNING: Subroutine does not return */\n    crypt_argchk("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a);\n  }\n  if (nonce == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n    crypt_argchk("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b);\n  }\n  if (0xd < noncelen) {\n    noncelen = 0xd;\n  }\n  uVar6 = ccm->L;\n  uVar4 = 0xf - noncelen;\n  ccm->noncelen = noncelen;\n  if (uVar6 < uVar4) {\n    ccm->L = uVar4;\n  }\n  else {\n    uVar7 = noncelen + uVar6;\n    noncelen = 0xf - uVar6;\n    uVar4 = uVar6;\n    if (0xf < uVar7) {\n      ccm->noncelen = noncelen;\n    }\n  }\n  uVar6 = ccm->ptlen;\n  ccm->PAD[0] = (ccm->aadlen != 0) << 6 | (byte)((ccm->taglen + -2 >> 1) << 3) | (char)uVar4 - 1U;\n  if (noncelen == 0) {\n    lVar5 = 1;\nLAB_00133225:\n    if (uVar4 < 5) goto LAB_00132d92;\n    ccm->PAD[lVar5] = '\0';\n    if ((((uVar4 != 5) && (ccm->PAD[lVar5 + 1] = '\0', uVar4 != 6)) &&\n        ((ccm->PAD[lVar5 + 2] = '\0', uVar4 != 7 &&\n         (((((ccm->PAD[lVar5 + 3] = '\0', uVar4 != 8 && (ccm->PAD[lVar5 + 4] = '\0', uVar4 != 9)) &&\n            (ccm->PAD[lVar5 + 5] = '\0', uVar4 != 10)) &&\n           ((ccm->PAD[lVar5 + 6] = '\0', uVar4 != 0xb && (ccm->PAD[lVar5 + 7] = '\0', uVar4 != 0xc))\n           )) && (ccm->PAD[lVar5 + 8] = '\0', uVar4 != 0xd)))))) &&\n       (((ccm->PAD[lVar5 + 9] = '\0', uVar4 != 0xe && (ccm->PAD[lVar5 + 10] = '\0', uVar4 != 0xf))\n        && ((ccm->PAD[lVar5 + 0xb] = '\0', uVar4 != 0x10 &&\n            ((ccm->PAD[lVar5 + 0xc] = '\0', uVar4 != 0x11 &&\n             (ccm->PAD[lVar5 + 0xd] = '\0', uVar4 != 0x12)))))))) {\n      ccm->PAD[lVar5 + 0xe] = '\0';\n    }\n    uVar7 = uVar4 - 4;\n    lVar5 = lVar5 + uVar7;\n  }\n  else {\n    ccm->PAD[1] = *nonce;\n    if ((((1 < noncelen) && (ccm->PAD[2] = nonce[1], noncelen != 2)) &&\n        (ccm->PAD[3] = nonce[2], noncelen != 3)) &&\n       (((((ccm->PAD[4] = nonce[3], noncelen != 4 && (ccm->PAD[5] = nonce[4], noncelen != 5)) &&\n          ((ccm->PAD[6] = nonce[5], noncelen != 6 &&\n           ((ccm->PAD[7] = nonce[6], noncelen != 7 && (ccm->PAD[8] = nonce[7], noncelen != 8))))))\n         && (ccm->PAD[9] = nonce[8], noncelen != 9)) &&\n        ((((ccm->PAD[10] = nonce[9], noncelen != 10 && (ccm->PAD[0xb] = nonce[10], noncelen != 0xb))\n          && (ccm->PAD[0xc] = nonce[0xb], noncelen != 0xc)) &&\n         ((ccm->PAD[0xd] = nonce[0xc], noncelen != 0xd &&\n          (ccm->PAD[0xe] = nonce[0xd], noncelen != 0xe)))))))) {\n      ccm->PAD[0xf] = nonce[0xe];\n    }\n    lVar5 = noncelen + 1;\n    if (3 < uVar4) goto LAB_00133225;\n    iVar3 = 8;\n    if ((uVar4 == 3) || (iVar3 = 0x10, uVar4 == 2)) {\n      uVar6 = uVar6 << iVar3;\n    }\n    else {\n      uVar7 = uVar6 << 0x18;\n      uVar6 = 0;\n      if (uVar4 != 0) {\n        uVar6 = uVar7;\n      }\n    }\nLAB_00132d92:\n    uVar7 = 0;\n  }\n  if (((((uVar7 < uVar4) && (ccm->PAD[lVar5] = (uchar)(uVar6 >> 0x18), uVar7 + 1 < uVar4)) &&\n       (ccm->PAD[lVar5 + 1] = (uchar)(uVar6 >> 0x10), uVar7 + 2 < uVar4)) &&\n      (((ccm->PAD[lVar5 + 2] = (uchar)(uVar6 >> 8), uVar7 + 3 < uVar4 &&\n        (ccm->PAD[lVar5 + 3] = (uchar)uVar6, uVar7 + 4 < uVar4)) &&\n       ((ccm->PAD[lVar5 + 4] = '\0', uVar7 + 5 < uVar4 &&\n        ((ccm->PAD[lVar5 + 5] = '\0', uVar7 + 6 < uVar4 &&\n         (ccm->PAD[lVar5 + 6] = '\0', uVar7 + 7 < uVar4)))))))) &&\n     (((ccm->PAD[lVar5 + 7] = '\0', uVar7 + 8 < uVar4 &&\n       (((ccm->PAD[lVar5 + 8] = '\0', uVar7 + 9 < uVar4 &&\n         (ccm->PAD[lVar5 + 9] = '\0', uVar7 + 10 < uVar4)) &&\n        (ccm->PAD[lVar5 + 10] = '\0', uVar7 + 0xb < uVar4)))) &&\n      ((ccm->PAD[lVar5 + 0xb] = '\0', uVar7 + 0xc < uVar4 &&\n       (ccm->PAD[lVar5 + 0xc] = '\0', uVar7 + 0xd < uVar4)))))) {\n    ccm->PAD[lVar5 + 0xd] = '\0';\n    if (uVar7 + 0xe < uVar4) {\n      ccm->PAD[lVar5 + 0xe] = '\0';\n      if (uVar7 + 0xf < uVar4) {\n        ccm->PAD[lVar5 + 0xf] = '\0';\n      }\n    }\n  }\n  iVar3 = (**(code **)(PTR_cipher_descriptor_001dded0 + (long)ccm->cipher * 0xc0 + 0x28))\n                    (ccm->PAD,ccm->PAD,ccm);\n  if (iVar3 != 0) {\n    return iVar3;\n  }\n  uVar6 = ccm->aadlen;\n  ccm->x = 0;\n  if (uVar6 != 0) {\n    bVar1 = ccm->PAD[1];\n    bVar2 = (byte)(uVar6 >> 8);\n    if (uVar6 < 0xff00) {\n      ccm->x = 2;\n      ccm->PAD[0] = ccm->PAD[0] ^ bVar2;\n      ccm->PAD[1] = (byte)uVar6 ^ bVar1;\n    }\n    else {\n      ccm->PAD[0] = ~ccm->PAD[0];\n      ccm->PAD[1] = bVar1 ^ 0xfe;\n      ccm->PAD[2] = ccm->PAD[2] ^ (byte)(uVar6 >> 0x18);\n      ccm->PAD[3] = ccm->PAD[3] ^ (byte)(uVar6 >> 0x10);\n      ccm->PAD[4] = ccm->PAD[4] ^ bVar2;\n      ccm->x = 6;\n      ccm->PAD[5] = ccm->PAD[5] ^ (byte)uVar6;\n    }\n  }\n  uVar6 = ccm->L;\n  ccm->ctr[0] = (char)uVar6 + 0xff;\n  if (uVar6 == 0xf) {\n    lVar5 = 3;\n    ccm->ctr[1] = '\0';\n    ccm->ctr[2] = '\0';\n  }\n  else {\n    ccm->ctr[1] = *nonce;\n    if (((((uVar6 != 0xe) && (ccm->ctr[2] = nonce[1], uVar6 != 0xd)) &&\n         ((ccm->ctr[3] = nonce[2], uVar6 != 0xc &&\n          ((((ccm->ctr[4] = nonce[3], uVar6 != 0xb && (ccm->ctr[5] = nonce[4], uVar6 != 10)) &&\n            (ccm->ctr[6] = nonce[5], uVar6 != 9)) &&\n           ((ccm->ctr[7] = nonce[6], uVar6 != 8 && (ccm->ctr[8] = nonce[7], uVar6 != 7)))))))) &&\n        (ccm->ctr[9] = nonce[8], uVar6 != 6)) &&\n       (((ccm->ctr[10] = nonce[9], uVar6 != 5 && (ccm->ctr[0xb] = nonce[10], uVar6 != 4)) &&\n        ((ccm->ctr[0xc] = nonce[0xb], uVar6 != 3 &&\n         ((ccm->ctr[0xd] = nonce[0xc], uVar6 != 2 && (ccm->ctr[0xe] = nonce[0xd], uVar6 != 1))))))))\n    {\n      ccm->ctr[0xf] = nonce[0xe];\n    }\n    if (0xf < -uVar6 + 0x10) goto LAB_001331f8;\n    *(undefined1 *)((long)ccm + -uVar6 + 0x1100) = 0;\n    if (-uVar6 == -1) goto LAB_001331f8;\n    *(undefined1 *)((long)ccm + -uVar6 + 0x1101) = 0;\n    lVar5 = 0x12 - uVar6;\n    if (lVar5 == 0x10) goto LAB_001331f8;\n  }\n  ccm->ctr[lVar5] = '\0';\n  if (((((lVar5 != 0xf) && (ccm->ctr[lVar5 + 1] = '\0', lVar5 != 0xe)) &&\n       (ccm->ctr[lVar5 + 2] = '\0', lVar5 != 0xd)) &&\n      (((ccm->ctr[lVar5 + 3] = '\0', lVar5 != 0xc && (ccm->ctr[lVar5 + 4] = '\0', lVar5 != 0xb)) &&\n       ((ccm->ctr[lVar5 + 5] = '\0', lVar5 != 10 &&\n        ((ccm->ctr[lVar5 + 6] = '\0', lVar5 != 9 && (ccm->ctr[lVar5 + 7] = '\0', lVar5 != 8))))))))\n     && ((ccm->ctr[lVar5 + 8] = '\0', lVar5 != 7 &&\n         (((ccm->ctr[lVar5 + 9] = '\0', lVar5 != 6 && (ccm->ctr[lVar5 + 10] = '\0', lVar5 != 5)) &&\n          (ccm->ctr[lVar5 + 0xb] = '\0', lVar5 == 3)))))) {\n    ccm->ctr[0xf] = '\0';\n  }\nLAB_001331f8:\n  ccm->CTRlen = '\x10';\n  return 0;\n}" primitive_type (function_declarator "ccm_add_nonce(ccm_state *ccm,uchar *nonce,ulong noncelen)" identifier (parameter_list "(ccm_state *ccm,uchar *nonce,ulong noncelen)" ( (parameter_declaration "ccm_state *ccm" type_identifier (pointer_declarator "*ccm" * identifier)) , (parameter_declaration "uchar *nonce" type_identifier (pointer_declarator "*nonce" * identifier)) , (parameter_declaration "ulong noncelen" type_identifier identifier) ))) (compound_statement "{\n  byte bVar1;\n  byte bVar2;\n  int iVar3;\n  ulong uVar4;\n  long lVar5;\n  ulong uVar6;\n  ulong uVar7;\n  \n  if (ccm == (ccm_state *)0x0) {\n                    /* WARNING: Subroutine does not return */\n    crypt_argchk("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a);\n  }\n  if (nonce == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n    crypt_argchk("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b);\n  }\n  if (0xd < noncelen) {\n    noncelen = 0xd;\n  }\n  uVar6 = ccm->L;\n  uVar4 = 0xf - noncelen;\n  ccm->noncelen = noncelen;\n  if (uVar6 < uVar4) {\n    ccm->L = uVar4;\n  }\n  else {\n    uVar7 = noncelen + uVar6;\n    noncelen = 0xf - uVar6;\n    uVar4 = uVar6;\n    if (0xf < uVar7) {\n      ccm->noncelen = noncelen;\n    }\n  }\n  uVar6 = ccm->ptlen;\n  ccm->PAD[0] = (ccm->aadlen != 0) << 6 | (byte)((ccm->taglen + -2 >> 1) << 3) | (char)uVar4 - 1U;\n  if (noncelen == 0) {\n    lVar5 = 1;\nLAB_00133225:\n    if (uVar4 < 5) goto LAB_00132d92;\n    ccm->PAD[lVar5] = '\0';\n    if ((((uVar4 != 5) && (ccm->PAD[lVar5 + 1] = '\0', uVar4 != 6)) &&\n        ((ccm->PAD[lVar5 + 2] = '\0', uVar4 != 7 &&\n         (((((ccm->PAD[lVar5 + 3] = '\0', uVar4 != 8 && (ccm->PAD[lVar5 + 4] = '\0', uVar4 != 9)) &&\n            (ccm->PAD[lVar5 + 5] = '\0', uVar4 != 10)) &&\n           ((ccm->PAD[lVar5 + 6] = '\0', uVar4 != 0xb && (ccm->PAD[lVar5 + 7] = '\0', uVar4 != 0xc))\n           )) && (ccm->PAD[lVar5 + 8] = '\0', uVar4 != 0xd)))))) &&\n       (((ccm->PAD[lVar5 + 9] = '\0', uVar4 != 0xe && (ccm->PAD[lVar5 + 10] = '\0', uVar4 != 0xf))\n        && ((ccm->PAD[lVar5 + 0xb] = '\0', uVar4 != 0x10 &&\n            ((ccm->PAD[lVar5 + 0xc] = '\0', uVar4 != 0x11 &&\n             (ccm->PAD[lVar5 + 0xd] = '\0', uVar4 != 0x12)))))))) {\n      ccm->PAD[lVar5 + 0xe] = '\0';\n    }\n    uVar7 = uVar4 - 4;\n    lVar5 = lVar5 + uVar7;\n  }\n  else {\n    ccm->PAD[1] = *nonce;\n    if ((((1 < noncelen) && (ccm->PAD[2] = nonce[1], noncelen != 2)) &&\n        (ccm->PAD[3] = nonce[2], noncelen != 3)) &&\n       (((((ccm->PAD[4] = nonce[3], noncelen != 4 && (ccm->PAD[5] = nonce[4], noncelen != 5)) &&\n          ((ccm->PAD[6] = nonce[5], noncelen != 6 &&\n           ((ccm->PAD[7] = nonce[6], noncelen != 7 && (ccm->PAD[8] = nonce[7], noncelen != 8))))))\n         && (ccm->PAD[9] = nonce[8], noncelen != 9)) &&\n        ((((ccm->PAD[10] = nonce[9], noncelen != 10 && (ccm->PAD[0xb] = nonce[10], noncelen != 0xb))\n          && (ccm->PAD[0xc] = nonce[0xb], noncelen != 0xc)) &&\n         ((ccm->PAD[0xd] = nonce[0xc], noncelen != 0xd &&\n          (ccm->PAD[0xe] = nonce[0xd], noncelen != 0xe)))))))) {\n      ccm->PAD[0xf] = nonce[0xe];\n    }\n    lVar5 = noncelen + 1;\n    if (3 < uVar4) goto LAB_00133225;\n    iVar3 = 8;\n    if ((uVar4 == 3) || (iVar3 = 0x10, uVar4 == 2)) {\n      uVar6 = uVar6 << iVar3;\n    }\n    else {\n      uVar7 = uVar6 << 0x18;\n      uVar6 = 0;\n      if (uVar4 != 0) {\n        uVar6 = uVar7;\n      }\n    }\nLAB_00132d92:\n    uVar7 = 0;\n  }\n  if (((((uVar7 < uVar4) && (ccm->PAD[lVar5] = (uchar)(uVar6 >> 0x18), uVar7 + 1 < uVar4)) &&\n       (ccm->PAD[lVar5 + 1] = (uchar)(uVar6 >> 0x10), uVar7 + 2 < uVar4)) &&\n      (((ccm->PAD[lVar5 + 2] = (uchar)(uVar6 >> 8), uVar7 + 3 < uVar4 &&\n        (ccm->PAD[lVar5 + 3] = (uchar)uVar6, uVar7 + 4 < uVar4)) &&\n       ((ccm->PAD[lVar5 + 4] = '\0', uVar7 + 5 < uVar4 &&\n        ((ccm->PAD[lVar5 + 5] = '\0', uVar7 + 6 < uVar4 &&\n         (ccm->PAD[lVar5 + 6] = '\0', uVar7 + 7 < uVar4)))))))) &&\n     (((ccm->PAD[lVar5 + 7] = '\0', uVar7 + 8 < uVar4 &&\n       (((ccm->PAD[lVar5 + 8] = '\0', uVar7 + 9 < uVar4 &&\n         (ccm->PAD[lVar5 + 9] = '\0', uVar7 + 10 < uVar4)) &&\n        (ccm->PAD[lVar5 + 10] = '\0', uVar7 + 0xb < uVar4)))) &&\n      ((ccm->PAD[lVar5 + 0xb] = '\0', uVar7 + 0xc < uVar4 &&\n       (ccm->PAD[lVar5 + 0xc] = '\0', uVar7 + 0xd < uVar4)))))) {\n    ccm->PAD[lVar5 + 0xd] = '\0';\n    if (uVar7 + 0xe < uVar4) {\n      ccm->PAD[lVar5 + 0xe] = '\0';\n      if (uVar7 + 0xf < uVar4) {\n        ccm->PAD[lVar5 + 0xf] = '\0';\n      }\n    }\n  }\n  iVar3 = (**(code **)(PTR_cipher_descriptor_001dded0 + (long)ccm->cipher * 0xc0 + 0x28))\n                    (ccm->PAD,ccm->PAD,ccm);\n  if (iVar3 != 0) {\n    return iVar3;\n  }\n  uVar6 = ccm->aadlen;\n  ccm->x = 0;\n  if (uVar6 != 0) {\n    bVar1 = ccm->PAD[1];\n    bVar2 = (byte)(uVar6 >> 8);\n    if (uVar6 < 0xff00) {\n      ccm->x = 2;\n      ccm->PAD[0] = ccm->PAD[0] ^ bVar2;\n      ccm->PAD[1] = (byte)uVar6 ^ bVar1;\n    }\n    else {\n      ccm->PAD[0] = ~ccm->PAD[0];\n      ccm->PAD[1] = bVar1 ^ 0xfe;\n      ccm->PAD[2] = ccm->PAD[2] ^ (byte)(uVar6 >> 0x18);\n      ccm->PAD[3] = ccm->PAD[3] ^ (byte)(uVar6 >> 0x10);\n      ccm->PAD[4] = ccm->PAD[4] ^ bVar2;\n      ccm->x = 6;\n      ccm->PAD[5] = ccm->PAD[5] ^ (byte)uVar6;\n    }\n  }\n  uVar6 = ccm->L;\n  ccm->ctr[0] = (char)uVar6 + 0xff;\n  if (uVar6 == 0xf) {\n    lVar5 = 3;\n    ccm->ctr[1] = '\0';\n    ccm->ctr[2] = '\0';\n  }\n  else {\n    ccm->ctr[1] = *nonce;\n    if (((((uVar6 != 0xe) && (ccm->ctr[2] = nonce[1], uVar6 != 0xd)) &&\n         ((ccm->ctr[3] = nonce[2], uVar6 != 0xc &&\n          ((((ccm->ctr[4] = nonce[3], uVar6 != 0xb && (ccm->ctr[5] = nonce[4], uVar6 != 10)) &&\n            (ccm->ctr[6] = nonce[5], uVar6 != 9)) &&\n           ((ccm->ctr[7] = nonce[6], uVar6 != 8 && (ccm->ctr[8] = nonce[7], uVar6 != 7)))))))) &&\n        (ccm->ctr[9] = nonce[8], uVar6 != 6)) &&\n       (((ccm->ctr[10] = nonce[9], uVar6 != 5 && (ccm->ctr[0xb] = nonce[10], uVar6 != 4)) &&\n        ((ccm->ctr[0xc] = nonce[0xb], uVar6 != 3 &&\n         ((ccm->ctr[0xd] = nonce[0xc], uVar6 != 2 && (ccm->ctr[0xe] = nonce[0xd], uVar6 != 1))))))))\n    {\n      ccm->ctr[0xf] = nonce[0xe];\n    }\n    if (0xf < -uVar6 + 0x10) goto LAB_001331f8;\n    *(undefined1 *)((long)ccm + -uVar6 + 0x1100) = 0;\n    if (-uVar6 == -1) goto LAB_001331f8;\n    *(undefined1 *)((long)ccm + -uVar6 + 0x1101) = 0;\n    lVar5 = 0x12 - uVar6;\n    if (lVar5 == 0x10) goto LAB_001331f8;\n  }\n  ccm->ctr[lVar5] = '\0';\n  if (((((lVar5 != 0xf) && (ccm->ctr[lVar5 + 1] = '\0', lVar5 != 0xe)) &&\n       (ccm->ctr[lVar5 + 2] = '\0', lVar5 != 0xd)) &&\n      (((ccm->ctr[lVar5 + 3] = '\0', lVar5 != 0xc && (ccm->ctr[lVar5 + 4] = '\0', lVar5 != 0xb)) &&\n       ((ccm->ctr[lVar5 + 5] = '\0', lVar5 != 10 &&\n        ((ccm->ctr[lVar5 + 6] = '\0', lVar5 != 9 && (ccm->ctr[lVar5 + 7] = '\0', lVar5 != 8))))))))\n     && ((ccm->ctr[lVar5 + 8] = '\0', lVar5 != 7 &&\n         (((ccm->ctr[lVar5 + 9] = '\0', lVar5 != 6 && (ccm->ctr[lVar5 + 10] = '\0', lVar5 != 5)) &&\n          (ccm->ctr[lVar5 + 0xb] = '\0', lVar5 == 3)))))) {\n    ccm->ctr[0xf] = '\0';\n  }\nLAB_001331f8:\n  ccm->CTRlen = '\x10';\n  return 0;\n}" { (declaration "byte bVar1;" type_identifier identifier ;) (declaration "byte bVar2;" type_identifier identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "ulong uVar4;" type_identifier identifier ;) (declaration "long lVar5;" (sized_type_specifier "long" long) identifier ;) (declaration "ulong uVar6;" type_identifier identifier ;) (declaration "ulong uVar7;" type_identifier identifier ;) (if_statement "if (ccm == (ccm_state *)0x0) {\n                    /* WARNING: Subroutine does not return */\n    crypt_argchk("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a);\n  }" if (parenthesized_expression "(ccm == (ccm_state *)0x0)" ( (binary_expression "ccm == (ccm_state *)0x0" identifier == (cast_expression "(ccm_state *)0x0" ( (type_descriptor "ccm_state *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n    crypt_argchk("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a);\n  }" { comment (expression_statement "crypt_argchk("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a);" (call_expression "crypt_argchk("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a)" identifier (argument_list "("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a)" ( (string_literal ""ccm != NULL"" " string_content ") , (string_literal ""src/encauth/ccm/ccm_add_nonce.c"" " string_content ") , number_literal ))) ;) })) (if_statement "if (nonce == (uchar *)0x0) {\n                    /* WARNING: Subroutine does not return */\n    crypt_argchk("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b);\n  }" if (parenthesized_expression "(nonce == (uchar *)0x0)" ( (binary_expression "nonce == (uchar *)0x0" identifier == (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n    crypt_argchk("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b);\n  }" { comment (expression_statement "crypt_argchk("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b);" (call_expression "crypt_argchk("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b)" identifier (argument_list "("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b)" ( (string_literal ""nonce != NULL"" " string_content ") , (string_literal ""src/encauth/ccm/ccm_add_nonce.c"" " string_content ") , number_literal ))) ;) })) (if_statement "if (0xd < noncelen) {\n    noncelen = 0xd;\n  }" if (parenthesized_expression "(0xd < noncelen)" ( (binary_expression "0xd < noncelen" number_literal < identifier) )) (compound_statement "{\n    noncelen = 0xd;\n  }" { (expression_statement "noncelen = 0xd;" (assignment_expression "noncelen = 0xd" identifier = number_literal) ;) })) (expression_statement "uVar6 = ccm->L;" (assignment_expression "uVar6 = ccm->L" identifier = (field_expression "ccm->L" identifier -> field_identifier)) ;) (expression_statement "uVar4 = 0xf - noncelen;" (assignment_expression "uVar4 = 0xf - noncelen" identifier = (binary_expression "0xf - noncelen" number_literal - identifier)) ;) (expression_statement "ccm->noncelen = noncelen;" (assignment_expression "ccm->noncelen = noncelen" (field_expression "ccm->noncelen" identifier -> field_identifier) = identifier) ;) (if_statement "if (uVar6 < uVar4) {\n    ccm->L = uVar4;\n  }\n  else {\n    uVar7 = noncelen + uVar6;\n    noncelen = 0xf - uVar6;\n    uVar4 = uVar6;\n    if (0xf < uVar7) {\n      ccm->noncelen = noncelen;\n    }\n  }" if (parenthesized_expression "(uVar6 < uVar4)" ( (binary_expression "uVar6 < uVar4" identifier < identifier) )) (compound_statement "{\n    ccm->L = uVar4;\n  }" { (expression_statement "ccm->L = uVar4;" (assignment_expression "ccm->L = uVar4" (field_expression "ccm->L" identifier -> field_identifier) = identifier) ;) }) (else_clause "else {\n    uVar7 = noncelen + uVar6;\n    noncelen = 0xf - uVar6;\n    uVar4 = uVar6;\n    if (0xf < uVar7) {\n      ccm->noncelen = noncelen;\n    }\n  }" else (compound_statement "{\n    uVar7 = noncelen + uVar6;\n    noncelen = 0xf - uVar6;\n    uVar4 = uVar6;\n    if (0xf < uVar7) {\n      ccm->noncelen = noncelen;\n    }\n  }" { (expression_statement "uVar7 = noncelen + uVar6;" (assignment_expression "uVar7 = noncelen + uVar6" identifier = (binary_expression "noncelen + uVar6" identifier + identifier)) ;) (expression_statement "noncelen = 0xf - uVar6;" (assignment_expression "noncelen = 0xf - uVar6" identifier = (binary_expression "0xf - uVar6" number_literal - identifier)) ;) (expression_statement "uVar4 = uVar6;" (assignment_expression "uVar4 = uVar6" identifier = identifier) ;) (if_statement "if (0xf < uVar7) {\n      ccm->noncelen = noncelen;\n    }" if (parenthesized_expression "(0xf < uVar7)" ( (binary_expression "0xf < uVar7" number_literal < identifier) )) (compound_statement "{\n      ccm->noncelen = noncelen;\n    }" { (expression_statement "ccm->noncelen = noncelen;" (assignment_expression "ccm->noncelen = noncelen" (field_expression "ccm->noncelen" identifier -> field_identifier) = identifier) ;) })) }))) (expression_statement "uVar6 = ccm->ptlen;" (assignment_expression "uVar6 = ccm->ptlen" identifier = (field_expression "ccm->ptlen" identifier -> field_identifier)) ;) (expression_statement "ccm->PAD[0] = (ccm->aadlen != 0) << 6 | (byte)((ccm->taglen + -2 >> 1) << 3) | (char)uVar4 - 1U;" (assignment_expression "ccm->PAD[0] = (ccm->aadlen != 0) << 6 | (byte)((ccm->taglen + -2 >> 1) << 3) | (char)uVar4 - 1U" (subscript_expression "ccm->PAD[0]" (field_expression "ccm->PAD" identifier -> field_identifier) [ number_literal ]) = (binary_expression "(ccm->aadlen != 0) << 6 | (byte)((ccm->taglen + -2 >> 1) << 3) | (char)uVar4 - 1U" (binary_expression "(ccm->aadlen != 0) << 6 | (byte)((ccm->taglen + -2 >> 1) << 3)" (binary_expression "(ccm->aadlen != 0) << 6" (parenthesized_expression "(ccm->aadlen != 0)" ( (binary_expression "ccm->aadlen != 0" (field_expression "ccm->aadlen" identifier -> field_identifier) != number_literal) )) << number_literal) | (call_expression "(byte)((ccm->taglen + -2 >> 1) << 3)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "((ccm->taglen + -2 >> 1) << 3)" ( (binary_expression "(ccm->taglen + -2 >> 1) << 3" (parenthesized_expression "(ccm->taglen + -2 >> 1)" ( (binary_expression "ccm->taglen + -2 >> 1" (binary_expression "ccm->taglen + -2" (field_expression "ccm->taglen" identifier -> field_identifier) + number_literal) >> number_literal) )) << number_literal) )))) | (binary_expression "(char)uVar4 - 1U" (cast_expression "(char)uVar4" ( (type_descriptor "char" primitive_type) ) identifier) - number_literal))) ;) (if_statement "if (noncelen == 0) {\n    lVar5 = 1;\nLAB_00133225:\n    if (uVar4 < 5) goto LAB_00132d92;\n    ccm->PAD[lVar5] = '\0';\n    if ((((uVar4 != 5) && (ccm->PAD[lVar5 + 1] = '\0', uVar4 != 6)) &&\n        ((ccm->PAD[lVar5 + 2] = '\0', uVar4 != 7 &&\n         (((((ccm->PAD[lVar5 + 3] = '\0', uVar4 != 8 && (ccm->PAD[lVar5 + 4] = '\0', uVar4 != 9)) &&\n            (ccm->PAD[lVar5 + 5] = '\0', uVar4 != 10)) &&\n           ((ccm->PAD[lVar5 + 6] = '\0', uVar4 != 0xb && (ccm->PAD[lVar5 + 7] = '\0', uVar4 != 0xc))\n           )) && (ccm->PAD[lVar5 + 8] = '\0', uVar4 != 0xd)))))) &&\n       (((ccm->PAD[lVar5 + 9] = '\0', uVar4 != 0xe && (ccm->PAD[lVar5 + 10] = '\0', uVar4 != 0xf))\n        && ((ccm->PAD[lVar5 + 0xb] = '\0', uVar4 != 0x10 &&\n            ((ccm->PAD[lVar5 + 0xc] = '\0', uVar4 != 0x11 &&\n             (ccm->PAD[lVar5 + 0xd] = '\0', uVar4 != 0x12)))))))) {\n      ccm->PAD[lVar5 + 0xe] = '\0';\n    }\n    uVar7 = uVar4 - 4;\n    lVar5 = lVar5 + uVar7;\n  }\n  else {\n    ccm->PAD[1] = *nonce;\n    if ((((1 < noncelen) && (ccm->PAD[2] = nonce[1], noncelen != 2)) &&\n        (ccm->PAD[3] = nonce[2], noncelen != 3)) &&\n       (((((ccm->PAD[4] = nonce[3], noncelen != 4 && (ccm->PAD[5] = nonce[4], noncelen != 5)) &&\n          ((ccm->PAD[6] = nonce[5], noncelen != 6 &&\n           ((ccm->PAD[7] = nonce[6], noncelen != 7 && (ccm->PAD[8] = nonce[7], noncelen != 8))))))\n         && (ccm->PAD[9] = nonce[8], noncelen != 9)) &&\n        ((((ccm->PAD[10] = nonce[9], noncelen != 10 && (ccm->PAD[0xb] = nonce[10], noncelen != 0xb))\n          && (ccm->PAD[0xc] = nonce[0xb], noncelen != 0xc)) &&\n         ((ccm->PAD[0xd] = nonce[0xc], noncelen != 0xd &&\n          (ccm->PAD[0xe] = nonce[0xd], noncelen != 0xe)))))))) {\n      ccm->PAD[0xf] = nonce[0xe];\n    }\n    lVar5 = noncelen + 1;\n    if (3 < uVar4) goto LAB_00133225;\n    iVar3 = 8;\n    if ((uVar4 == 3) || (iVar3 = 0x10, uVar4 == 2)) {\n      uVar6 = uVar6 << iVar3;\n    }\n    else {\n      uVar7 = uVar6 << 0x18;\n      uVar6 = 0;\n      if (uVar4 != 0) {\n        uVar6 = uVar7;\n      }\n    }\nLAB_00132d92:\n    uVar7 = 0;\n  }" if (parenthesized_expression "(noncelen == 0)" ( (binary_expression "noncelen == 0" identifier == number_literal) )) (compound_statement "{\n    lVar5 = 1;\nLAB_00133225:\n    if (uVar4 < 5) goto LAB_00132d92;\n    ccm->PAD[lVar5] = '\0';\n    if ((((uVar4 != 5) && (ccm->PAD[lVar5 + 1] = '\0', uVar4 != 6)) &&\n        ((ccm->PAD[lVar5 + 2] = '\0', uVar4 != 7 &&\n         (((((ccm->PAD[lVar5 + 3] = '\0', uVar4 != 8 && (ccm->PAD[lVar5 + 4] = '\0', uVar4 != 9)) &&\n            (ccm->PAD[lVar5 + 5] = '\0', uVar4 != 10)) &&\n           ((ccm->PAD[lVar5 + 6] = '\0', uVar4 != 0xb && (ccm->PAD[lVar5 + 7] = '\0', uVar4 != 0xc))\n           )) && (ccm->PAD[lVar5 + 8] = '\0', uVar4 != 0xd)))))) &&\n       (((ccm->PAD[lVar5 + 9] = '\0', uVar4 != 0xe && (ccm->PAD[lVar5 + 10] = '\0', uVar4 != 0xf))\n        && ((ccm->PAD[lVar5 + 0xb] = '\0', uVar4 != 0x10 &&\n            ((ccm->PAD[lVar5 + 0xc] = '\0', uVar4 != 0x11 &&\n             (ccm->PAD[lVar5 + 0xd] = '\0', uVar4 != 0x12)))))))) {\n      ccm->PAD[lVar5 + 0xe] = '\0';\n    }\n    uVar7 = uVar4 - 4;\n    lVar5 = lVar5 + uVar7;\n  }" { (expression_statement "lVar5 = 1;" (assignment_expression "lVar5 = 1" identifier = number_literal) ;) (labeled_statement "LAB_00133225:\n    if (uVar4 < 5) goto LAB_00132d92;" statement_identifier : (if_statement "if (uVar4 < 5) goto LAB_00132d92;" if (parenthesized_expression "(uVar4 < 5)" ( (binary_expression "uVar4 < 5" identifier < number_literal) )) (goto_statement "goto LAB_00132d92;" goto statement_identifier ;))) (expression_statement "ccm->PAD[lVar5] = '\0';" (assignment_expression "ccm->PAD[lVar5] = '\0'" (subscript_expression "ccm->PAD[lVar5]" (field_expression "ccm->PAD" identifier -> field_identifier) [ identifier ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (if_statement "if ((((uVar4 != 5) && (ccm->PAD[lVar5 + 1] = '\0', uVar4 != 6)) &&\n        ((ccm->PAD[lVar5 + 2] = '\0', uVar4 != 7 &&\n         (((((ccm->PAD[lVar5 + 3] = '\0', uVar4 != 8 && (ccm->PAD[lVar5 + 4] = '\0', uVar4 != 9)) &&\n            (ccm->PAD[lVar5 + 5] = '\0', uVar4 != 10)) &&\n           ((ccm->PAD[lVar5 + 6] = '\0', uVar4 != 0xb && (ccm->PAD[lVar5 + 7] = '\0', uVar4 != 0xc))\n           )) && (ccm->PAD[lVar5 + 8] = '\0', uVar4 != 0xd)))))) &&\n       (((ccm->PAD[lVar5 + 9] = '\0', uVar4 != 0xe && (ccm->PAD[lVar5 + 10] = '\0', uVar4 != 0xf))\n        && ((ccm->PAD[lVar5 + 0xb] = '\0', uVar4 != 0x10 &&\n            ((ccm->PAD[lVar5 + 0xc] = '\0', uVar4 != 0x11 &&\n             (ccm->PAD[lVar5 + 0xd] = '\0', uVar4 != 0x12)))))))) {\n      ccm->PAD[lVar5 + 0xe] = '\0';\n    }" if (parenthesized_expression "((((uVar4 != 5) && (ccm->PAD[lVar5 + 1] = '\0', uVar4 != 6)) &&\n        ((ccm->PAD[lVar5 + 2] = '\0', uVar4 != 7 &&\n         (((((ccm->PAD[lVar5 + 3] = '\0', uVar4 != 8 && (ccm->PAD[lVar5 + 4] = '\0', uVar4 != 9)) &&\n            (ccm->PAD[lVar5 + 5] = '\0', uVar4 != 10)) &&\n           ((ccm->PAD[lVar5 + 6] = '\0', uVar4 != 0xb && (ccm->PAD[lVar5 + 7] = '\0', uVar4 != 0xc))\n           )) && (ccm->PAD[lVar5 + 8] = '\0', uVar4 != 0xd)))))) &&\n       (((ccm->PAD[lVar5 + 9] = '\0', uVar4 != 0xe && (ccm->PAD[lVar5 + 10] = '\0', uVar4 != 0xf))\n        && ((ccm->PAD[lVar5 + 0xb] = '\0', uVar4 != 0x10 &&\n            ((ccm->PAD[lVar5 + 0xc] = '\0', uVar4 != 0x11 &&\n             (ccm->PAD[lVar5 + 0xd] = '\0', uVar4 != 0x12))))))))" ( (binary_expression "(((uVar4 != 5) && (ccm->PAD[lVar5 + 1] = '\0', uVar4 != 6)) &&\n        ((ccm->PAD[lVar5 + 2] = '\0', uVar4 != 7 &&\n         (((((ccm->PAD[lVar5 + 3] = '\0', uVar4 != 8 && (ccm->PAD[lVar5 + 4] = '\0', uVar4 != 9)) &&\n            (ccm->PAD[lVar5 + 5] = '\0', uVar4 != 10)) &&\n           ((ccm->PAD[lVar5 + 6] = '\0', uVar4 != 0xb && (ccm->PAD[lVar5 + 7] = '\0', uVar4 != 0xc))\n           )) && (ccm->PAD[lVar5 + 8] = '\0', uVar4 != 0xd)))))) &&\n       (((ccm->PAD[lVar5 + 9] = '\0', uVar4 != 0xe && (ccm->PAD[lVar5 + 10] = '\0', uVar4 != 0xf))\n        && ((ccm->PAD[lVar5 + 0xb] = '\0', uVar4 != 0x10 &&\n            ((ccm->PAD[lVar5 + 0xc] = '\0', uVar4 != 0x11 &&\n             (ccm->PAD[lVar5 + 0xd] = '\0', uVar4 != 0x12)))))))" (parenthesized_expression "(((uVar4 != 5) && (ccm->PAD[lVar5 + 1] = '\0', uVar4 != 6)) &&\n        ((ccm->PAD[lVar5 + 2] = '\0', uVar4 != 7 &&\n         (((((ccm->PAD[lVar5 + 3] = '\0', uVar4 != 8 && (ccm->PAD[lVar5 + 4] = '\0', uVar4 != 9)) &&\n            (ccm->PAD[lVar5 + 5] = '\0', uVar4 != 10)) &&\n           ((ccm->PAD[lVar5 + 6] = '\0', uVar4 != 0xb && (ccm->PAD[lVar5 + 7] = '\0', uVar4 != 0xc))\n           )) && (ccm->PAD[lVar5 + 8] = '\0', uVar4 != 0xd))))))" ( (binary_expression "((uVar4 != 5) && (ccm->PAD[lVar5 + 1] = '\0', uVar4 != 6)) &&\n        ((ccm->PAD[lVar5 + 2] = '\0', uVar4 != 7 &&\n         (((((ccm->PAD[lVar5 + 3] = '\0', uVar4 != 8 && (ccm->PAD[lVar5 + 4] = '\0', uVar4 != 9)) &&\n            (ccm->PAD[lVar5 + 5] = '\0', uVar4 != 10)) &&\n           ((ccm->PAD[lVar5 + 6] = '\0', uVar4 != 0xb && (ccm->PAD[lVar5 + 7] = '\0', uVar4 != 0xc))\n           )) && (ccm->PAD[lVar5 + 8] = '\0', uVar4 != 0xd)))))" (parenthesized_expression "((uVar4 != 5) && (ccm->PAD[lVar5 + 1] = '\0', uVar4 != 6))" ( (binary_expression "(uVar4 != 5) && (ccm->PAD[lVar5 + 1] = '\0', uVar4 != 6)" (parenthesized_expression "(uVar4 != 5)" ( (binary_expression "uVar4 != 5" identifier != number_literal) )) && (parenthesized_expression "(ccm->PAD[lVar5 + 1] = '\0', uVar4 != 6)" ( (comma_expression "ccm->PAD[lVar5 + 1] = '\0', uVar4 != 6" (assignment_expression "ccm->PAD[lVar5 + 1] = '\0'" (subscript_expression "ccm->PAD[lVar5 + 1]" (field_expression "ccm->PAD" identifier -> field_identifier) [ (binary_expression "lVar5 + 1" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "uVar4 != 6" identifier != number_literal)) ))) )) && (parenthesized_expression "((ccm->PAD[lVar5 + 2] = '\0', uVar4 != 7 &&\n         (((((ccm->PAD[lVar5 + 3] = '\0', uVar4 != 8 && (ccm->PAD[lVar5 + 4] = '\0', uVar4 != 9)) &&\n            (ccm->PAD[lVar5 + 5] = '\0', uVar4 != 10)) &&\n           ((ccm->PAD[lVar5 + 6] = '\0', uVar4 != 0xb && (ccm->PAD[lVar5 + 7] = '\0', uVar4 != 0xc))\n           )) && (ccm->PAD[lVar5 + 8] = '\0', uVar4 != 0xd)))))" ( (parenthesized_expression "(ccm->PAD[lVar5 + 2] = '\0', uVar4 != 7 &&\n         (((((ccm->PAD[lVar5 + 3] = '\0', uVar4 != 8 && (ccm->PAD[lVar5 + 4] = '\0', uVar4 != 9)) &&\n            (ccm->PAD[lVar5 + 5] = '\0', uVar4 != 10)) &&\n           ((ccm->PAD[lVar5 + 6] = '\0', uVar4 != 0xb && (ccm->PAD[lVar5 + 7] = '\0', uVar4 != 0xc))\n           )) && (ccm->PAD[lVar5 + 8] = '\0', uVar4 != 0xd))))" ( (comma_expression "ccm->PAD[lVar5 + 2] = '\0', uVar4 != 7 &&\n         (((((ccm->PAD[lVar5 + 3] = '\0', uVar4 != 8 && (ccm->PAD[lVar5 + 4] = '\0', uVar4 != 9)) &&\n            (ccm->PAD[lVar5 + 5] = '\0', uVar4 != 10)) &&\n           ((ccm->PAD[lVar5 + 6] = '\0', uVar4 != 0xb && (ccm->PAD[lVar5 + 7] = '\0', uVar4 != 0xc))\n           )) && (ccm->PAD[lVar5 + 8] = '\0', uVar4 != 0xd)))" (assignment_expression "ccm->PAD[lVar5 + 2] = '\0'" (subscript_expression "ccm->PAD[lVar5 + 2]" (field_expression "ccm->PAD" identifier -> field_identifier) [ (binary_expression "lVar5 + 2" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "uVar4 != 7 &&\n         (((((ccm->PAD[lVar5 + 3] = '\0', uVar4 != 8 && (ccm->PAD[lVar5 + 4] = '\0', uVar4 != 9)) &&\n            (ccm->PAD[lVar5 + 5] = '\0', uVar4 != 10)) &&\n           ((ccm->PAD[lVar5 + 6] = '\0', uVar4 != 0xb && (ccm->PAD[lVar5 + 7] = '\0', uVar4 != 0xc))\n           )) && (ccm->PAD[lVar5 + 8] = '\0', uVar4 != 0xd)))" (binary_expression "uVar4 != 7" identifier != number_literal) && (parenthesized_expression "(((((ccm->PAD[lVar5 + 3] = '\0', uVar4 != 8 && (ccm->PAD[lVar5 + 4] = '\0', uVar4 != 9)) &&\n            (ccm->PAD[lVar5 + 5] = '\0', uVar4 != 10)) &&\n           ((ccm->PAD[lVar5 + 6] = '\0', uVar4 != 0xb && (ccm->PAD[lVar5 + 7] = '\0', uVar4 != 0xc))\n           )) && (ccm->PAD[lVar5 + 8] = '\0', uVar4 != 0xd)))" ( (parenthesized_expression "((((ccm->PAD[lVar5 + 3] = '\0', uVar4 != 8 && (ccm->PAD[lVar5 + 4] = '\0', uVar4 != 9)) &&\n            (ccm->PAD[lVar5 + 5] = '\0', uVar4 != 10)) &&\n           ((ccm->PAD[lVar5 + 6] = '\0', uVar4 != 0xb && (ccm->PAD[lVar5 + 7] = '\0', uVar4 != 0xc))\n           )) && (ccm->PAD[lVar5 + 8] = '\0', uVar4 != 0xd))" ( (binary_expression "(((ccm->PAD[lVar5 + 3] = '\0', uVar4 != 8 && (ccm->PAD[lVar5 + 4] = '\0', uVar4 != 9)) &&\n            (ccm->PAD[lVar5 + 5] = '\0', uVar4 != 10)) &&\n           ((ccm->PAD[lVar5 + 6] = '\0', uVar4 != 0xb && (ccm->PAD[lVar5 + 7] = '\0', uVar4 != 0xc))\n           )) && (ccm->PAD[lVar5 + 8] = '\0', uVar4 != 0xd)" (parenthesized_expression "(((ccm->PAD[lVar5 + 3] = '\0', uVar4 != 8 && (ccm->PAD[lVar5 + 4] = '\0', uVar4 != 9)) &&\n            (ccm->PAD[lVar5 + 5] = '\0', uVar4 != 10)) &&\n           ((ccm->PAD[lVar5 + 6] = '\0', uVar4 != 0xb && (ccm->PAD[lVar5 + 7] = '\0', uVar4 != 0xc))\n           ))" ( (binary_expression "((ccm->PAD[lVar5 + 3] = '\0', uVar4 != 8 && (ccm->PAD[lVar5 + 4] = '\0', uVar4 != 9)) &&\n            (ccm->PAD[lVar5 + 5] = '\0', uVar4 != 10)) &&\n           ((ccm->PAD[lVar5 + 6] = '\0', uVar4 != 0xb && (ccm->PAD[lVar5 + 7] = '\0', uVar4 != 0xc))\n           )" (parenthesized_expression "((ccm->PAD[lVar5 + 3] = '\0', uVar4 != 8 && (ccm->PAD[lVar5 + 4] = '\0', uVar4 != 9)) &&\n            (ccm->PAD[lVar5 + 5] = '\0', uVar4 != 10))" ( (binary_expression "(ccm->PAD[lVar5 + 3] = '\0', uVar4 != 8 && (ccm->PAD[lVar5 + 4] = '\0', uVar4 != 9)) &&\n            (ccm->PAD[lVar5 + 5] = '\0', uVar4 != 10)" (parenthesized_expression "(ccm->PAD[lVar5 + 3] = '\0', uVar4 != 8 && (ccm->PAD[lVar5 + 4] = '\0', uVar4 != 9))" ( (comma_expression "ccm->PAD[lVar5 + 3] = '\0', uVar4 != 8 && (ccm->PAD[lVar5 + 4] = '\0', uVar4 != 9)" (assignment_expression "ccm->PAD[lVar5 + 3] = '\0'" (subscript_expression "ccm->PAD[lVar5 + 3]" (field_expression "ccm->PAD" identifier -> field_identifier) [ (binary_expression "lVar5 + 3" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "uVar4 != 8 && (ccm->PAD[lVar5 + 4] = '\0', uVar4 != 9)" (binary_expression "uVar4 != 8" identifier != number_literal) && (parenthesized_expression "(ccm->PAD[lVar5 + 4] = '\0', uVar4 != 9)" ( (comma_expression "ccm->PAD[lVar5 + 4] = '\0', uVar4 != 9" (assignment_expression "ccm->PAD[lVar5 + 4] = '\0'" (subscript_expression "ccm->PAD[lVar5 + 4]" (field_expression "ccm->PAD" identifier -> field_identifier) [ (binary_expression "lVar5 + 4" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "uVar4 != 9" identifier != number_literal)) )))) )) && (parenthesized_expression "(ccm->PAD[lVar5 + 5] = '\0', uVar4 != 10)" ( (comma_expression "ccm->PAD[lVar5 + 5] = '\0', uVar4 != 10" (assignment_expression "ccm->PAD[lVar5 + 5] = '\0'" (subscript_expression "ccm->PAD[lVar5 + 5]" (field_expression "ccm->PAD" identifier -> field_identifier) [ (binary_expression "lVar5 + 5" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "uVar4 != 10" identifier != number_literal)) ))) )) && (parenthesized_expression "((ccm->PAD[lVar5 + 6] = '\0', uVar4 != 0xb && (ccm->PAD[lVar5 + 7] = '\0', uVar4 != 0xc))\n           )" ( (parenthesized_expression "(ccm->PAD[lVar5 + 6] = '\0', uVar4 != 0xb && (ccm->PAD[lVar5 + 7] = '\0', uVar4 != 0xc))" ( (comma_expression "ccm->PAD[lVar5 + 6] = '\0', uVar4 != 0xb && (ccm->PAD[lVar5 + 7] = '\0', uVar4 != 0xc)" (assignment_expression "ccm->PAD[lVar5 + 6] = '\0'" (subscript_expression "ccm->PAD[lVar5 + 6]" (field_expression "ccm->PAD" identifier -> field_identifier) [ (binary_expression "lVar5 + 6" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "uVar4 != 0xb && (ccm->PAD[lVar5 + 7] = '\0', uVar4 != 0xc)" (binary_expression "uVar4 != 0xb" identifier != number_literal) && (parenthesized_expression "(ccm->PAD[lVar5 + 7] = '\0', uVar4 != 0xc)" ( (comma_expression "ccm->PAD[lVar5 + 7] = '\0', uVar4 != 0xc" (assignment_expression "ccm->PAD[lVar5 + 7] = '\0'" (subscript_expression "ccm->PAD[lVar5 + 7]" (field_expression "ccm->PAD" identifier -> field_identifier) [ (binary_expression "lVar5 + 7" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "uVar4 != 0xc" identifier != number_literal)) )))) )) ))) )) && (parenthesized_expression "(ccm->PAD[lVar5 + 8] = '\0', uVar4 != 0xd)" ( (comma_expression "ccm->PAD[lVar5 + 8] = '\0', uVar4 != 0xd" (assignment_expression "ccm->PAD[lVar5 + 8] = '\0'" (subscript_expression "ccm->PAD[lVar5 + 8]" (field_expression "ccm->PAD" identifier -> field_identifier) [ (binary_expression "lVar5 + 8" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "uVar4 != 0xd" identifier != number_literal)) ))) )) )))) )) ))) )) && (parenthesized_expression "(((ccm->PAD[lVar5 + 9] = '\0', uVar4 != 0xe && (ccm->PAD[lVar5 + 10] = '\0', uVar4 != 0xf))\n        && ((ccm->PAD[lVar5 + 0xb] = '\0', uVar4 != 0x10 &&\n            ((ccm->PAD[lVar5 + 0xc] = '\0', uVar4 != 0x11 &&\n             (ccm->PAD[lVar5 + 0xd] = '\0', uVar4 != 0x12)))))))" ( (parenthesized_expression "((ccm->PAD[lVar5 + 9] = '\0', uVar4 != 0xe && (ccm->PAD[lVar5 + 10] = '\0', uVar4 != 0xf))\n        && ((ccm->PAD[lVar5 + 0xb] = '\0', uVar4 != 0x10 &&\n            ((ccm->PAD[lVar5 + 0xc] = '\0', uVar4 != 0x11 &&\n             (ccm->PAD[lVar5 + 0xd] = '\0', uVar4 != 0x12))))))" ( (binary_expression "(ccm->PAD[lVar5 + 9] = '\0', uVar4 != 0xe && (ccm->PAD[lVar5 + 10] = '\0', uVar4 != 0xf))\n        && ((ccm->PAD[lVar5 + 0xb] = '\0', uVar4 != 0x10 &&\n            ((ccm->PAD[lVar5 + 0xc] = '\0', uVar4 != 0x11 &&\n             (ccm->PAD[lVar5 + 0xd] = '\0', uVar4 != 0x12)))))" (parenthesized_expression "(ccm->PAD[lVar5 + 9] = '\0', uVar4 != 0xe && (ccm->PAD[lVar5 + 10] = '\0', uVar4 != 0xf))" ( (comma_expression "ccm->PAD[lVar5 + 9] = '\0', uVar4 != 0xe && (ccm->PAD[lVar5 + 10] = '\0', uVar4 != 0xf)" (assignment_expression "ccm->PAD[lVar5 + 9] = '\0'" (subscript_expression "ccm->PAD[lVar5 + 9]" (field_expression "ccm->PAD" identifier -> field_identifier) [ (binary_expression "lVar5 + 9" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "uVar4 != 0xe && (ccm->PAD[lVar5 + 10] = '\0', uVar4 != 0xf)" (binary_expression "uVar4 != 0xe" identifier != number_literal) && (parenthesized_expression "(ccm->PAD[lVar5 + 10] = '\0', uVar4 != 0xf)" ( (comma_expression "ccm->PAD[lVar5 + 10] = '\0', uVar4 != 0xf" (assignment_expression "ccm->PAD[lVar5 + 10] = '\0'" (subscript_expression "ccm->PAD[lVar5 + 10]" (field_expression "ccm->PAD" identifier -> field_identifier) [ (binary_expression "lVar5 + 10" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "uVar4 != 0xf" identifier != number_literal)) )))) )) && (parenthesized_expression "((ccm->PAD[lVar5 + 0xb] = '\0', uVar4 != 0x10 &&\n            ((ccm->PAD[lVar5 + 0xc] = '\0', uVar4 != 0x11 &&\n             (ccm->PAD[lVar5 + 0xd] = '\0', uVar4 != 0x12)))))" ( (parenthesized_expression "(ccm->PAD[lVar5 + 0xb] = '\0', uVar4 != 0x10 &&\n            ((ccm->PAD[lVar5 + 0xc] = '\0', uVar4 != 0x11 &&\n             (ccm->PAD[lVar5 + 0xd] = '\0', uVar4 != 0x12))))" ( (comma_expression "ccm->PAD[lVar5 + 0xb] = '\0', uVar4 != 0x10 &&\n            ((ccm->PAD[lVar5 + 0xc] = '\0', uVar4 != 0x11 &&\n             (ccm->PAD[lVar5 + 0xd] = '\0', uVar4 != 0x12)))" (assignment_expression "ccm->PAD[lVar5 + 0xb] = '\0'" (subscript_expression "ccm->PAD[lVar5 + 0xb]" (field_expression "ccm->PAD" identifier -> field_identifier) [ (binary_expression "lVar5 + 0xb" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "uVar4 != 0x10 &&\n            ((ccm->PAD[lVar5 + 0xc] = '\0', uVar4 != 0x11 &&\n             (ccm->PAD[lVar5 + 0xd] = '\0', uVar4 != 0x12)))" (binary_expression "uVar4 != 0x10" identifier != number_literal) && (parenthesized_expression "((ccm->PAD[lVar5 + 0xc] = '\0', uVar4 != 0x11 &&\n             (ccm->PAD[lVar5 + 0xd] = '\0', uVar4 != 0x12)))" ( (parenthesized_expression "(ccm->PAD[lVar5 + 0xc] = '\0', uVar4 != 0x11 &&\n             (ccm->PAD[lVar5 + 0xd] = '\0', uVar4 != 0x12))" ( (comma_expression "ccm->PAD[lVar5 + 0xc] = '\0', uVar4 != 0x11 &&\n             (ccm->PAD[lVar5 + 0xd] = '\0', uVar4 != 0x12)" (assignment_expression "ccm->PAD[lVar5 + 0xc] = '\0'" (subscript_expression "ccm->PAD[lVar5 + 0xc]" (field_expression "ccm->PAD" identifier -> field_identifier) [ (binary_expression "lVar5 + 0xc" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "uVar4 != 0x11 &&\n             (ccm->PAD[lVar5 + 0xd] = '\0', uVar4 != 0x12)" (binary_expression "uVar4 != 0x11" identifier != number_literal) && (parenthesized_expression "(ccm->PAD[lVar5 + 0xd] = '\0', uVar4 != 0x12)" ( (comma_expression "ccm->PAD[lVar5 + 0xd] = '\0', uVar4 != 0x12" (assignment_expression "ccm->PAD[lVar5 + 0xd] = '\0'" (subscript_expression "ccm->PAD[lVar5 + 0xd]" (field_expression "ccm->PAD" identifier -> field_identifier) [ (binary_expression "lVar5 + 0xd" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "uVar4 != 0x12" identifier != number_literal)) )))) )) )))) )) ))) )) ))) )) (compound_statement "{\n      ccm->PAD[lVar5 + 0xe] = '\0';\n    }" { (expression_statement "ccm->PAD[lVar5 + 0xe] = '\0';" (assignment_expression "ccm->PAD[lVar5 + 0xe] = '\0'" (subscript_expression "ccm->PAD[lVar5 + 0xe]" (field_expression "ccm->PAD" identifier -> field_identifier) [ (binary_expression "lVar5 + 0xe" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) ;) })) (expression_statement "uVar7 = uVar4 - 4;" (assignment_expression "uVar7 = uVar4 - 4" identifier = (binary_expression "uVar4 - 4" identifier - number_literal)) ;) (expression_statement "lVar5 = lVar5 + uVar7;" (assignment_expression "lVar5 = lVar5 + uVar7" identifier = (binary_expression "lVar5 + uVar7" identifier + identifier)) ;) }) (else_clause "else {\n    ccm->PAD[1] = *nonce;\n    if ((((1 < noncelen) && (ccm->PAD[2] = nonce[1], noncelen != 2)) &&\n        (ccm->PAD[3] = nonce[2], noncelen != 3)) &&\n       (((((ccm->PAD[4] = nonce[3], noncelen != 4 && (ccm->PAD[5] = nonce[4], noncelen != 5)) &&\n          ((ccm->PAD[6] = nonce[5], noncelen != 6 &&\n           ((ccm->PAD[7] = nonce[6], noncelen != 7 && (ccm->PAD[8] = nonce[7], noncelen != 8))))))\n         && (ccm->PAD[9] = nonce[8], noncelen != 9)) &&\n        ((((ccm->PAD[10] = nonce[9], noncelen != 10 && (ccm->PAD[0xb] = nonce[10], noncelen != 0xb))\n          && (ccm->PAD[0xc] = nonce[0xb], noncelen != 0xc)) &&\n         ((ccm->PAD[0xd] = nonce[0xc], noncelen != 0xd &&\n          (ccm->PAD[0xe] = nonce[0xd], noncelen != 0xe)))))))) {\n      ccm->PAD[0xf] = nonce[0xe];\n    }\n    lVar5 = noncelen + 1;\n    if (3 < uVar4) goto LAB_00133225;\n    iVar3 = 8;\n    if ((uVar4 == 3) || (iVar3 = 0x10, uVar4 == 2)) {\n      uVar6 = uVar6 << iVar3;\n    }\n    else {\n      uVar7 = uVar6 << 0x18;\n      uVar6 = 0;\n      if (uVar4 != 0) {\n        uVar6 = uVar7;\n      }\n    }\nLAB_00132d92:\n    uVar7 = 0;\n  }" else (compound_statement "{\n    ccm->PAD[1] = *nonce;\n    if ((((1 < noncelen) && (ccm->PAD[2] = nonce[1], noncelen != 2)) &&\n        (ccm->PAD[3] = nonce[2], noncelen != 3)) &&\n       (((((ccm->PAD[4] = nonce[3], noncelen != 4 && (ccm->PAD[5] = nonce[4], noncelen != 5)) &&\n          ((ccm->PAD[6] = nonce[5], noncelen != 6 &&\n           ((ccm->PAD[7] = nonce[6], noncelen != 7 && (ccm->PAD[8] = nonce[7], noncelen != 8))))))\n         && (ccm->PAD[9] = nonce[8], noncelen != 9)) &&\n        ((((ccm->PAD[10] = nonce[9], noncelen != 10 && (ccm->PAD[0xb] = nonce[10], noncelen != 0xb))\n          && (ccm->PAD[0xc] = nonce[0xb], noncelen != 0xc)) &&\n         ((ccm->PAD[0xd] = nonce[0xc], noncelen != 0xd &&\n          (ccm->PAD[0xe] = nonce[0xd], noncelen != 0xe)))))))) {\n      ccm->PAD[0xf] = nonce[0xe];\n    }\n    lVar5 = noncelen + 1;\n    if (3 < uVar4) goto LAB_00133225;\n    iVar3 = 8;\n    if ((uVar4 == 3) || (iVar3 = 0x10, uVar4 == 2)) {\n      uVar6 = uVar6 << iVar3;\n    }\n    else {\n      uVar7 = uVar6 << 0x18;\n      uVar6 = 0;\n      if (uVar4 != 0) {\n        uVar6 = uVar7;\n      }\n    }\nLAB_00132d92:\n    uVar7 = 0;\n  }" { (expression_statement "ccm->PAD[1] = *nonce;" (assignment_expression "ccm->PAD[1] = *nonce" (subscript_expression "ccm->PAD[1]" (field_expression "ccm->PAD" identifier -> field_identifier) [ number_literal ]) = (pointer_expression "*nonce" * identifier)) ;) (if_statement "if ((((1 < noncelen) && (ccm->PAD[2] = nonce[1], noncelen != 2)) &&\n        (ccm->PAD[3] = nonce[2], noncelen != 3)) &&\n       (((((ccm->PAD[4] = nonce[3], noncelen != 4 && (ccm->PAD[5] = nonce[4], noncelen != 5)) &&\n          ((ccm->PAD[6] = nonce[5], noncelen != 6 &&\n           ((ccm->PAD[7] = nonce[6], noncelen != 7 && (ccm->PAD[8] = nonce[7], noncelen != 8))))))\n         && (ccm->PAD[9] = nonce[8], noncelen != 9)) &&\n        ((((ccm->PAD[10] = nonce[9], noncelen != 10 && (ccm->PAD[0xb] = nonce[10], noncelen != 0xb))\n          && (ccm->PAD[0xc] = nonce[0xb], noncelen != 0xc)) &&\n         ((ccm->PAD[0xd] = nonce[0xc], noncelen != 0xd &&\n          (ccm->PAD[0xe] = nonce[0xd], noncelen != 0xe)))))))) {\n      ccm->PAD[0xf] = nonce[0xe];\n    }" if (parenthesized_expression "((((1 < noncelen) && (ccm->PAD[2] = nonce[1], noncelen != 2)) &&\n        (ccm->PAD[3] = nonce[2], noncelen != 3)) &&\n       (((((ccm->PAD[4] = nonce[3], noncelen != 4 && (ccm->PAD[5] = nonce[4], noncelen != 5)) &&\n          ((ccm->PAD[6] = nonce[5], noncelen != 6 &&\n           ((ccm->PAD[7] = nonce[6], noncelen != 7 && (ccm->PAD[8] = nonce[7], noncelen != 8))))))\n         && (ccm->PAD[9] = nonce[8], noncelen != 9)) &&\n        ((((ccm->PAD[10] = nonce[9], noncelen != 10 && (ccm->PAD[0xb] = nonce[10], noncelen != 0xb))\n          && (ccm->PAD[0xc] = nonce[0xb], noncelen != 0xc)) &&\n         ((ccm->PAD[0xd] = nonce[0xc], noncelen != 0xd &&\n          (ccm->PAD[0xe] = nonce[0xd], noncelen != 0xe))))))))" ( (binary_expression "(((1 < noncelen) && (ccm->PAD[2] = nonce[1], noncelen != 2)) &&\n        (ccm->PAD[3] = nonce[2], noncelen != 3)) &&\n       (((((ccm->PAD[4] = nonce[3], noncelen != 4 && (ccm->PAD[5] = nonce[4], noncelen != 5)) &&\n          ((ccm->PAD[6] = nonce[5], noncelen != 6 &&\n           ((ccm->PAD[7] = nonce[6], noncelen != 7 && (ccm->PAD[8] = nonce[7], noncelen != 8))))))\n         && (ccm->PAD[9] = nonce[8], noncelen != 9)) &&\n        ((((ccm->PAD[10] = nonce[9], noncelen != 10 && (ccm->PAD[0xb] = nonce[10], noncelen != 0xb))\n          && (ccm->PAD[0xc] = nonce[0xb], noncelen != 0xc)) &&\n         ((ccm->PAD[0xd] = nonce[0xc], noncelen != 0xd &&\n          (ccm->PAD[0xe] = nonce[0xd], noncelen != 0xe)))))))" (parenthesized_expression "(((1 < noncelen) && (ccm->PAD[2] = nonce[1], noncelen != 2)) &&\n        (ccm->PAD[3] = nonce[2], noncelen != 3))" ( (binary_expression "((1 < noncelen) && (ccm->PAD[2] = nonce[1], noncelen != 2)) &&\n        (ccm->PAD[3] = nonce[2], noncelen != 3)" (parenthesized_expression "((1 < noncelen) && (ccm->PAD[2] = nonce[1], noncelen != 2))" ( (binary_expression "(1 < noncelen) && (ccm->PAD[2] = nonce[1], noncelen != 2)" (parenthesized_expression "(1 < noncelen)" ( (binary_expression "1 < noncelen" number_literal < identifier) )) && (parenthesized_expression "(ccm->PAD[2] = nonce[1], noncelen != 2)" ( (comma_expression "ccm->PAD[2] = nonce[1], noncelen != 2" (assignment_expression "ccm->PAD[2] = nonce[1]" (subscript_expression "ccm->PAD[2]" (field_expression "ccm->PAD" identifier -> field_identifier) [ number_literal ]) = (subscript_expression "nonce[1]" identifier [ number_literal ])) , (binary_expression "noncelen != 2" identifier != number_literal)) ))) )) && (parenthesized_expression "(ccm->PAD[3] = nonce[2], noncelen != 3)" ( (comma_expression "ccm->PAD[3] = nonce[2], noncelen != 3" (assignment_expression "ccm->PAD[3] = nonce[2]" (subscript_expression "ccm->PAD[3]" (field_expression "ccm->PAD" identifier -> field_identifier) [ number_literal ]) = (subscript_expression "nonce[2]" identifier [ number_literal ])) , (binary_expression "noncelen != 3" identifier != number_literal)) ))) )) && (parenthesized_expression "(((((ccm->PAD[4] = nonce[3], noncelen != 4 && (ccm->PAD[5] = nonce[4], noncelen != 5)) &&\n          ((ccm->PAD[6] = nonce[5], noncelen != 6 &&\n           ((ccm->PAD[7] = nonce[6], noncelen != 7 && (ccm->PAD[8] = nonce[7], noncelen != 8))))))\n         && (ccm->PAD[9] = nonce[8], noncelen != 9)) &&\n        ((((ccm->PAD[10] = nonce[9], noncelen != 10 && (ccm->PAD[0xb] = nonce[10], noncelen != 0xb))\n          && (ccm->PAD[0xc] = nonce[0xb], noncelen != 0xc)) &&\n         ((ccm->PAD[0xd] = nonce[0xc], noncelen != 0xd &&\n          (ccm->PAD[0xe] = nonce[0xd], noncelen != 0xe)))))))" ( (parenthesized_expression "((((ccm->PAD[4] = nonce[3], noncelen != 4 && (ccm->PAD[5] = nonce[4], noncelen != 5)) &&\n          ((ccm->PAD[6] = nonce[5], noncelen != 6 &&\n           ((ccm->PAD[7] = nonce[6], noncelen != 7 && (ccm->PAD[8] = nonce[7], noncelen != 8))))))\n         && (ccm->PAD[9] = nonce[8], noncelen != 9)) &&\n        ((((ccm->PAD[10] = nonce[9], noncelen != 10 && (ccm->PAD[0xb] = nonce[10], noncelen != 0xb))\n          && (ccm->PAD[0xc] = nonce[0xb], noncelen != 0xc)) &&\n         ((ccm->PAD[0xd] = nonce[0xc], noncelen != 0xd &&\n          (ccm->PAD[0xe] = nonce[0xd], noncelen != 0xe))))))" ( (binary_expression "(((ccm->PAD[4] = nonce[3], noncelen != 4 && (ccm->PAD[5] = nonce[4], noncelen != 5)) &&\n          ((ccm->PAD[6] = nonce[5], noncelen != 6 &&\n           ((ccm->PAD[7] = nonce[6], noncelen != 7 && (ccm->PAD[8] = nonce[7], noncelen != 8))))))\n         && (ccm->PAD[9] = nonce[8], noncelen != 9)) &&\n        ((((ccm->PAD[10] = nonce[9], noncelen != 10 && (ccm->PAD[0xb] = nonce[10], noncelen != 0xb))\n          && (ccm->PAD[0xc] = nonce[0xb], noncelen != 0xc)) &&\n         ((ccm->PAD[0xd] = nonce[0xc], noncelen != 0xd &&\n          (ccm->PAD[0xe] = nonce[0xd], noncelen != 0xe)))))" (parenthesized_expression "(((ccm->PAD[4] = nonce[3], noncelen != 4 && (ccm->PAD[5] = nonce[4], noncelen != 5)) &&\n          ((ccm->PAD[6] = nonce[5], noncelen != 6 &&\n           ((ccm->PAD[7] = nonce[6], noncelen != 7 && (ccm->PAD[8] = nonce[7], noncelen != 8))))))\n         && (ccm->PAD[9] = nonce[8], noncelen != 9))" ( (binary_expression "((ccm->PAD[4] = nonce[3], noncelen != 4 && (ccm->PAD[5] = nonce[4], noncelen != 5)) &&\n          ((ccm->PAD[6] = nonce[5], noncelen != 6 &&\n           ((ccm->PAD[7] = nonce[6], noncelen != 7 && (ccm->PAD[8] = nonce[7], noncelen != 8))))))\n         && (ccm->PAD[9] = nonce[8], noncelen != 9)" (parenthesized_expression "((ccm->PAD[4] = nonce[3], noncelen != 4 && (ccm->PAD[5] = nonce[4], noncelen != 5)) &&\n          ((ccm->PAD[6] = nonce[5], noncelen != 6 &&\n           ((ccm->PAD[7] = nonce[6], noncelen != 7 && (ccm->PAD[8] = nonce[7], noncelen != 8))))))" ( (binary_expression "(ccm->PAD[4] = nonce[3], noncelen != 4 && (ccm->PAD[5] = nonce[4], noncelen != 5)) &&\n          ((ccm->PAD[6] = nonce[5], noncelen != 6 &&\n           ((ccm->PAD[7] = nonce[6], noncelen != 7 && (ccm->PAD[8] = nonce[7], noncelen != 8)))))" (parenthesized_expression "(ccm->PAD[4] = nonce[3], noncelen != 4 && (ccm->PAD[5] = nonce[4], noncelen != 5))" ( (comma_expression "ccm->PAD[4] = nonce[3], noncelen != 4 && (ccm->PAD[5] = nonce[4], noncelen != 5)" (assignment_expression "ccm->PAD[4] = nonce[3]" (subscript_expression "ccm->PAD[4]" (field_expression "ccm->PAD" identifier -> field_identifier) [ number_literal ]) = (subscript_expression "nonce[3]" identifier [ number_literal ])) , (binary_expression "noncelen != 4 && (ccm->PAD[5] = nonce[4], noncelen != 5)" (binary_expression "noncelen != 4" identifier != number_literal) && (parenthesized_expression "(ccm->PAD[5] = nonce[4], noncelen != 5)" ( (comma_expression "ccm->PAD[5] = nonce[4], noncelen != 5" (assignment_expression "ccm->PAD[5] = nonce[4]" (subscript_expression "ccm->PAD[5]" (field_expression "ccm->PAD" identifier -> field_identifier) [ number_literal ]) = (subscript_expression "nonce[4]" identifier [ number_literal ])) , (binary_expression "noncelen != 5" identifier != number_literal)) )))) )) && (parenthesized_expression "((ccm->PAD[6] = nonce[5], noncelen != 6 &&\n           ((ccm->PAD[7] = nonce[6], noncelen != 7 && (ccm->PAD[8] = nonce[7], noncelen != 8)))))" ( (parenthesized_expression "(ccm->PAD[6] = nonce[5], noncelen != 6 &&\n           ((ccm->PAD[7] = nonce[6], noncelen != 7 && (ccm->PAD[8] = nonce[7], noncelen != 8))))" ( (comma_expression "ccm->PAD[6] = nonce[5], noncelen != 6 &&\n           ((ccm->PAD[7] = nonce[6], noncelen != 7 && (ccm->PAD[8] = nonce[7], noncelen != 8)))" (assignment_expression "ccm->PAD[6] = nonce[5]" (subscript_expression "ccm->PAD[6]" (field_expression "ccm->PAD" identifier -> field_identifier) [ number_literal ]) = (subscript_expression "nonce[5]" identifier [ number_literal ])) , (binary_expression "noncelen != 6 &&\n           ((ccm->PAD[7] = nonce[6], noncelen != 7 && (ccm->PAD[8] = nonce[7], noncelen != 8)))" (binary_expression "noncelen != 6" identifier != number_literal) && (parenthesized_expression "((ccm->PAD[7] = nonce[6], noncelen != 7 && (ccm->PAD[8] = nonce[7], noncelen != 8)))" ( (parenthesized_expression "(ccm->PAD[7] = nonce[6], noncelen != 7 && (ccm->PAD[8] = nonce[7], noncelen != 8))" ( (comma_expression "ccm->PAD[7] = nonce[6], noncelen != 7 && (ccm->PAD[8] = nonce[7], noncelen != 8)" (assignment_expression "ccm->PAD[7] = nonce[6]" (subscript_expression "ccm->PAD[7]" (field_expression "ccm->PAD" identifier -> field_identifier) [ number_literal ]) = (subscript_expression "nonce[6]" identifier [ number_literal ])) , (binary_expression "noncelen != 7 && (ccm->PAD[8] = nonce[7], noncelen != 8)" (binary_expression "noncelen != 7" identifier != number_literal) && (parenthesized_expression "(ccm->PAD[8] = nonce[7], noncelen != 8)" ( (comma_expression "ccm->PAD[8] = nonce[7], noncelen != 8" (assignment_expression "ccm->PAD[8] = nonce[7]" (subscript_expression "ccm->PAD[8]" (field_expression "ccm->PAD" identifier -> field_identifier) [ number_literal ]) = (subscript_expression "nonce[7]" identifier [ number_literal ])) , (binary_expression "noncelen != 8" identifier != number_literal)) )))) )) )))) )) ))) )) && (parenthesized_expression "(ccm->PAD[9] = nonce[8], noncelen != 9)" ( (comma_expression "ccm->PAD[9] = nonce[8], noncelen != 9" (assignment_expression "ccm->PAD[9] = nonce[8]" (subscript_expression "ccm->PAD[9]" (field_expression "ccm->PAD" identifier -> field_identifier) [ number_literal ]) = (subscript_expression "nonce[8]" identifier [ number_literal ])) , (binary_expression "noncelen != 9" identifier != number_literal)) ))) )) && (parenthesized_expression "((((ccm->PAD[10] = nonce[9], noncelen != 10 && (ccm->PAD[0xb] = nonce[10], noncelen != 0xb))\n          && (ccm->PAD[0xc] = nonce[0xb], noncelen != 0xc)) &&\n         ((ccm->PAD[0xd] = nonce[0xc], noncelen != 0xd &&\n          (ccm->PAD[0xe] = nonce[0xd], noncelen != 0xe)))))" ( (parenthesized_expression "(((ccm->PAD[10] = nonce[9], noncelen != 10 && (ccm->PAD[0xb] = nonce[10], noncelen != 0xb))\n          && (ccm->PAD[0xc] = nonce[0xb], noncelen != 0xc)) &&\n         ((ccm->PAD[0xd] = nonce[0xc], noncelen != 0xd &&\n          (ccm->PAD[0xe] = nonce[0xd], noncelen != 0xe))))" ( (binary_expression "((ccm->PAD[10] = nonce[9], noncelen != 10 && (ccm->PAD[0xb] = nonce[10], noncelen != 0xb))\n          && (ccm->PAD[0xc] = nonce[0xb], noncelen != 0xc)) &&\n         ((ccm->PAD[0xd] = nonce[0xc], noncelen != 0xd &&\n          (ccm->PAD[0xe] = nonce[0xd], noncelen != 0xe)))" (parenthesized_expression "((ccm->PAD[10] = nonce[9], noncelen != 10 && (ccm->PAD[0xb] = nonce[10], noncelen != 0xb))\n          && (ccm->PAD[0xc] = nonce[0xb], noncelen != 0xc))" ( (binary_expression "(ccm->PAD[10] = nonce[9], noncelen != 10 && (ccm->PAD[0xb] = nonce[10], noncelen != 0xb))\n          && (ccm->PAD[0xc] = nonce[0xb], noncelen != 0xc)" (parenthesized_expression "(ccm->PAD[10] = nonce[9], noncelen != 10 && (ccm->PAD[0xb] = nonce[10], noncelen != 0xb))" ( (comma_expression "ccm->PAD[10] = nonce[9], noncelen != 10 && (ccm->PAD[0xb] = nonce[10], noncelen != 0xb)" (assignment_expression "ccm->PAD[10] = nonce[9]" (subscript_expression "ccm->PAD[10]" (field_expression "ccm->PAD" identifier -> field_identifier) [ number_literal ]) = (subscript_expression "nonce[9]" identifier [ number_literal ])) , (binary_expression "noncelen != 10 && (ccm->PAD[0xb] = nonce[10], noncelen != 0xb)" (binary_expression "noncelen != 10" identifier != number_literal) && (parenthesized_expression "(ccm->PAD[0xb] = nonce[10], noncelen != 0xb)" ( (comma_expression "ccm->PAD[0xb] = nonce[10], noncelen != 0xb" (assignment_expression "ccm->PAD[0xb] = nonce[10]" (subscript_expression "ccm->PAD[0xb]" (field_expression "ccm->PAD" identifier -> field_identifier) [ number_literal ]) = (subscript_expression "nonce[10]" identifier [ number_literal ])) , (binary_expression "noncelen != 0xb" identifier != number_literal)) )))) )) && (parenthesized_expression "(ccm->PAD[0xc] = nonce[0xb], noncelen != 0xc)" ( (comma_expression "ccm->PAD[0xc] = nonce[0xb], noncelen != 0xc" (assignment_expression "ccm->PAD[0xc] = nonce[0xb]" (subscript_expression "ccm->PAD[0xc]" (field_expression "ccm->PAD" identifier -> field_identifier) [ number_literal ]) = (subscript_expression "nonce[0xb]" identifier [ number_literal ])) , (binary_expression "noncelen != 0xc" identifier != number_literal)) ))) )) && (parenthesized_expression "((ccm->PAD[0xd] = nonce[0xc], noncelen != 0xd &&\n          (ccm->PAD[0xe] = nonce[0xd], noncelen != 0xe)))" ( (parenthesized_expression "(ccm->PAD[0xd] = nonce[0xc], noncelen != 0xd &&\n          (ccm->PAD[0xe] = nonce[0xd], noncelen != 0xe))" ( (comma_expression "ccm->PAD[0xd] = nonce[0xc], noncelen != 0xd &&\n          (ccm->PAD[0xe] = nonce[0xd], noncelen != 0xe)" (assignment_expression "ccm->PAD[0xd] = nonce[0xc]" (subscript_expression "ccm->PAD[0xd]" (field_expression "ccm->PAD" identifier -> field_identifier) [ number_literal ]) = (subscript_expression "nonce[0xc]" identifier [ number_literal ])) , (binary_expression "noncelen != 0xd &&\n          (ccm->PAD[0xe] = nonce[0xd], noncelen != 0xe)" (binary_expression "noncelen != 0xd" identifier != number_literal) && (parenthesized_expression "(ccm->PAD[0xe] = nonce[0xd], noncelen != 0xe)" ( (comma_expression "ccm->PAD[0xe] = nonce[0xd], noncelen != 0xe" (assignment_expression "ccm->PAD[0xe] = nonce[0xd]" (subscript_expression "ccm->PAD[0xe]" (field_expression "ccm->PAD" identifier -> field_identifier) [ number_literal ]) = (subscript_expression "nonce[0xd]" identifier [ number_literal ])) , (binary_expression "noncelen != 0xe" identifier != number_literal)) )))) )) ))) )) ))) )) ))) )) (compound_statement "{\n      ccm->PAD[0xf] = nonce[0xe];\n    }" { (expression_statement "ccm->PAD[0xf] = nonce[0xe];" (assignment_expression "ccm->PAD[0xf] = nonce[0xe]" (subscript_expression "ccm->PAD[0xf]" (field_expression "ccm->PAD" identifier -> field_identifier) [ number_literal ]) = (subscript_expression "nonce[0xe]" identifier [ number_literal ])) ;) })) (expression_statement "lVar5 = noncelen + 1;" (assignment_expression "lVar5 = noncelen + 1" identifier = (binary_expression "noncelen + 1" identifier + number_literal)) ;) (if_statement "if (3 < uVar4) goto LAB_00133225;" if (parenthesized_expression "(3 < uVar4)" ( (binary_expression "3 < uVar4" number_literal < identifier) )) (goto_statement "goto LAB_00133225;" goto statement_identifier ;)) (expression_statement "iVar3 = 8;" (assignment_expression "iVar3 = 8" identifier = number_literal) ;) (if_statement "if ((uVar4 == 3) || (iVar3 = 0x10, uVar4 == 2)) {\n      uVar6 = uVar6 << iVar3;\n    }\n    else {\n      uVar7 = uVar6 << 0x18;\n      uVar6 = 0;\n      if (uVar4 != 0) {\n        uVar6 = uVar7;\n      }\n    }" if (parenthesized_expression "((uVar4 == 3) || (iVar3 = 0x10, uVar4 == 2))" ( (binary_expression "(uVar4 == 3) || (iVar3 = 0x10, uVar4 == 2)" (parenthesized_expression "(uVar4 == 3)" ( (binary_expression "uVar4 == 3" identifier == number_literal) )) || (parenthesized_expression "(iVar3 = 0x10, uVar4 == 2)" ( (comma_expression "iVar3 = 0x10, uVar4 == 2" (assignment_expression "iVar3 = 0x10" identifier = number_literal) , (binary_expression "uVar4 == 2" identifier == number_literal)) ))) )) (compound_statement "{\n      uVar6 = uVar6 << iVar3;\n    }" { (expression_statement "uVar6 = uVar6 << iVar3;" (assignment_expression "uVar6 = uVar6 << iVar3" identifier = (binary_expression "uVar6 << iVar3" identifier << identifier)) ;) }) (else_clause "else {\n      uVar7 = uVar6 << 0x18;\n      uVar6 = 0;\n      if (uVar4 != 0) {\n        uVar6 = uVar7;\n      }\n    }" else (compound_statement "{\n      uVar7 = uVar6 << 0x18;\n      uVar6 = 0;\n      if (uVar4 != 0) {\n        uVar6 = uVar7;\n      }\n    }" { (expression_statement "uVar7 = uVar6 << 0x18;" (assignment_expression "uVar7 = uVar6 << 0x18" identifier = (binary_expression "uVar6 << 0x18" identifier << number_literal)) ;) (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" identifier = number_literal) ;) (if_statement "if (uVar4 != 0) {\n        uVar6 = uVar7;\n      }" if (parenthesized_expression "(uVar4 != 0)" ( (binary_expression "uVar4 != 0" identifier != number_literal) )) (compound_statement "{\n        uVar6 = uVar7;\n      }" { (expression_statement "uVar6 = uVar7;" (assignment_expression "uVar6 = uVar7" identifier = identifier) ;) })) }))) (labeled_statement "LAB_00132d92:\n    uVar7 = 0;" statement_identifier : (expression_statement "uVar7 = 0;" (assignment_expression "uVar7 = 0" identifier = number_literal) ;)) }))) (if_statement "if (((((uVar7 < uVar4) && (ccm->PAD[lVar5] = (uchar)(uVar6 >> 0x18), uVar7 + 1 < uVar4)) &&\n       (ccm->PAD[lVar5 + 1] = (uchar)(uVar6 >> 0x10), uVar7 + 2 < uVar4)) &&\n      (((ccm->PAD[lVar5 + 2] = (uchar)(uVar6 >> 8), uVar7 + 3 < uVar4 &&\n        (ccm->PAD[lVar5 + 3] = (uchar)uVar6, uVar7 + 4 < uVar4)) &&\n       ((ccm->PAD[lVar5 + 4] = '\0', uVar7 + 5 < uVar4 &&\n        ((ccm->PAD[lVar5 + 5] = '\0', uVar7 + 6 < uVar4 &&\n         (ccm->PAD[lVar5 + 6] = '\0', uVar7 + 7 < uVar4)))))))) &&\n     (((ccm->PAD[lVar5 + 7] = '\0', uVar7 + 8 < uVar4 &&\n       (((ccm->PAD[lVar5 + 8] = '\0', uVar7 + 9 < uVar4 &&\n         (ccm->PAD[lVar5 + 9] = '\0', uVar7 + 10 < uVar4)) &&\n        (ccm->PAD[lVar5 + 10] = '\0', uVar7 + 0xb < uVar4)))) &&\n      ((ccm->PAD[lVar5 + 0xb] = '\0', uVar7 + 0xc < uVar4 &&\n       (ccm->PAD[lVar5 + 0xc] = '\0', uVar7 + 0xd < uVar4)))))) {\n    ccm->PAD[lVar5 + 0xd] = '\0';\n    if (uVar7 + 0xe < uVar4) {\n      ccm->PAD[lVar5 + 0xe] = '\0';\n      if (uVar7 + 0xf < uVar4) {\n        ccm->PAD[lVar5 + 0xf] = '\0';\n      }\n    }\n  }" if (parenthesized_expression "(((((uVar7 < uVar4) && (ccm->PAD[lVar5] = (uchar)(uVar6 >> 0x18), uVar7 + 1 < uVar4)) &&\n       (ccm->PAD[lVar5 + 1] = (uchar)(uVar6 >> 0x10), uVar7 + 2 < uVar4)) &&\n      (((ccm->PAD[lVar5 + 2] = (uchar)(uVar6 >> 8), uVar7 + 3 < uVar4 &&\n        (ccm->PAD[lVar5 + 3] = (uchar)uVar6, uVar7 + 4 < uVar4)) &&\n       ((ccm->PAD[lVar5 + 4] = '\0', uVar7 + 5 < uVar4 &&\n        ((ccm->PAD[lVar5 + 5] = '\0', uVar7 + 6 < uVar4 &&\n         (ccm->PAD[lVar5 + 6] = '\0', uVar7 + 7 < uVar4)))))))) &&\n     (((ccm->PAD[lVar5 + 7] = '\0', uVar7 + 8 < uVar4 &&\n       (((ccm->PAD[lVar5 + 8] = '\0', uVar7 + 9 < uVar4 &&\n         (ccm->PAD[lVar5 + 9] = '\0', uVar7 + 10 < uVar4)) &&\n        (ccm->PAD[lVar5 + 10] = '\0', uVar7 + 0xb < uVar4)))) &&\n      ((ccm->PAD[lVar5 + 0xb] = '\0', uVar7 + 0xc < uVar4 &&\n       (ccm->PAD[lVar5 + 0xc] = '\0', uVar7 + 0xd < uVar4))))))" ( (binary_expression "((((uVar7 < uVar4) && (ccm->PAD[lVar5] = (uchar)(uVar6 >> 0x18), uVar7 + 1 < uVar4)) &&\n       (ccm->PAD[lVar5 + 1] = (uchar)(uVar6 >> 0x10), uVar7 + 2 < uVar4)) &&\n      (((ccm->PAD[lVar5 + 2] = (uchar)(uVar6 >> 8), uVar7 + 3 < uVar4 &&\n        (ccm->PAD[lVar5 + 3] = (uchar)uVar6, uVar7 + 4 < uVar4)) &&\n       ((ccm->PAD[lVar5 + 4] = '\0', uVar7 + 5 < uVar4 &&\n        ((ccm->PAD[lVar5 + 5] = '\0', uVar7 + 6 < uVar4 &&\n         (ccm->PAD[lVar5 + 6] = '\0', uVar7 + 7 < uVar4)))))))) &&\n     (((ccm->PAD[lVar5 + 7] = '\0', uVar7 + 8 < uVar4 &&\n       (((ccm->PAD[lVar5 + 8] = '\0', uVar7 + 9 < uVar4 &&\n         (ccm->PAD[lVar5 + 9] = '\0', uVar7 + 10 < uVar4)) &&\n        (ccm->PAD[lVar5 + 10] = '\0', uVar7 + 0xb < uVar4)))) &&\n      ((ccm->PAD[lVar5 + 0xb] = '\0', uVar7 + 0xc < uVar4 &&\n       (ccm->PAD[lVar5 + 0xc] = '\0', uVar7 + 0xd < uVar4)))))" (parenthesized_expression "((((uVar7 < uVar4) && (ccm->PAD[lVar5] = (uchar)(uVar6 >> 0x18), uVar7 + 1 < uVar4)) &&\n       (ccm->PAD[lVar5 + 1] = (uchar)(uVar6 >> 0x10), uVar7 + 2 < uVar4)) &&\n      (((ccm->PAD[lVar5 + 2] = (uchar)(uVar6 >> 8), uVar7 + 3 < uVar4 &&\n        (ccm->PAD[lVar5 + 3] = (uchar)uVar6, uVar7 + 4 < uVar4)) &&\n       ((ccm->PAD[lVar5 + 4] = '\0', uVar7 + 5 < uVar4 &&\n        ((ccm->PAD[lVar5 + 5] = '\0', uVar7 + 6 < uVar4 &&\n         (ccm->PAD[lVar5 + 6] = '\0', uVar7 + 7 < uVar4))))))))" ( (binary_expression "(((uVar7 < uVar4) && (ccm->PAD[lVar5] = (uchar)(uVar6 >> 0x18), uVar7 + 1 < uVar4)) &&\n       (ccm->PAD[lVar5 + 1] = (uchar)(uVar6 >> 0x10), uVar7 + 2 < uVar4)) &&\n      (((ccm->PAD[lVar5 + 2] = (uchar)(uVar6 >> 8), uVar7 + 3 < uVar4 &&\n        (ccm->PAD[lVar5 + 3] = (uchar)uVar6, uVar7 + 4 < uVar4)) &&\n       ((ccm->PAD[lVar5 + 4] = '\0', uVar7 + 5 < uVar4 &&\n        ((ccm->PAD[lVar5 + 5] = '\0', uVar7 + 6 < uVar4 &&\n         (ccm->PAD[lVar5 + 6] = '\0', uVar7 + 7 < uVar4)))))))" (parenthesized_expression "(((uVar7 < uVar4) && (ccm->PAD[lVar5] = (uchar)(uVar6 >> 0x18), uVar7 + 1 < uVar4)) &&\n       (ccm->PAD[lVar5 + 1] = (uchar)(uVar6 >> 0x10), uVar7 + 2 < uVar4))" ( (binary_expression "((uVar7 < uVar4) && (ccm->PAD[lVar5] = (uchar)(uVar6 >> 0x18), uVar7 + 1 < uVar4)) &&\n       (ccm->PAD[lVar5 + 1] = (uchar)(uVar6 >> 0x10), uVar7 + 2 < uVar4)" (parenthesized_expression "((uVar7 < uVar4) && (ccm->PAD[lVar5] = (uchar)(uVar6 >> 0x18), uVar7 + 1 < uVar4))" ( (binary_expression "(uVar7 < uVar4) && (ccm->PAD[lVar5] = (uchar)(uVar6 >> 0x18), uVar7 + 1 < uVar4)" (parenthesized_expression "(uVar7 < uVar4)" ( (binary_expression "uVar7 < uVar4" identifier < identifier) )) && (parenthesized_expression "(ccm->PAD[lVar5] = (uchar)(uVar6 >> 0x18), uVar7 + 1 < uVar4)" ( (comma_expression "ccm->PAD[lVar5] = (uchar)(uVar6 >> 0x18), uVar7 + 1 < uVar4" (assignment_expression "ccm->PAD[lVar5] = (uchar)(uVar6 >> 0x18)" (subscript_expression "ccm->PAD[lVar5]" (field_expression "ccm->PAD" identifier -> field_identifier) [ identifier ]) = (call_expression "(uchar)(uVar6 >> 0x18)" (parenthesized_expression "(uchar)" ( identifier )) (argument_list "(uVar6 >> 0x18)" ( (binary_expression "uVar6 >> 0x18" identifier >> number_literal) )))) , (binary_expression "uVar7 + 1 < uVar4" (binary_expression "uVar7 + 1" identifier + number_literal) < identifier)) ))) )) && (parenthesized_expression "(ccm->PAD[lVar5 + 1] = (uchar)(uVar6 >> 0x10), uVar7 + 2 < uVar4)" ( (comma_expression "ccm->PAD[lVar5 + 1] = (uchar)(uVar6 >> 0x10), uVar7 + 2 < uVar4" (assignment_expression "ccm->PAD[lVar5 + 1] = (uchar)(uVar6 >> 0x10)" (subscript_expression "ccm->PAD[lVar5 + 1]" (field_expression "ccm->PAD" identifier -> field_identifier) [ (binary_expression "lVar5 + 1" identifier + number_literal) ]) = (call_expression "(uchar)(uVar6 >> 0x10)" (parenthesized_expression "(uchar)" ( identifier )) (argument_list "(uVar6 >> 0x10)" ( (binary_expression "uVar6 >> 0x10" identifier >> number_literal) )))) , (binary_expression "uVar7 + 2 < uVar4" (binary_expression "uVar7 + 2" identifier + number_literal) < identifier)) ))) )) && (parenthesized_expression "(((ccm->PAD[lVar5 + 2] = (uchar)(uVar6 >> 8), uVar7 + 3 < uVar4 &&\n        (ccm->PAD[lVar5 + 3] = (uchar)uVar6, uVar7 + 4 < uVar4)) &&\n       ((ccm->PAD[lVar5 + 4] = '\0', uVar7 + 5 < uVar4 &&\n        ((ccm->PAD[lVar5 + 5] = '\0', uVar7 + 6 < uVar4 &&\n         (ccm->PAD[lVar5 + 6] = '\0', uVar7 + 7 < uVar4)))))))" ( (parenthesized_expression "((ccm->PAD[lVar5 + 2] = (uchar)(uVar6 >> 8), uVar7 + 3 < uVar4 &&\n        (ccm->PAD[lVar5 + 3] = (uchar)uVar6, uVar7 + 4 < uVar4)) &&\n       ((ccm->PAD[lVar5 + 4] = '\0', uVar7 + 5 < uVar4 &&\n        ((ccm->PAD[lVar5 + 5] = '\0', uVar7 + 6 < uVar4 &&\n         (ccm->PAD[lVar5 + 6] = '\0', uVar7 + 7 < uVar4))))))" ( (binary_expression "(ccm->PAD[lVar5 + 2] = (uchar)(uVar6 >> 8), uVar7 + 3 < uVar4 &&\n        (ccm->PAD[lVar5 + 3] = (uchar)uVar6, uVar7 + 4 < uVar4)) &&\n       ((ccm->PAD[lVar5 + 4] = '\0', uVar7 + 5 < uVar4 &&\n        ((ccm->PAD[lVar5 + 5] = '\0', uVar7 + 6 < uVar4 &&\n         (ccm->PAD[lVar5 + 6] = '\0', uVar7 + 7 < uVar4)))))" (parenthesized_expression "(ccm->PAD[lVar5 + 2] = (uchar)(uVar6 >> 8), uVar7 + 3 < uVar4 &&\n        (ccm->PAD[lVar5 + 3] = (uchar)uVar6, uVar7 + 4 < uVar4))" ( (comma_expression "ccm->PAD[lVar5 + 2] = (uchar)(uVar6 >> 8), uVar7 + 3 < uVar4 &&\n        (ccm->PAD[lVar5 + 3] = (uchar)uVar6, uVar7 + 4 < uVar4)" (assignment_expression "ccm->PAD[lVar5 + 2] = (uchar)(uVar6 >> 8)" (subscript_expression "ccm->PAD[lVar5 + 2]" (field_expression "ccm->PAD" identifier -> field_identifier) [ (binary_expression "lVar5 + 2" identifier + number_literal) ]) = (call_expression "(uchar)(uVar6 >> 8)" (parenthesized_expression "(uchar)" ( identifier )) (argument_list "(uVar6 >> 8)" ( (binary_expression "uVar6 >> 8" identifier >> number_literal) )))) , (binary_expression "uVar7 + 3 < uVar4 &&\n        (ccm->PAD[lVar5 + 3] = (uchar)uVar6, uVar7 + 4 < uVar4)" (binary_expression "uVar7 + 3 < uVar4" (binary_expression "uVar7 + 3" identifier + number_literal) < identifier) && (parenthesized_expression "(ccm->PAD[lVar5 + 3] = (uchar)uVar6, uVar7 + 4 < uVar4)" ( (comma_expression "ccm->PAD[lVar5 + 3] = (uchar)uVar6, uVar7 + 4 < uVar4" (assignment_expression "ccm->PAD[lVar5 + 3] = (uchar)uVar6" (subscript_expression "ccm->PAD[lVar5 + 3]" (field_expression "ccm->PAD" identifier -> field_identifier) [ (binary_expression "lVar5 + 3" identifier + number_literal) ]) = (cast_expression "(uchar)uVar6" ( (type_descriptor "uchar" type_identifier) ) identifier)) , (binary_expression "uVar7 + 4 < uVar4" (binary_expression "uVar7 + 4" identifier + number_literal) < identifier)) )))) )) && (parenthesized_expression "((ccm->PAD[lVar5 + 4] = '\0', uVar7 + 5 < uVar4 &&\n        ((ccm->PAD[lVar5 + 5] = '\0', uVar7 + 6 < uVar4 &&\n         (ccm->PAD[lVar5 + 6] = '\0', uVar7 + 7 < uVar4)))))" ( (parenthesized_expression "(ccm->PAD[lVar5 + 4] = '\0', uVar7 + 5 < uVar4 &&\n        ((ccm->PAD[lVar5 + 5] = '\0', uVar7 + 6 < uVar4 &&\n         (ccm->PAD[lVar5 + 6] = '\0', uVar7 + 7 < uVar4))))" ( (comma_expression "ccm->PAD[lVar5 + 4] = '\0', uVar7 + 5 < uVar4 &&\n        ((ccm->PAD[lVar5 + 5] = '\0', uVar7 + 6 < uVar4 &&\n         (ccm->PAD[lVar5 + 6] = '\0', uVar7 + 7 < uVar4)))" (assignment_expression "ccm->PAD[lVar5 + 4] = '\0'" (subscript_expression "ccm->PAD[lVar5 + 4]" (field_expression "ccm->PAD" identifier -> field_identifier) [ (binary_expression "lVar5 + 4" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "uVar7 + 5 < uVar4 &&\n        ((ccm->PAD[lVar5 + 5] = '\0', uVar7 + 6 < uVar4 &&\n         (ccm->PAD[lVar5 + 6] = '\0', uVar7 + 7 < uVar4)))" (binary_expression "uVar7 + 5 < uVar4" (binary_expression "uVar7 + 5" identifier + number_literal) < identifier) && (parenthesized_expression "((ccm->PAD[lVar5 + 5] = '\0', uVar7 + 6 < uVar4 &&\n         (ccm->PAD[lVar5 + 6] = '\0', uVar7 + 7 < uVar4)))" ( (parenthesized_expression "(ccm->PAD[lVar5 + 5] = '\0', uVar7 + 6 < uVar4 &&\n         (ccm->PAD[lVar5 + 6] = '\0', uVar7 + 7 < uVar4))" ( (comma_expression "ccm->PAD[lVar5 + 5] = '\0', uVar7 + 6 < uVar4 &&\n         (ccm->PAD[lVar5 + 6] = '\0', uVar7 + 7 < uVar4)" (assignment_expression "ccm->PAD[lVar5 + 5] = '\0'" (subscript_expression "ccm->PAD[lVar5 + 5]" (field_expression "ccm->PAD" identifier -> field_identifier) [ (binary_expression "lVar5 + 5" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "uVar7 + 6 < uVar4 &&\n         (ccm->PAD[lVar5 + 6] = '\0', uVar7 + 7 < uVar4)" (binary_expression "uVar7 + 6 < uVar4" (binary_expression "uVar7 + 6" identifier + number_literal) < identifier) && (parenthesized_expression "(ccm->PAD[lVar5 + 6] = '\0', uVar7 + 7 < uVar4)" ( (comma_expression "ccm->PAD[lVar5 + 6] = '\0', uVar7 + 7 < uVar4" (assignment_expression "ccm->PAD[lVar5 + 6] = '\0'" (subscript_expression "ccm->PAD[lVar5 + 6]" (field_expression "ccm->PAD" identifier -> field_identifier) [ (binary_expression "lVar5 + 6" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "uVar7 + 7 < uVar4" (binary_expression "uVar7 + 7" identifier + number_literal) < identifier)) )))) )) )))) )) ))) )) ))) )) && (parenthesized_expression "(((ccm->PAD[lVar5 + 7] = '\0', uVar7 + 8 < uVar4 &&\n       (((ccm->PAD[lVar5 + 8] = '\0', uVar7 + 9 < uVar4 &&\n         (ccm->PAD[lVar5 + 9] = '\0', uVar7 + 10 < uVar4)) &&\n        (ccm->PAD[lVar5 + 10] = '\0', uVar7 + 0xb < uVar4)))) &&\n      ((ccm->PAD[lVar5 + 0xb] = '\0', uVar7 + 0xc < uVar4 &&\n       (ccm->PAD[lVar5 + 0xc] = '\0', uVar7 + 0xd < uVar4)))))" ( (parenthesized_expression "((ccm->PAD[lVar5 + 7] = '\0', uVar7 + 8 < uVar4 &&\n       (((ccm->PAD[lVar5 + 8] = '\0', uVar7 + 9 < uVar4 &&\n         (ccm->PAD[lVar5 + 9] = '\0', uVar7 + 10 < uVar4)) &&\n        (ccm->PAD[lVar5 + 10] = '\0', uVar7 + 0xb < uVar4)))) &&\n      ((ccm->PAD[lVar5 + 0xb] = '\0', uVar7 + 0xc < uVar4 &&\n       (ccm->PAD[lVar5 + 0xc] = '\0', uVar7 + 0xd < uVar4))))" ( (binary_expression "(ccm->PAD[lVar5 + 7] = '\0', uVar7 + 8 < uVar4 &&\n       (((ccm->PAD[lVar5 + 8] = '\0', uVar7 + 9 < uVar4 &&\n         (ccm->PAD[lVar5 + 9] = '\0', uVar7 + 10 < uVar4)) &&\n        (ccm->PAD[lVar5 + 10] = '\0', uVar7 + 0xb < uVar4)))) &&\n      ((ccm->PAD[lVar5 + 0xb] = '\0', uVar7 + 0xc < uVar4 &&\n       (ccm->PAD[lVar5 + 0xc] = '\0', uVar7 + 0xd < uVar4)))" (parenthesized_expression "(ccm->PAD[lVar5 + 7] = '\0', uVar7 + 8 < uVar4 &&\n       (((ccm->PAD[lVar5 + 8] = '\0', uVar7 + 9 < uVar4 &&\n         (ccm->PAD[lVar5 + 9] = '\0', uVar7 + 10 < uVar4)) &&\n        (ccm->PAD[lVar5 + 10] = '\0', uVar7 + 0xb < uVar4))))" ( (comma_expression "ccm->PAD[lVar5 + 7] = '\0', uVar7 + 8 < uVar4 &&\n       (((ccm->PAD[lVar5 + 8] = '\0', uVar7 + 9 < uVar4 &&\n         (ccm->PAD[lVar5 + 9] = '\0', uVar7 + 10 < uVar4)) &&\n        (ccm->PAD[lVar5 + 10] = '\0', uVar7 + 0xb < uVar4)))" (assignment_expression "ccm->PAD[lVar5 + 7] = '\0'" (subscript_expression "ccm->PAD[lVar5 + 7]" (field_expression "ccm->PAD" identifier -> field_identifier) [ (binary_expression "lVar5 + 7" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "uVar7 + 8 < uVar4 &&\n       (((ccm->PAD[lVar5 + 8] = '\0', uVar7 + 9 < uVar4 &&\n         (ccm->PAD[lVar5 + 9] = '\0', uVar7 + 10 < uVar4)) &&\n        (ccm->PAD[lVar5 + 10] = '\0', uVar7 + 0xb < uVar4)))" (binary_expression "uVar7 + 8 < uVar4" (binary_expression "uVar7 + 8" identifier + number_literal) < identifier) && (parenthesized_expression "(((ccm->PAD[lVar5 + 8] = '\0', uVar7 + 9 < uVar4 &&\n         (ccm->PAD[lVar5 + 9] = '\0', uVar7 + 10 < uVar4)) &&\n        (ccm->PAD[lVar5 + 10] = '\0', uVar7 + 0xb < uVar4)))" ( (parenthesized_expression "((ccm->PAD[lVar5 + 8] = '\0', uVar7 + 9 < uVar4 &&\n         (ccm->PAD[lVar5 + 9] = '\0', uVar7 + 10 < uVar4)) &&\n        (ccm->PAD[lVar5 + 10] = '\0', uVar7 + 0xb < uVar4))" ( (binary_expression "(ccm->PAD[lVar5 + 8] = '\0', uVar7 + 9 < uVar4 &&\n         (ccm->PAD[lVar5 + 9] = '\0', uVar7 + 10 < uVar4)) &&\n        (ccm->PAD[lVar5 + 10] = '\0', uVar7 + 0xb < uVar4)" (parenthesized_expression "(ccm->PAD[lVar5 + 8] = '\0', uVar7 + 9 < uVar4 &&\n         (ccm->PAD[lVar5 + 9] = '\0', uVar7 + 10 < uVar4))" ( (comma_expression "ccm->PAD[lVar5 + 8] = '\0', uVar7 + 9 < uVar4 &&\n         (ccm->PAD[lVar5 + 9] = '\0', uVar7 + 10 < uVar4)" (assignment_expression "ccm->PAD[lVar5 + 8] = '\0'" (subscript_expression "ccm->PAD[lVar5 + 8]" (field_expression "ccm->PAD" identifier -> field_identifier) [ (binary_expression "lVar5 + 8" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "uVar7 + 9 < uVar4 &&\n         (ccm->PAD[lVar5 + 9] = '\0', uVar7 + 10 < uVar4)" (binary_expression "uVar7 + 9 < uVar4" (binary_expression "uVar7 + 9" identifier + number_literal) < identifier) && (parenthesized_expression "(ccm->PAD[lVar5 + 9] = '\0', uVar7 + 10 < uVar4)" ( (comma_expression "ccm->PAD[lVar5 + 9] = '\0', uVar7 + 10 < uVar4" (assignment_expression "ccm->PAD[lVar5 + 9] = '\0'" (subscript_expression "ccm->PAD[lVar5 + 9]" (field_expression "ccm->PAD" identifier -> field_identifier) [ (binary_expression "lVar5 + 9" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "uVar7 + 10 < uVar4" (binary_expression "uVar7 + 10" identifier + number_literal) < identifier)) )))) )) && (parenthesized_expression "(ccm->PAD[lVar5 + 10] = '\0', uVar7 + 0xb < uVar4)" ( (comma_expression "ccm->PAD[lVar5 + 10] = '\0', uVar7 + 0xb < uVar4" (assignment_expression "ccm->PAD[lVar5 + 10] = '\0'" (subscript_expression "ccm->PAD[lVar5 + 10]" (field_expression "ccm->PAD" identifier -> field_identifier) [ (binary_expression "lVar5 + 10" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "uVar7 + 0xb < uVar4" (binary_expression "uVar7 + 0xb" identifier + number_literal) < identifier)) ))) )) )))) )) && (parenthesized_expression "((ccm->PAD[lVar5 + 0xb] = '\0', uVar7 + 0xc < uVar4 &&\n       (ccm->PAD[lVar5 + 0xc] = '\0', uVar7 + 0xd < uVar4)))" ( (parenthesized_expression "(ccm->PAD[lVar5 + 0xb] = '\0', uVar7 + 0xc < uVar4 &&\n       (ccm->PAD[lVar5 + 0xc] = '\0', uVar7 + 0xd < uVar4))" ( (comma_expression "ccm->PAD[lVar5 + 0xb] = '\0', uVar7 + 0xc < uVar4 &&\n       (ccm->PAD[lVar5 + 0xc] = '\0', uVar7 + 0xd < uVar4)" (assignment_expression "ccm->PAD[lVar5 + 0xb] = '\0'" (subscript_expression "ccm->PAD[lVar5 + 0xb]" (field_expression "ccm->PAD" identifier -> field_identifier) [ (binary_expression "lVar5 + 0xb" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "uVar7 + 0xc < uVar4 &&\n       (ccm->PAD[lVar5 + 0xc] = '\0', uVar7 + 0xd < uVar4)" (binary_expression "uVar7 + 0xc < uVar4" (binary_expression "uVar7 + 0xc" identifier + number_literal) < identifier) && (parenthesized_expression "(ccm->PAD[lVar5 + 0xc] = '\0', uVar7 + 0xd < uVar4)" ( (comma_expression "ccm->PAD[lVar5 + 0xc] = '\0', uVar7 + 0xd < uVar4" (assignment_expression "ccm->PAD[lVar5 + 0xc] = '\0'" (subscript_expression "ccm->PAD[lVar5 + 0xc]" (field_expression "ccm->PAD" identifier -> field_identifier) [ (binary_expression "lVar5 + 0xc" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "uVar7 + 0xd < uVar4" (binary_expression "uVar7 + 0xd" identifier + number_literal) < identifier)) )))) )) ))) )) ))) )) (compound_statement "{\n    ccm->PAD[lVar5 + 0xd] = '\0';\n    if (uVar7 + 0xe < uVar4) {\n      ccm->PAD[lVar5 + 0xe] = '\0';\n      if (uVar7 + 0xf < uVar4) {\n        ccm->PAD[lVar5 + 0xf] = '\0';\n      }\n    }\n  }" { (expression_statement "ccm->PAD[lVar5 + 0xd] = '\0';" (assignment_expression "ccm->PAD[lVar5 + 0xd] = '\0'" (subscript_expression "ccm->PAD[lVar5 + 0xd]" (field_expression "ccm->PAD" identifier -> field_identifier) [ (binary_expression "lVar5 + 0xd" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (if_statement "if (uVar7 + 0xe < uVar4) {\n      ccm->PAD[lVar5 + 0xe] = '\0';\n      if (uVar7 + 0xf < uVar4) {\n        ccm->PAD[lVar5 + 0xf] = '\0';\n      }\n    }" if (parenthesized_expression "(uVar7 + 0xe < uVar4)" ( (binary_expression "uVar7 + 0xe < uVar4" (binary_expression "uVar7 + 0xe" identifier + number_literal) < identifier) )) (compound_statement "{\n      ccm->PAD[lVar5 + 0xe] = '\0';\n      if (uVar7 + 0xf < uVar4) {\n        ccm->PAD[lVar5 + 0xf] = '\0';\n      }\n    }" { (expression_statement "ccm->PAD[lVar5 + 0xe] = '\0';" (assignment_expression "ccm->PAD[lVar5 + 0xe] = '\0'" (subscript_expression "ccm->PAD[lVar5 + 0xe]" (field_expression "ccm->PAD" identifier -> field_identifier) [ (binary_expression "lVar5 + 0xe" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (if_statement "if (uVar7 + 0xf < uVar4) {\n        ccm->PAD[lVar5 + 0xf] = '\0';\n      }" if (parenthesized_expression "(uVar7 + 0xf < uVar4)" ( (binary_expression "uVar7 + 0xf < uVar4" (binary_expression "uVar7 + 0xf" identifier + number_literal) < identifier) )) (compound_statement "{\n        ccm->PAD[lVar5 + 0xf] = '\0';\n      }" { (expression_statement "ccm->PAD[lVar5 + 0xf] = '\0';" (assignment_expression "ccm->PAD[lVar5 + 0xf] = '\0'" (subscript_expression "ccm->PAD[lVar5 + 0xf]" (field_expression "ccm->PAD" identifier -> field_identifier) [ (binary_expression "lVar5 + 0xf" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) ;) })) })) })) (expression_statement "iVar3 = (**(code **)(PTR_cipher_descriptor_001dded0 + (long)ccm->cipher * 0xc0 + 0x28))\n                    (ccm->PAD,ccm->PAD,ccm);" (assignment_expression "iVar3 = (**(code **)(PTR_cipher_descriptor_001dded0 + (long)ccm->cipher * 0xc0 + 0x28))\n                    (ccm->PAD,ccm->PAD,ccm)" identifier = (call_expression "(**(code **)(PTR_cipher_descriptor_001dded0 + (long)ccm->cipher * 0xc0 + 0x28))\n                    (ccm->PAD,ccm->PAD,ccm)" (parenthesized_expression "(**(code **)(PTR_cipher_descriptor_001dded0 + (long)ccm->cipher * 0xc0 + 0x28))" ( (pointer_expression "**(code **)(PTR_cipher_descriptor_001dded0 + (long)ccm->cipher * 0xc0 + 0x28)" * (pointer_expression "*(code **)(PTR_cipher_descriptor_001dded0 + (long)ccm->cipher * 0xc0 + 0x28)" * (cast_expression "(code **)(PTR_cipher_descriptor_001dded0 + (long)ccm->cipher * 0xc0 + 0x28)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(PTR_cipher_descriptor_001dded0 + (long)ccm->cipher * 0xc0 + 0x28)" ( (binary_expression "PTR_cipher_descriptor_001dded0 + (long)ccm->cipher * 0xc0 + 0x28" (binary_expression "PTR_cipher_descriptor_001dded0 + (long)ccm->cipher * 0xc0" identifier + (binary_expression "(long)ccm->cipher * 0xc0" (cast_expression "(long)ccm->cipher" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (field_expression "ccm->cipher" identifier -> field_identifier)) * number_literal)) + number_literal) ))))) )) (argument_list "(ccm->PAD,ccm->PAD,ccm)" ( (field_expression "ccm->PAD" identifier -> field_identifier) , (field_expression "ccm->PAD" identifier -> field_identifier) , identifier )))) ;) (if_statement "if (iVar3 != 0) {\n    return iVar3;\n  }" if (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (compound_statement "{\n    return iVar3;\n  }" { (return_statement "return iVar3;" return identifier ;) })) (expression_statement "uVar6 = ccm->aadlen;" (assignment_expression "uVar6 = ccm->aadlen" identifier = (field_expression "ccm->aadlen" identifier -> field_identifier)) ;) (expression_statement "ccm->x = 0;" (assignment_expression "ccm->x = 0" (field_expression "ccm->x" identifier -> field_identifier) = number_literal) ;) (if_statement "if (uVar6 != 0) {\n    bVar1 = ccm->PAD[1];\n    bVar2 = (byte)(uVar6 >> 8);\n    if (uVar6 < 0xff00) {\n      ccm->x = 2;\n      ccm->PAD[0] = ccm->PAD[0] ^ bVar2;\n      ccm->PAD[1] = (byte)uVar6 ^ bVar1;\n    }\n    else {\n      ccm->PAD[0] = ~ccm->PAD[0];\n      ccm->PAD[1] = bVar1 ^ 0xfe;\n      ccm->PAD[2] = ccm->PAD[2] ^ (byte)(uVar6 >> 0x18);\n      ccm->PAD[3] = ccm->PAD[3] ^ (byte)(uVar6 >> 0x10);\n      ccm->PAD[4] = ccm->PAD[4] ^ bVar2;\n      ccm->x = 6;\n      ccm->PAD[5] = ccm->PAD[5] ^ (byte)uVar6;\n    }\n  }" if (parenthesized_expression "(uVar6 != 0)" ( (binary_expression "uVar6 != 0" identifier != number_literal) )) (compound_statement "{\n    bVar1 = ccm->PAD[1];\n    bVar2 = (byte)(uVar6 >> 8);\n    if (uVar6 < 0xff00) {\n      ccm->x = 2;\n      ccm->PAD[0] = ccm->PAD[0] ^ bVar2;\n      ccm->PAD[1] = (byte)uVar6 ^ bVar1;\n    }\n    else {\n      ccm->PAD[0] = ~ccm->PAD[0];\n      ccm->PAD[1] = bVar1 ^ 0xfe;\n      ccm->PAD[2] = ccm->PAD[2] ^ (byte)(uVar6 >> 0x18);\n      ccm->PAD[3] = ccm->PAD[3] ^ (byte)(uVar6 >> 0x10);\n      ccm->PAD[4] = ccm->PAD[4] ^ bVar2;\n      ccm->x = 6;\n      ccm->PAD[5] = ccm->PAD[5] ^ (byte)uVar6;\n    }\n  }" { (expression_statement "bVar1 = ccm->PAD[1];" (assignment_expression "bVar1 = ccm->PAD[1]" identifier = (subscript_expression "ccm->PAD[1]" (field_expression "ccm->PAD" identifier -> field_identifier) [ number_literal ])) ;) (expression_statement "bVar2 = (byte)(uVar6 >> 8);" (assignment_expression "bVar2 = (byte)(uVar6 >> 8)" identifier = (call_expression "(byte)(uVar6 >> 8)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "(uVar6 >> 8)" ( (binary_expression "uVar6 >> 8" identifier >> number_literal) )))) ;) (if_statement "if (uVar6 < 0xff00) {\n      ccm->x = 2;\n      ccm->PAD[0] = ccm->PAD[0] ^ bVar2;\n      ccm->PAD[1] = (byte)uVar6 ^ bVar1;\n    }\n    else {\n      ccm->PAD[0] = ~ccm->PAD[0];\n      ccm->PAD[1] = bVar1 ^ 0xfe;\n      ccm->PAD[2] = ccm->PAD[2] ^ (byte)(uVar6 >> 0x18);\n      ccm->PAD[3] = ccm->PAD[3] ^ (byte)(uVar6 >> 0x10);\n      ccm->PAD[4] = ccm->PAD[4] ^ bVar2;\n      ccm->x = 6;\n      ccm->PAD[5] = ccm->PAD[5] ^ (byte)uVar6;\n    }" if (parenthesized_expression "(uVar6 < 0xff00)" ( (binary_expression "uVar6 < 0xff00" identifier < number_literal) )) (compound_statement "{\n      ccm->x = 2;\n      ccm->PAD[0] = ccm->PAD[0] ^ bVar2;\n      ccm->PAD[1] = (byte)uVar6 ^ bVar1;\n    }" { (expression_statement "ccm->x = 2;" (assignment_expression "ccm->x = 2" (field_expression "ccm->x" identifier -> field_identifier) = number_literal) ;) (expression_statement "ccm->PAD[0] = ccm->PAD[0] ^ bVar2;" (assignment_expression "ccm->PAD[0] = ccm->PAD[0] ^ bVar2" (subscript_expression "ccm->PAD[0]" (field_expression "ccm->PAD" identifier -> field_identifier) [ number_literal ]) = (binary_expression "ccm->PAD[0] ^ bVar2" (subscript_expression "ccm->PAD[0]" (field_expression "ccm->PAD" identifier -> field_identifier) [ number_literal ]) ^ identifier)) ;) (expression_statement "ccm->PAD[1] = (byte)uVar6 ^ bVar1;" (assignment_expression "ccm->PAD[1] = (byte)uVar6 ^ bVar1" (subscript_expression "ccm->PAD[1]" (field_expression "ccm->PAD" identifier -> field_identifier) [ number_literal ]) = (binary_expression "(byte)uVar6 ^ bVar1" (cast_expression "(byte)uVar6" ( (type_descriptor "byte" type_identifier) ) identifier) ^ identifier)) ;) }) (else_clause "else {\n      ccm->PAD[0] = ~ccm->PAD[0];\n      ccm->PAD[1] = bVar1 ^ 0xfe;\n      ccm->PAD[2] = ccm->PAD[2] ^ (byte)(uVar6 >> 0x18);\n      ccm->PAD[3] = ccm->PAD[3] ^ (byte)(uVar6 >> 0x10);\n      ccm->PAD[4] = ccm->PAD[4] ^ bVar2;\n      ccm->x = 6;\n      ccm->PAD[5] = ccm->PAD[5] ^ (byte)uVar6;\n    }" else (compound_statement "{\n      ccm->PAD[0] = ~ccm->PAD[0];\n      ccm->PAD[1] = bVar1 ^ 0xfe;\n      ccm->PAD[2] = ccm->PAD[2] ^ (byte)(uVar6 >> 0x18);\n      ccm->PAD[3] = ccm->PAD[3] ^ (byte)(uVar6 >> 0x10);\n      ccm->PAD[4] = ccm->PAD[4] ^ bVar2;\n      ccm->x = 6;\n      ccm->PAD[5] = ccm->PAD[5] ^ (byte)uVar6;\n    }" { (expression_statement "ccm->PAD[0] = ~ccm->PAD[0];" (assignment_expression "ccm->PAD[0] = ~ccm->PAD[0]" (subscript_expression "ccm->PAD[0]" (field_expression "ccm->PAD" identifier -> field_identifier) [ number_literal ]) = (unary_expression "~ccm->PAD[0]" ~ (subscript_expression "ccm->PAD[0]" (field_expression "ccm->PAD" identifier -> field_identifier) [ number_literal ]))) ;) (expression_statement "ccm->PAD[1] = bVar1 ^ 0xfe;" (assignment_expression "ccm->PAD[1] = bVar1 ^ 0xfe" (subscript_expression "ccm->PAD[1]" (field_expression "ccm->PAD" identifier -> field_identifier) [ number_literal ]) = (binary_expression "bVar1 ^ 0xfe" identifier ^ number_literal)) ;) (expression_statement "ccm->PAD[2] = ccm->PAD[2] ^ (byte)(uVar6 >> 0x18);" (assignment_expression "ccm->PAD[2] = ccm->PAD[2] ^ (byte)(uVar6 >> 0x18)" (subscript_expression "ccm->PAD[2]" (field_expression "ccm->PAD" identifier -> field_identifier) [ number_literal ]) = (binary_expression "ccm->PAD[2] ^ (byte)(uVar6 >> 0x18)" (subscript_expression "ccm->PAD[2]" (field_expression "ccm->PAD" identifier -> field_identifier) [ number_literal ]) ^ (call_expression "(byte)(uVar6 >> 0x18)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "(uVar6 >> 0x18)" ( (binary_expression "uVar6 >> 0x18" identifier >> number_literal) ))))) ;) (expression_statement "ccm->PAD[3] = ccm->PAD[3] ^ (byte)(uVar6 >> 0x10);" (assignment_expression "ccm->PAD[3] = ccm->PAD[3] ^ (byte)(uVar6 >> 0x10)" (subscript_expression "ccm->PAD[3]" (field_expression "ccm->PAD" identifier -> field_identifier) [ number_literal ]) = (binary_expression "ccm->PAD[3] ^ (byte)(uVar6 >> 0x10)" (subscript_expression "ccm->PAD[3]" (field_expression "ccm->PAD" identifier -> field_identifier) [ number_literal ]) ^ (call_expression "(byte)(uVar6 >> 0x10)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "(uVar6 >> 0x10)" ( (binary_expression "uVar6 >> 0x10" identifier >> number_literal) ))))) ;) (expression_statement "ccm->PAD[4] = ccm->PAD[4] ^ bVar2;" (assignment_expression "ccm->PAD[4] = ccm->PAD[4] ^ bVar2" (subscript_expression "ccm->PAD[4]" (field_expression "ccm->PAD" identifier -> field_identifier) [ number_literal ]) = (binary_expression "ccm->PAD[4] ^ bVar2" (subscript_expression "ccm->PAD[4]" (field_expression "ccm->PAD" identifier -> field_identifier) [ number_literal ]) ^ identifier)) ;) (expression_statement "ccm->x = 6;" (assignment_expression "ccm->x = 6" (field_expression "ccm->x" identifier -> field_identifier) = number_literal) ;) (expression_statement "ccm->PAD[5] = ccm->PAD[5] ^ (byte)uVar6;" (assignment_expression "ccm->PAD[5] = ccm->PAD[5] ^ (byte)uVar6" (subscript_expression "ccm->PAD[5]" (field_expression "ccm->PAD" identifier -> field_identifier) [ number_literal ]) = (binary_expression "ccm->PAD[5] ^ (byte)uVar6" (subscript_expression "ccm->PAD[5]" (field_expression "ccm->PAD" identifier -> field_identifier) [ number_literal ]) ^ (cast_expression "(byte)uVar6" ( (type_descriptor "byte" type_identifier) ) identifier))) ;) }))) })) (expression_statement "uVar6 = ccm->L;" (assignment_expression "uVar6 = ccm->L" identifier = (field_expression "ccm->L" identifier -> field_identifier)) ;) (expression_statement "ccm->ctr[0] = (char)uVar6 + 0xff;" (assignment_expression "ccm->ctr[0] = (char)uVar6 + 0xff" (subscript_expression "ccm->ctr[0]" (field_expression "ccm->ctr" identifier -> field_identifier) [ number_literal ]) = (binary_expression "(char)uVar6 + 0xff" (cast_expression "(char)uVar6" ( (type_descriptor "char" primitive_type) ) identifier) + number_literal)) ;) (if_statement "if (uVar6 == 0xf) {\n    lVar5 = 3;\n    ccm->ctr[1] = '\0';\n    ccm->ctr[2] = '\0';\n  }\n  else {\n    ccm->ctr[1] = *nonce;\n    if (((((uVar6 != 0xe) && (ccm->ctr[2] = nonce[1], uVar6 != 0xd)) &&\n         ((ccm->ctr[3] = nonce[2], uVar6 != 0xc &&\n          ((((ccm->ctr[4] = nonce[3], uVar6 != 0xb && (ccm->ctr[5] = nonce[4], uVar6 != 10)) &&\n            (ccm->ctr[6] = nonce[5], uVar6 != 9)) &&\n           ((ccm->ctr[7] = nonce[6], uVar6 != 8 && (ccm->ctr[8] = nonce[7], uVar6 != 7)))))))) &&\n        (ccm->ctr[9] = nonce[8], uVar6 != 6)) &&\n       (((ccm->ctr[10] = nonce[9], uVar6 != 5 && (ccm->ctr[0xb] = nonce[10], uVar6 != 4)) &&\n        ((ccm->ctr[0xc] = nonce[0xb], uVar6 != 3 &&\n         ((ccm->ctr[0xd] = nonce[0xc], uVar6 != 2 && (ccm->ctr[0xe] = nonce[0xd], uVar6 != 1))))))))\n    {\n      ccm->ctr[0xf] = nonce[0xe];\n    }\n    if (0xf < -uVar6 + 0x10) goto LAB_001331f8;\n    *(undefined1 *)((long)ccm + -uVar6 + 0x1100) = 0;\n    if (-uVar6 == -1) goto LAB_001331f8;\n    *(undefined1 *)((long)ccm + -uVar6 + 0x1101) = 0;\n    lVar5 = 0x12 - uVar6;\n    if (lVar5 == 0x10) goto LAB_001331f8;\n  }" if (parenthesized_expression "(uVar6 == 0xf)" ( (binary_expression "uVar6 == 0xf" identifier == number_literal) )) (compound_statement "{\n    lVar5 = 3;\n    ccm->ctr[1] = '\0';\n    ccm->ctr[2] = '\0';\n  }" { (expression_statement "lVar5 = 3;" (assignment_expression "lVar5 = 3" identifier = number_literal) ;) (expression_statement "ccm->ctr[1] = '\0';" (assignment_expression "ccm->ctr[1] = '\0'" (subscript_expression "ccm->ctr[1]" (field_expression "ccm->ctr" identifier -> field_identifier) [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "ccm->ctr[2] = '\0';" (assignment_expression "ccm->ctr[2] = '\0'" (subscript_expression "ccm->ctr[2]" (field_expression "ccm->ctr" identifier -> field_identifier) [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) }) (else_clause "else {\n    ccm->ctr[1] = *nonce;\n    if (((((uVar6 != 0xe) && (ccm->ctr[2] = nonce[1], uVar6 != 0xd)) &&\n         ((ccm->ctr[3] = nonce[2], uVar6 != 0xc &&\n          ((((ccm->ctr[4] = nonce[3], uVar6 != 0xb && (ccm->ctr[5] = nonce[4], uVar6 != 10)) &&\n            (ccm->ctr[6] = nonce[5], uVar6 != 9)) &&\n           ((ccm->ctr[7] = nonce[6], uVar6 != 8 && (ccm->ctr[8] = nonce[7], uVar6 != 7)))))))) &&\n        (ccm->ctr[9] = nonce[8], uVar6 != 6)) &&\n       (((ccm->ctr[10] = nonce[9], uVar6 != 5 && (ccm->ctr[0xb] = nonce[10], uVar6 != 4)) &&\n        ((ccm->ctr[0xc] = nonce[0xb], uVar6 != 3 &&\n         ((ccm->ctr[0xd] = nonce[0xc], uVar6 != 2 && (ccm->ctr[0xe] = nonce[0xd], uVar6 != 1))))))))\n    {\n      ccm->ctr[0xf] = nonce[0xe];\n    }\n    if (0xf < -uVar6 + 0x10) goto LAB_001331f8;\n    *(undefined1 *)((long)ccm + -uVar6 + 0x1100) = 0;\n    if (-uVar6 == -1) goto LAB_001331f8;\n    *(undefined1 *)((long)ccm + -uVar6 + 0x1101) = 0;\n    lVar5 = 0x12 - uVar6;\n    if (lVar5 == 0x10) goto LAB_001331f8;\n  }" else (compound_statement "{\n    ccm->ctr[1] = *nonce;\n    if (((((uVar6 != 0xe) && (ccm->ctr[2] = nonce[1], uVar6 != 0xd)) &&\n         ((ccm->ctr[3] = nonce[2], uVar6 != 0xc &&\n          ((((ccm->ctr[4] = nonce[3], uVar6 != 0xb && (ccm->ctr[5] = nonce[4], uVar6 != 10)) &&\n            (ccm->ctr[6] = nonce[5], uVar6 != 9)) &&\n           ((ccm->ctr[7] = nonce[6], uVar6 != 8 && (ccm->ctr[8] = nonce[7], uVar6 != 7)))))))) &&\n        (ccm->ctr[9] = nonce[8], uVar6 != 6)) &&\n       (((ccm->ctr[10] = nonce[9], uVar6 != 5 && (ccm->ctr[0xb] = nonce[10], uVar6 != 4)) &&\n        ((ccm->ctr[0xc] = nonce[0xb], uVar6 != 3 &&\n         ((ccm->ctr[0xd] = nonce[0xc], uVar6 != 2 && (ccm->ctr[0xe] = nonce[0xd], uVar6 != 1))))))))\n    {\n      ccm->ctr[0xf] = nonce[0xe];\n    }\n    if (0xf < -uVar6 + 0x10) goto LAB_001331f8;\n    *(undefined1 *)((long)ccm + -uVar6 + 0x1100) = 0;\n    if (-uVar6 == -1) goto LAB_001331f8;\n    *(undefined1 *)((long)ccm + -uVar6 + 0x1101) = 0;\n    lVar5 = 0x12 - uVar6;\n    if (lVar5 == 0x10) goto LAB_001331f8;\n  }" { (expression_statement "ccm->ctr[1] = *nonce;" (assignment_expression "ccm->ctr[1] = *nonce" (subscript_expression "ccm->ctr[1]" (field_expression "ccm->ctr" identifier -> field_identifier) [ number_literal ]) = (pointer_expression "*nonce" * identifier)) ;) (if_statement "if (((((uVar6 != 0xe) && (ccm->ctr[2] = nonce[1], uVar6 != 0xd)) &&\n         ((ccm->ctr[3] = nonce[2], uVar6 != 0xc &&\n          ((((ccm->ctr[4] = nonce[3], uVar6 != 0xb && (ccm->ctr[5] = nonce[4], uVar6 != 10)) &&\n            (ccm->ctr[6] = nonce[5], uVar6 != 9)) &&\n           ((ccm->ctr[7] = nonce[6], uVar6 != 8 && (ccm->ctr[8] = nonce[7], uVar6 != 7)))))))) &&\n        (ccm->ctr[9] = nonce[8], uVar6 != 6)) &&\n       (((ccm->ctr[10] = nonce[9], uVar6 != 5 && (ccm->ctr[0xb] = nonce[10], uVar6 != 4)) &&\n        ((ccm->ctr[0xc] = nonce[0xb], uVar6 != 3 &&\n         ((ccm->ctr[0xd] = nonce[0xc], uVar6 != 2 && (ccm->ctr[0xe] = nonce[0xd], uVar6 != 1))))))))\n    {\n      ccm->ctr[0xf] = nonce[0xe];\n    }" if (parenthesized_expression "(((((uVar6 != 0xe) && (ccm->ctr[2] = nonce[1], uVar6 != 0xd)) &&\n         ((ccm->ctr[3] = nonce[2], uVar6 != 0xc &&\n          ((((ccm->ctr[4] = nonce[3], uVar6 != 0xb && (ccm->ctr[5] = nonce[4], uVar6 != 10)) &&\n            (ccm->ctr[6] = nonce[5], uVar6 != 9)) &&\n           ((ccm->ctr[7] = nonce[6], uVar6 != 8 && (ccm->ctr[8] = nonce[7], uVar6 != 7)))))))) &&\n        (ccm->ctr[9] = nonce[8], uVar6 != 6)) &&\n       (((ccm->ctr[10] = nonce[9], uVar6 != 5 && (ccm->ctr[0xb] = nonce[10], uVar6 != 4)) &&\n        ((ccm->ctr[0xc] = nonce[0xb], uVar6 != 3 &&\n         ((ccm->ctr[0xd] = nonce[0xc], uVar6 != 2 && (ccm->ctr[0xe] = nonce[0xd], uVar6 != 1))))))))" ( (binary_expression "((((uVar6 != 0xe) && (ccm->ctr[2] = nonce[1], uVar6 != 0xd)) &&\n         ((ccm->ctr[3] = nonce[2], uVar6 != 0xc &&\n          ((((ccm->ctr[4] = nonce[3], uVar6 != 0xb && (ccm->ctr[5] = nonce[4], uVar6 != 10)) &&\n            (ccm->ctr[6] = nonce[5], uVar6 != 9)) &&\n           ((ccm->ctr[7] = nonce[6], uVar6 != 8 && (ccm->ctr[8] = nonce[7], uVar6 != 7)))))))) &&\n        (ccm->ctr[9] = nonce[8], uVar6 != 6)) &&\n       (((ccm->ctr[10] = nonce[9], uVar6 != 5 && (ccm->ctr[0xb] = nonce[10], uVar6 != 4)) &&\n        ((ccm->ctr[0xc] = nonce[0xb], uVar6 != 3 &&\n         ((ccm->ctr[0xd] = nonce[0xc], uVar6 != 2 && (ccm->ctr[0xe] = nonce[0xd], uVar6 != 1)))))))" (parenthesized_expression "((((uVar6 != 0xe) && (ccm->ctr[2] = nonce[1], uVar6 != 0xd)) &&\n         ((ccm->ctr[3] = nonce[2], uVar6 != 0xc &&\n          ((((ccm->ctr[4] = nonce[3], uVar6 != 0xb && (ccm->ctr[5] = nonce[4], uVar6 != 10)) &&\n            (ccm->ctr[6] = nonce[5], uVar6 != 9)) &&\n           ((ccm->ctr[7] = nonce[6], uVar6 != 8 && (ccm->ctr[8] = nonce[7], uVar6 != 7)))))))) &&\n        (ccm->ctr[9] = nonce[8], uVar6 != 6))" ( (binary_expression "(((uVar6 != 0xe) && (ccm->ctr[2] = nonce[1], uVar6 != 0xd)) &&\n         ((ccm->ctr[3] = nonce[2], uVar6 != 0xc &&\n          ((((ccm->ctr[4] = nonce[3], uVar6 != 0xb && (ccm->ctr[5] = nonce[4], uVar6 != 10)) &&\n            (ccm->ctr[6] = nonce[5], uVar6 != 9)) &&\n           ((ccm->ctr[7] = nonce[6], uVar6 != 8 && (ccm->ctr[8] = nonce[7], uVar6 != 7)))))))) &&\n        (ccm->ctr[9] = nonce[8], uVar6 != 6)" (parenthesized_expression "(((uVar6 != 0xe) && (ccm->ctr[2] = nonce[1], uVar6 != 0xd)) &&\n         ((ccm->ctr[3] = nonce[2], uVar6 != 0xc &&\n          ((((ccm->ctr[4] = nonce[3], uVar6 != 0xb && (ccm->ctr[5] = nonce[4], uVar6 != 10)) &&\n            (ccm->ctr[6] = nonce[5], uVar6 != 9)) &&\n           ((ccm->ctr[7] = nonce[6], uVar6 != 8 && (ccm->ctr[8] = nonce[7], uVar6 != 7))))))))" ( (binary_expression "((uVar6 != 0xe) && (ccm->ctr[2] = nonce[1], uVar6 != 0xd)) &&\n         ((ccm->ctr[3] = nonce[2], uVar6 != 0xc &&\n          ((((ccm->ctr[4] = nonce[3], uVar6 != 0xb && (ccm->ctr[5] = nonce[4], uVar6 != 10)) &&\n            (ccm->ctr[6] = nonce[5], uVar6 != 9)) &&\n           ((ccm->ctr[7] = nonce[6], uVar6 != 8 && (ccm->ctr[8] = nonce[7], uVar6 != 7)))))))" (parenthesized_expression "((uVar6 != 0xe) && (ccm->ctr[2] = nonce[1], uVar6 != 0xd))" ( (binary_expression "(uVar6 != 0xe) && (ccm->ctr[2] = nonce[1], uVar6 != 0xd)" (parenthesized_expression "(uVar6 != 0xe)" ( (binary_expression "uVar6 != 0xe" identifier != number_literal) )) && (parenthesized_expression "(ccm->ctr[2] = nonce[1], uVar6 != 0xd)" ( (comma_expression "ccm->ctr[2] = nonce[1], uVar6 != 0xd" (assignment_expression "ccm->ctr[2] = nonce[1]" (subscript_expression "ccm->ctr[2]" (field_expression "ccm->ctr" identifier -> field_identifier) [ number_literal ]) = (subscript_expression "nonce[1]" identifier [ number_literal ])) , (binary_expression "uVar6 != 0xd" identifier != number_literal)) ))) )) && (parenthesized_expression "((ccm->ctr[3] = nonce[2], uVar6 != 0xc &&\n          ((((ccm->ctr[4] = nonce[3], uVar6 != 0xb && (ccm->ctr[5] = nonce[4], uVar6 != 10)) &&\n            (ccm->ctr[6] = nonce[5], uVar6 != 9)) &&\n           ((ccm->ctr[7] = nonce[6], uVar6 != 8 && (ccm->ctr[8] = nonce[7], uVar6 != 7)))))))" ( (parenthesized_expression "(ccm->ctr[3] = nonce[2], uVar6 != 0xc &&\n          ((((ccm->ctr[4] = nonce[3], uVar6 != 0xb && (ccm->ctr[5] = nonce[4], uVar6 != 10)) &&\n            (ccm->ctr[6] = nonce[5], uVar6 != 9)) &&\n           ((ccm->ctr[7] = nonce[6], uVar6 != 8 && (ccm->ctr[8] = nonce[7], uVar6 != 7))))))" ( (comma_expression "ccm->ctr[3] = nonce[2], uVar6 != 0xc &&\n          ((((ccm->ctr[4] = nonce[3], uVar6 != 0xb && (ccm->ctr[5] = nonce[4], uVar6 != 10)) &&\n            (ccm->ctr[6] = nonce[5], uVar6 != 9)) &&\n           ((ccm->ctr[7] = nonce[6], uVar6 != 8 && (ccm->ctr[8] = nonce[7], uVar6 != 7)))))" (assignment_expression "ccm->ctr[3] = nonce[2]" (subscript_expression "ccm->ctr[3]" (field_expression "ccm->ctr" identifier -> field_identifier) [ number_literal ]) = (subscript_expression "nonce[2]" identifier [ number_literal ])) , (binary_expression "uVar6 != 0xc &&\n          ((((ccm->ctr[4] = nonce[3], uVar6 != 0xb && (ccm->ctr[5] = nonce[4], uVar6 != 10)) &&\n            (ccm->ctr[6] = nonce[5], uVar6 != 9)) &&\n           ((ccm->ctr[7] = nonce[6], uVar6 != 8 && (ccm->ctr[8] = nonce[7], uVar6 != 7)))))" (binary_expression "uVar6 != 0xc" identifier != number_literal) && (parenthesized_expression "((((ccm->ctr[4] = nonce[3], uVar6 != 0xb && (ccm->ctr[5] = nonce[4], uVar6 != 10)) &&\n            (ccm->ctr[6] = nonce[5], uVar6 != 9)) &&\n           ((ccm->ctr[7] = nonce[6], uVar6 != 8 && (ccm->ctr[8] = nonce[7], uVar6 != 7)))))" ( (parenthesized_expression "(((ccm->ctr[4] = nonce[3], uVar6 != 0xb && (ccm->ctr[5] = nonce[4], uVar6 != 10)) &&\n            (ccm->ctr[6] = nonce[5], uVar6 != 9)) &&\n           ((ccm->ctr[7] = nonce[6], uVar6 != 8 && (ccm->ctr[8] = nonce[7], uVar6 != 7))))" ( (binary_expression "((ccm->ctr[4] = nonce[3], uVar6 != 0xb && (ccm->ctr[5] = nonce[4], uVar6 != 10)) &&\n            (ccm->ctr[6] = nonce[5], uVar6 != 9)) &&\n           ((ccm->ctr[7] = nonce[6], uVar6 != 8 && (ccm->ctr[8] = nonce[7], uVar6 != 7)))" (parenthesized_expression "((ccm->ctr[4] = nonce[3], uVar6 != 0xb && (ccm->ctr[5] = nonce[4], uVar6 != 10)) &&\n            (ccm->ctr[6] = nonce[5], uVar6 != 9))" ( (binary_expression "(ccm->ctr[4] = nonce[3], uVar6 != 0xb && (ccm->ctr[5] = nonce[4], uVar6 != 10)) &&\n            (ccm->ctr[6] = nonce[5], uVar6 != 9)" (parenthesized_expression "(ccm->ctr[4] = nonce[3], uVar6 != 0xb && (ccm->ctr[5] = nonce[4], uVar6 != 10))" ( (comma_expression "ccm->ctr[4] = nonce[3], uVar6 != 0xb && (ccm->ctr[5] = nonce[4], uVar6 != 10)" (assignment_expression "ccm->ctr[4] = nonce[3]" (subscript_expression "ccm->ctr[4]" (field_expression "ccm->ctr" identifier -> field_identifier) [ number_literal ]) = (subscript_expression "nonce[3]" identifier [ number_literal ])) , (binary_expression "uVar6 != 0xb && (ccm->ctr[5] = nonce[4], uVar6 != 10)" (binary_expression "uVar6 != 0xb" identifier != number_literal) && (parenthesized_expression "(ccm->ctr[5] = nonce[4], uVar6 != 10)" ( (comma_expression "ccm->ctr[5] = nonce[4], uVar6 != 10" (assignment_expression "ccm->ctr[5] = nonce[4]" (subscript_expression "ccm->ctr[5]" (field_expression "ccm->ctr" identifier -> field_identifier) [ number_literal ]) = (subscript_expression "nonce[4]" identifier [ number_literal ])) , (binary_expression "uVar6 != 10" identifier != number_literal)) )))) )) && (parenthesized_expression "(ccm->ctr[6] = nonce[5], uVar6 != 9)" ( (comma_expression "ccm->ctr[6] = nonce[5], uVar6 != 9" (assignment_expression "ccm->ctr[6] = nonce[5]" (subscript_expression "ccm->ctr[6]" (field_expression "ccm->ctr" identifier -> field_identifier) [ number_literal ]) = (subscript_expression "nonce[5]" identifier [ number_literal ])) , (binary_expression "uVar6 != 9" identifier != number_literal)) ))) )) && (parenthesized_expression "((ccm->ctr[7] = nonce[6], uVar6 != 8 && (ccm->ctr[8] = nonce[7], uVar6 != 7)))" ( (parenthesized_expression "(ccm->ctr[7] = nonce[6], uVar6 != 8 && (ccm->ctr[8] = nonce[7], uVar6 != 7))" ( (comma_expression "ccm->ctr[7] = nonce[6], uVar6 != 8 && (ccm->ctr[8] = nonce[7], uVar6 != 7)" (assignment_expression "ccm->ctr[7] = nonce[6]" (subscript_expression "ccm->ctr[7]" (field_expression "ccm->ctr" identifier -> field_identifier) [ number_literal ]) = (subscript_expression "nonce[6]" identifier [ number_literal ])) , (binary_expression "uVar6 != 8 && (ccm->ctr[8] = nonce[7], uVar6 != 7)" (binary_expression "uVar6 != 8" identifier != number_literal) && (parenthesized_expression "(ccm->ctr[8] = nonce[7], uVar6 != 7)" ( (comma_expression "ccm->ctr[8] = nonce[7], uVar6 != 7" (assignment_expression "ccm->ctr[8] = nonce[7]" (subscript_expression "ccm->ctr[8]" (field_expression "ccm->ctr" identifier -> field_identifier) [ number_literal ]) = (subscript_expression "nonce[7]" identifier [ number_literal ])) , (binary_expression "uVar6 != 7" identifier != number_literal)) )))) )) ))) )) )))) )) ))) )) && (parenthesized_expression "(ccm->ctr[9] = nonce[8], uVar6 != 6)" ( (comma_expression "ccm->ctr[9] = nonce[8], uVar6 != 6" (assignment_expression "ccm->ctr[9] = nonce[8]" (subscript_expression "ccm->ctr[9]" (field_expression "ccm->ctr" identifier -> field_identifier) [ number_literal ]) = (subscript_expression "nonce[8]" identifier [ number_literal ])) , (binary_expression "uVar6 != 6" identifier != number_literal)) ))) )) && (parenthesized_expression "(((ccm->ctr[10] = nonce[9], uVar6 != 5 && (ccm->ctr[0xb] = nonce[10], uVar6 != 4)) &&\n        ((ccm->ctr[0xc] = nonce[0xb], uVar6 != 3 &&\n         ((ccm->ctr[0xd] = nonce[0xc], uVar6 != 2 && (ccm->ctr[0xe] = nonce[0xd], uVar6 != 1)))))))" ( (parenthesized_expression "((ccm->ctr[10] = nonce[9], uVar6 != 5 && (ccm->ctr[0xb] = nonce[10], uVar6 != 4)) &&\n        ((ccm->ctr[0xc] = nonce[0xb], uVar6 != 3 &&\n         ((ccm->ctr[0xd] = nonce[0xc], uVar6 != 2 && (ccm->ctr[0xe] = nonce[0xd], uVar6 != 1))))))" ( (binary_expression "(ccm->ctr[10] = nonce[9], uVar6 != 5 && (ccm->ctr[0xb] = nonce[10], uVar6 != 4)) &&\n        ((ccm->ctr[0xc] = nonce[0xb], uVar6 != 3 &&\n         ((ccm->ctr[0xd] = nonce[0xc], uVar6 != 2 && (ccm->ctr[0xe] = nonce[0xd], uVar6 != 1)))))" (parenthesized_expression "(ccm->ctr[10] = nonce[9], uVar6 != 5 && (ccm->ctr[0xb] = nonce[10], uVar6 != 4))" ( (comma_expression "ccm->ctr[10] = nonce[9], uVar6 != 5 && (ccm->ctr[0xb] = nonce[10], uVar6 != 4)" (assignment_expression "ccm->ctr[10] = nonce[9]" (subscript_expression "ccm->ctr[10]" (field_expression "ccm->ctr" identifier -> field_identifier) [ number_literal ]) = (subscript_expression "nonce[9]" identifier [ number_literal ])) , (binary_expression "uVar6 != 5 && (ccm->ctr[0xb] = nonce[10], uVar6 != 4)" (binary_expression "uVar6 != 5" identifier != number_literal) && (parenthesized_expression "(ccm->ctr[0xb] = nonce[10], uVar6 != 4)" ( (comma_expression "ccm->ctr[0xb] = nonce[10], uVar6 != 4" (assignment_expression "ccm->ctr[0xb] = nonce[10]" (subscript_expression "ccm->ctr[0xb]" (field_expression "ccm->ctr" identifier -> field_identifier) [ number_literal ]) = (subscript_expression "nonce[10]" identifier [ number_literal ])) , (binary_expression "uVar6 != 4" identifier != number_literal)) )))) )) && (parenthesized_expression "((ccm->ctr[0xc] = nonce[0xb], uVar6 != 3 &&\n         ((ccm->ctr[0xd] = nonce[0xc], uVar6 != 2 && (ccm->ctr[0xe] = nonce[0xd], uVar6 != 1)))))" ( (parenthesized_expression "(ccm->ctr[0xc] = nonce[0xb], uVar6 != 3 &&\n         ((ccm->ctr[0xd] = nonce[0xc], uVar6 != 2 && (ccm->ctr[0xe] = nonce[0xd], uVar6 != 1))))" ( (comma_expression "ccm->ctr[0xc] = nonce[0xb], uVar6 != 3 &&\n         ((ccm->ctr[0xd] = nonce[0xc], uVar6 != 2 && (ccm->ctr[0xe] = nonce[0xd], uVar6 != 1)))" (assignment_expression "ccm->ctr[0xc] = nonce[0xb]" (subscript_expression "ccm->ctr[0xc]" (field_expression "ccm->ctr" identifier -> field_identifier) [ number_literal ]) = (subscript_expression "nonce[0xb]" identifier [ number_literal ])) , (binary_expression "uVar6 != 3 &&\n         ((ccm->ctr[0xd] = nonce[0xc], uVar6 != 2 && (ccm->ctr[0xe] = nonce[0xd], uVar6 != 1)))" (binary_expression "uVar6 != 3" identifier != number_literal) && (parenthesized_expression "((ccm->ctr[0xd] = nonce[0xc], uVar6 != 2 && (ccm->ctr[0xe] = nonce[0xd], uVar6 != 1)))" ( (parenthesized_expression "(ccm->ctr[0xd] = nonce[0xc], uVar6 != 2 && (ccm->ctr[0xe] = nonce[0xd], uVar6 != 1))" ( (comma_expression "ccm->ctr[0xd] = nonce[0xc], uVar6 != 2 && (ccm->ctr[0xe] = nonce[0xd], uVar6 != 1)" (assignment_expression "ccm->ctr[0xd] = nonce[0xc]" (subscript_expression "ccm->ctr[0xd]" (field_expression "ccm->ctr" identifier -> field_identifier) [ number_literal ]) = (subscript_expression "nonce[0xc]" identifier [ number_literal ])) , (binary_expression "uVar6 != 2 && (ccm->ctr[0xe] = nonce[0xd], uVar6 != 1)" (binary_expression "uVar6 != 2" identifier != number_literal) && (parenthesized_expression "(ccm->ctr[0xe] = nonce[0xd], uVar6 != 1)" ( (comma_expression "ccm->ctr[0xe] = nonce[0xd], uVar6 != 1" (assignment_expression "ccm->ctr[0xe] = nonce[0xd]" (subscript_expression "ccm->ctr[0xe]" (field_expression "ccm->ctr" identifier -> field_identifier) [ number_literal ]) = (subscript_expression "nonce[0xd]" identifier [ number_literal ])) , (binary_expression "uVar6 != 1" identifier != number_literal)) )))) )) )))) )) ))) )) ))) )) (compound_statement "{\n      ccm->ctr[0xf] = nonce[0xe];\n    }" { (expression_statement "ccm->ctr[0xf] = nonce[0xe];" (assignment_expression "ccm->ctr[0xf] = nonce[0xe]" (subscript_expression "ccm->ctr[0xf]" (field_expression "ccm->ctr" identifier -> field_identifier) [ number_literal ]) = (subscript_expression "nonce[0xe]" identifier [ number_literal ])) ;) })) (if_statement "if (0xf < -uVar6 + 0x10) goto LAB_001331f8;" if (parenthesized_expression "(0xf < -uVar6 + 0x10)" ( (binary_expression "0xf < -uVar6 + 0x10" number_literal < (binary_expression "-uVar6 + 0x10" (unary_expression "-uVar6" - identifier) + number_literal)) )) (goto_statement "goto LAB_001331f8;" goto statement_identifier ;)) (expression_statement "*(undefined1 *)((long)ccm + -uVar6 + 0x1100) = 0;" (assignment_expression "*(undefined1 *)((long)ccm + -uVar6 + 0x1100) = 0" (pointer_expression "*(undefined1 *)((long)ccm + -uVar6 + 0x1100)" * (cast_expression "(undefined1 *)((long)ccm + -uVar6 + 0x1100)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)ccm + -uVar6 + 0x1100)" ( (binary_expression "(long)ccm + -uVar6 + 0x1100" (binary_expression "(long)ccm + -uVar6" (cast_expression "(long)ccm" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + (unary_expression "-uVar6" - identifier)) + number_literal) )))) = number_literal) ;) (if_statement "if (-uVar6 == -1) goto LAB_001331f8;" if (parenthesized_expression "(-uVar6 == -1)" ( (binary_expression "-uVar6 == -1" (unary_expression "-uVar6" - identifier) == number_literal) )) (goto_statement "goto LAB_001331f8;" goto statement_identifier ;)) (expression_statement "*(undefined1 *)((long)ccm + -uVar6 + 0x1101) = 0;" (assignment_expression "*(undefined1 *)((long)ccm + -uVar6 + 0x1101) = 0" (pointer_expression "*(undefined1 *)((long)ccm + -uVar6 + 0x1101)" * (cast_expression "(undefined1 *)((long)ccm + -uVar6 + 0x1101)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)ccm + -uVar6 + 0x1101)" ( (binary_expression "(long)ccm + -uVar6 + 0x1101" (binary_expression "(long)ccm + -uVar6" (cast_expression "(long)ccm" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + (unary_expression "-uVar6" - identifier)) + number_literal) )))) = number_literal) ;) (expression_statement "lVar5 = 0x12 - uVar6;" (assignment_expression "lVar5 = 0x12 - uVar6" identifier = (binary_expression "0x12 - uVar6" number_literal - identifier)) ;) (if_statement "if (lVar5 == 0x10) goto LAB_001331f8;" if (parenthesized_expression "(lVar5 == 0x10)" ( (binary_expression "lVar5 == 0x10" identifier == number_literal) )) (goto_statement "goto LAB_001331f8;" goto statement_identifier ;)) }))) (expression_statement "ccm->ctr[lVar5] = '\0';" (assignment_expression "ccm->ctr[lVar5] = '\0'" (subscript_expression "ccm->ctr[lVar5]" (field_expression "ccm->ctr" identifier -> field_identifier) [ identifier ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (if_statement "if (((((lVar5 != 0xf) && (ccm->ctr[lVar5 + 1] = '\0', lVar5 != 0xe)) &&\n       (ccm->ctr[lVar5 + 2] = '\0', lVar5 != 0xd)) &&\n      (((ccm->ctr[lVar5 + 3] = '\0', lVar5 != 0xc && (ccm->ctr[lVar5 + 4] = '\0', lVar5 != 0xb)) &&\n       ((ccm->ctr[lVar5 + 5] = '\0', lVar5 != 10 &&\n        ((ccm->ctr[lVar5 + 6] = '\0', lVar5 != 9 && (ccm->ctr[lVar5 + 7] = '\0', lVar5 != 8))))))))\n     && ((ccm->ctr[lVar5 + 8] = '\0', lVar5 != 7 &&\n         (((ccm->ctr[lVar5 + 9] = '\0', lVar5 != 6 && (ccm->ctr[lVar5 + 10] = '\0', lVar5 != 5)) &&\n          (ccm->ctr[lVar5 + 0xb] = '\0', lVar5 == 3)))))) {\n    ccm->ctr[0xf] = '\0';\n  }" if (parenthesized_expression "(((((lVar5 != 0xf) && (ccm->ctr[lVar5 + 1] = '\0', lVar5 != 0xe)) &&\n       (ccm->ctr[lVar5 + 2] = '\0', lVar5 != 0xd)) &&\n      (((ccm->ctr[lVar5 + 3] = '\0', lVar5 != 0xc && (ccm->ctr[lVar5 + 4] = '\0', lVar5 != 0xb)) &&\n       ((ccm->ctr[lVar5 + 5] = '\0', lVar5 != 10 &&\n        ((ccm->ctr[lVar5 + 6] = '\0', lVar5 != 9 && (ccm->ctr[lVar5 + 7] = '\0', lVar5 != 8))))))))\n     && ((ccm->ctr[lVar5 + 8] = '\0', lVar5 != 7 &&\n         (((ccm->ctr[lVar5 + 9] = '\0', lVar5 != 6 && (ccm->ctr[lVar5 + 10] = '\0', lVar5 != 5)) &&\n          (ccm->ctr[lVar5 + 0xb] = '\0', lVar5 == 3))))))" ( (binary_expression "((((lVar5 != 0xf) && (ccm->ctr[lVar5 + 1] = '\0', lVar5 != 0xe)) &&\n       (ccm->ctr[lVar5 + 2] = '\0', lVar5 != 0xd)) &&\n      (((ccm->ctr[lVar5 + 3] = '\0', lVar5 != 0xc && (ccm->ctr[lVar5 + 4] = '\0', lVar5 != 0xb)) &&\n       ((ccm->ctr[lVar5 + 5] = '\0', lVar5 != 10 &&\n        ((ccm->ctr[lVar5 + 6] = '\0', lVar5 != 9 && (ccm->ctr[lVar5 + 7] = '\0', lVar5 != 8))))))))\n     && ((ccm->ctr[lVar5 + 8] = '\0', lVar5 != 7 &&\n         (((ccm->ctr[lVar5 + 9] = '\0', lVar5 != 6 && (ccm->ctr[lVar5 + 10] = '\0', lVar5 != 5)) &&\n          (ccm->ctr[lVar5 + 0xb] = '\0', lVar5 == 3)))))" (parenthesized_expression "((((lVar5 != 0xf) && (ccm->ctr[lVar5 + 1] = '\0', lVar5 != 0xe)) &&\n       (ccm->ctr[lVar5 + 2] = '\0', lVar5 != 0xd)) &&\n      (((ccm->ctr[lVar5 + 3] = '\0', lVar5 != 0xc && (ccm->ctr[lVar5 + 4] = '\0', lVar5 != 0xb)) &&\n       ((ccm->ctr[lVar5 + 5] = '\0', lVar5 != 10 &&\n        ((ccm->ctr[lVar5 + 6] = '\0', lVar5 != 9 && (ccm->ctr[lVar5 + 7] = '\0', lVar5 != 8))))))))" ( (binary_expression "(((lVar5 != 0xf) && (ccm->ctr[lVar5 + 1] = '\0', lVar5 != 0xe)) &&\n       (ccm->ctr[lVar5 + 2] = '\0', lVar5 != 0xd)) &&\n      (((ccm->ctr[lVar5 + 3] = '\0', lVar5 != 0xc && (ccm->ctr[lVar5 + 4] = '\0', lVar5 != 0xb)) &&\n       ((ccm->ctr[lVar5 + 5] = '\0', lVar5 != 10 &&\n        ((ccm->ctr[lVar5 + 6] = '\0', lVar5 != 9 && (ccm->ctr[lVar5 + 7] = '\0', lVar5 != 8)))))))" (parenthesized_expression "(((lVar5 != 0xf) && (ccm->ctr[lVar5 + 1] = '\0', lVar5 != 0xe)) &&\n       (ccm->ctr[lVar5 + 2] = '\0', lVar5 != 0xd))" ( (binary_expression "((lVar5 != 0xf) && (ccm->ctr[lVar5 + 1] = '\0', lVar5 != 0xe)) &&\n       (ccm->ctr[lVar5 + 2] = '\0', lVar5 != 0xd)" (parenthesized_expression "((lVar5 != 0xf) && (ccm->ctr[lVar5 + 1] = '\0', lVar5 != 0xe))" ( (binary_expression "(lVar5 != 0xf) && (ccm->ctr[lVar5 + 1] = '\0', lVar5 != 0xe)" (parenthesized_expression "(lVar5 != 0xf)" ( (binary_expression "lVar5 != 0xf" identifier != number_literal) )) && (parenthesized_expression "(ccm->ctr[lVar5 + 1] = '\0', lVar5 != 0xe)" ( (comma_expression "ccm->ctr[lVar5 + 1] = '\0', lVar5 != 0xe" (assignment_expression "ccm->ctr[lVar5 + 1] = '\0'" (subscript_expression "ccm->ctr[lVar5 + 1]" (field_expression "ccm->ctr" identifier -> field_identifier) [ (binary_expression "lVar5 + 1" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "lVar5 != 0xe" identifier != number_literal)) ))) )) && (parenthesized_expression "(ccm->ctr[lVar5 + 2] = '\0', lVar5 != 0xd)" ( (comma_expression "ccm->ctr[lVar5 + 2] = '\0', lVar5 != 0xd" (assignment_expression "ccm->ctr[lVar5 + 2] = '\0'" (subscript_expression "ccm->ctr[lVar5 + 2]" (field_expression "ccm->ctr" identifier -> field_identifier) [ (binary_expression "lVar5 + 2" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "lVar5 != 0xd" identifier != number_literal)) ))) )) && (parenthesized_expression "(((ccm->ctr[lVar5 + 3] = '\0', lVar5 != 0xc && (ccm->ctr[lVar5 + 4] = '\0', lVar5 != 0xb)) &&\n       ((ccm->ctr[lVar5 + 5] = '\0', lVar5 != 10 &&\n        ((ccm->ctr[lVar5 + 6] = '\0', lVar5 != 9 && (ccm->ctr[lVar5 + 7] = '\0', lVar5 != 8)))))))" ( (parenthesized_expression "((ccm->ctr[lVar5 + 3] = '\0', lVar5 != 0xc && (ccm->ctr[lVar5 + 4] = '\0', lVar5 != 0xb)) &&\n       ((ccm->ctr[lVar5 + 5] = '\0', lVar5 != 10 &&\n        ((ccm->ctr[lVar5 + 6] = '\0', lVar5 != 9 && (ccm->ctr[lVar5 + 7] = '\0', lVar5 != 8))))))" ( (binary_expression "(ccm->ctr[lVar5 + 3] = '\0', lVar5 != 0xc && (ccm->ctr[lVar5 + 4] = '\0', lVar5 != 0xb)) &&\n       ((ccm->ctr[lVar5 + 5] = '\0', lVar5 != 10 &&\n        ((ccm->ctr[lVar5 + 6] = '\0', lVar5 != 9 && (ccm->ctr[lVar5 + 7] = '\0', lVar5 != 8)))))" (parenthesized_expression "(ccm->ctr[lVar5 + 3] = '\0', lVar5 != 0xc && (ccm->ctr[lVar5 + 4] = '\0', lVar5 != 0xb))" ( (comma_expression "ccm->ctr[lVar5 + 3] = '\0', lVar5 != 0xc && (ccm->ctr[lVar5 + 4] = '\0', lVar5 != 0xb)" (assignment_expression "ccm->ctr[lVar5 + 3] = '\0'" (subscript_expression "ccm->ctr[lVar5 + 3]" (field_expression "ccm->ctr" identifier -> field_identifier) [ (binary_expression "lVar5 + 3" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "lVar5 != 0xc && (ccm->ctr[lVar5 + 4] = '\0', lVar5 != 0xb)" (binary_expression "lVar5 != 0xc" identifier != number_literal) && (parenthesized_expression "(ccm->ctr[lVar5 + 4] = '\0', lVar5 != 0xb)" ( (comma_expression "ccm->ctr[lVar5 + 4] = '\0', lVar5 != 0xb" (assignment_expression "ccm->ctr[lVar5 + 4] = '\0'" (subscript_expression "ccm->ctr[lVar5 + 4]" (field_expression "ccm->ctr" identifier -> field_identifier) [ (binary_expression "lVar5 + 4" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "lVar5 != 0xb" identifier != number_literal)) )))) )) && (parenthesized_expression "((ccm->ctr[lVar5 + 5] = '\0', lVar5 != 10 &&\n        ((ccm->ctr[lVar5 + 6] = '\0', lVar5 != 9 && (ccm->ctr[lVar5 + 7] = '\0', lVar5 != 8)))))" ( (parenthesized_expression "(ccm->ctr[lVar5 + 5] = '\0', lVar5 != 10 &&\n        ((ccm->ctr[lVar5 + 6] = '\0', lVar5 != 9 && (ccm->ctr[lVar5 + 7] = '\0', lVar5 != 8))))" ( (comma_expression "ccm->ctr[lVar5 + 5] = '\0', lVar5 != 10 &&\n        ((ccm->ctr[lVar5 + 6] = '\0', lVar5 != 9 && (ccm->ctr[lVar5 + 7] = '\0', lVar5 != 8)))" (assignment_expression "ccm->ctr[lVar5 + 5] = '\0'" (subscript_expression "ccm->ctr[lVar5 + 5]" (field_expression "ccm->ctr" identifier -> field_identifier) [ (binary_expression "lVar5 + 5" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "lVar5 != 10 &&\n        ((ccm->ctr[lVar5 + 6] = '\0', lVar5 != 9 && (ccm->ctr[lVar5 + 7] = '\0', lVar5 != 8)))" (binary_expression "lVar5 != 10" identifier != number_literal) && (parenthesized_expression "((ccm->ctr[lVar5 + 6] = '\0', lVar5 != 9 && (ccm->ctr[lVar5 + 7] = '\0', lVar5 != 8)))" ( (parenthesized_expression "(ccm->ctr[lVar5 + 6] = '\0', lVar5 != 9 && (ccm->ctr[lVar5 + 7] = '\0', lVar5 != 8))" ( (comma_expression "ccm->ctr[lVar5 + 6] = '\0', lVar5 != 9 && (ccm->ctr[lVar5 + 7] = '\0', lVar5 != 8)" (assignment_expression "ccm->ctr[lVar5 + 6] = '\0'" (subscript_expression "ccm->ctr[lVar5 + 6]" (field_expression "ccm->ctr" identifier -> field_identifier) [ (binary_expression "lVar5 + 6" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "lVar5 != 9 && (ccm->ctr[lVar5 + 7] = '\0', lVar5 != 8)" (binary_expression "lVar5 != 9" identifier != number_literal) && (parenthesized_expression "(ccm->ctr[lVar5 + 7] = '\0', lVar5 != 8)" ( (comma_expression "ccm->ctr[lVar5 + 7] = '\0', lVar5 != 8" (assignment_expression "ccm->ctr[lVar5 + 7] = '\0'" (subscript_expression "ccm->ctr[lVar5 + 7]" (field_expression "ccm->ctr" identifier -> field_identifier) [ (binary_expression "lVar5 + 7" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "lVar5 != 8" identifier != number_literal)) )))) )) )))) )) ))) )) ))) )) && (parenthesized_expression "((ccm->ctr[lVar5 + 8] = '\0', lVar5 != 7 &&\n         (((ccm->ctr[lVar5 + 9] = '\0', lVar5 != 6 && (ccm->ctr[lVar5 + 10] = '\0', lVar5 != 5)) &&\n          (ccm->ctr[lVar5 + 0xb] = '\0', lVar5 == 3)))))" ( (parenthesized_expression "(ccm->ctr[lVar5 + 8] = '\0', lVar5 != 7 &&\n         (((ccm->ctr[lVar5 + 9] = '\0', lVar5 != 6 && (ccm->ctr[lVar5 + 10] = '\0', lVar5 != 5)) &&\n          (ccm->ctr[lVar5 + 0xb] = '\0', lVar5 == 3))))" ( (comma_expression "ccm->ctr[lVar5 + 8] = '\0', lVar5 != 7 &&\n         (((ccm->ctr[lVar5 + 9] = '\0', lVar5 != 6 && (ccm->ctr[lVar5 + 10] = '\0', lVar5 != 5)) &&\n          (ccm->ctr[lVar5 + 0xb] = '\0', lVar5 == 3)))" (assignment_expression "ccm->ctr[lVar5 + 8] = '\0'" (subscript_expression "ccm->ctr[lVar5 + 8]" (field_expression "ccm->ctr" identifier -> field_identifier) [ (binary_expression "lVar5 + 8" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "lVar5 != 7 &&\n         (((ccm->ctr[lVar5 + 9] = '\0', lVar5 != 6 && (ccm->ctr[lVar5 + 10] = '\0', lVar5 != 5)) &&\n          (ccm->ctr[lVar5 + 0xb] = '\0', lVar5 == 3)))" (binary_expression "lVar5 != 7" identifier != number_literal) && (parenthesized_expression "(((ccm->ctr[lVar5 + 9] = '\0', lVar5 != 6 && (ccm->ctr[lVar5 + 10] = '\0', lVar5 != 5)) &&\n          (ccm->ctr[lVar5 + 0xb] = '\0', lVar5 == 3)))" ( (parenthesized_expression "((ccm->ctr[lVar5 + 9] = '\0', lVar5 != 6 && (ccm->ctr[lVar5 + 10] = '\0', lVar5 != 5)) &&\n          (ccm->ctr[lVar5 + 0xb] = '\0', lVar5 == 3))" ( (binary_expression "(ccm->ctr[lVar5 + 9] = '\0', lVar5 != 6 && (ccm->ctr[lVar5 + 10] = '\0', lVar5 != 5)) &&\n          (ccm->ctr[lVar5 + 0xb] = '\0', lVar5 == 3)" (parenthesized_expression "(ccm->ctr[lVar5 + 9] = '\0', lVar5 != 6 && (ccm->ctr[lVar5 + 10] = '\0', lVar5 != 5))" ( (comma_expression "ccm->ctr[lVar5 + 9] = '\0', lVar5 != 6 && (ccm->ctr[lVar5 + 10] = '\0', lVar5 != 5)" (assignment_expression "ccm->ctr[lVar5 + 9] = '\0'" (subscript_expression "ccm->ctr[lVar5 + 9]" (field_expression "ccm->ctr" identifier -> field_identifier) [ (binary_expression "lVar5 + 9" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "lVar5 != 6 && (ccm->ctr[lVar5 + 10] = '\0', lVar5 != 5)" (binary_expression "lVar5 != 6" identifier != number_literal) && (parenthesized_expression "(ccm->ctr[lVar5 + 10] = '\0', lVar5 != 5)" ( (comma_expression "ccm->ctr[lVar5 + 10] = '\0', lVar5 != 5" (assignment_expression "ccm->ctr[lVar5 + 10] = '\0'" (subscript_expression "ccm->ctr[lVar5 + 10]" (field_expression "ccm->ctr" identifier -> field_identifier) [ (binary_expression "lVar5 + 10" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "lVar5 != 5" identifier != number_literal)) )))) )) && (parenthesized_expression "(ccm->ctr[lVar5 + 0xb] = '\0', lVar5 == 3)" ( (comma_expression "ccm->ctr[lVar5 + 0xb] = '\0', lVar5 == 3" (assignment_expression "ccm->ctr[lVar5 + 0xb] = '\0'" (subscript_expression "ccm->ctr[lVar5 + 0xb]" (field_expression "ccm->ctr" identifier -> field_identifier) [ (binary_expression "lVar5 + 0xb" identifier + number_literal) ]) = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "lVar5 == 3" identifier == number_literal)) ))) )) )))) )) ))) )) (compound_statement "{\n    ccm->ctr[0xf] = '\0';\n  }" { (expression_statement "ccm->ctr[0xf] = '\0';" (assignment_expression "ccm->ctr[0xf] = '\0'" (subscript_expression "ccm->ctr[0xf]" (field_expression "ccm->ctr" identifier -> field_identifier) [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) })) (labeled_statement "LAB_001331f8:\n  ccm->CTRlen = '\x10';" statement_identifier : (expression_statement "ccm->CTRlen = '\x10';" (assignment_expression "ccm->CTRlen = '\x10'" (field_expression "ccm->CTRlen" identifier -> field_identifier) = (char_literal "'\x10'" ' escape_sequence ')) ;)) (return_statement "return 0;" return number_literal ;) })))
(translation_unit "void ccm_add_nonce(long param_1,undefined1 *param_2,ulong param_3)\n\n{\n  ulong uVar1;\n  byte bVar2;\n  int iVar3;\n  ulong uVar4;\n  ulong uVar5;\n  long lVar6;\n  long lVar7;\n  long lVar8;\n  \n  if (param_1 == 0) {\n                    \n    crypt_argchk("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a);\n  }\n  if (param_2 == (undefined1 *)0x0) {\n                    \n    crypt_argchk("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b);\n  }\n  if (0xd < param_3) {\n    param_3 = 0xd;\n  }\n  uVar4 = *(ulong *)(param_1 + 0x10b0);\n  uVar5 = 0xf - param_3;\n  *(ulong *)(param_1 + 0x10d8) = param_3;\n  if (uVar4 < uVar5) {\n    *(ulong *)(param_1 + 0x10b0) = uVar5;\n  }\n  else {\n    uVar1 = param_3 + uVar4;\n    param_3 = 0xf - uVar4;\n    uVar5 = uVar4;\n    if (0xf < uVar1) {\n      *(ulong *)(param_1 + 0x10d8) = param_3;\n    }\n  }\n  lVar7 = *(long *)(param_1 + 0x10b8);\n  *(byte *)(param_1 + 0x10e0) =\n       (*(long *)(param_1 + 0x10c8) != 0) << 6 | (byte)((*(int *)(param_1 + 0x10a4) + -2 >> 1) << 3)\n       | (char)uVar5 - 1U;\n  if (param_3 == 0) {\n    lVar6 = 1;\nLAB_00133225:\n    if (uVar5 < 5) goto LAB_00132d92;\n    *(undefined1 *)(param_1 + 0x10e0 + lVar6) = 0;\n    if ((((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)) &&\n        ((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))))) &&\n       (((*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&\n        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))))))) {\n      *(undefined1 *)(param_1 + 0x10ee + lVar6) = 0;\n    }\n    uVar4 = uVar5 - 4;\n    lVar6 = lVar6 + uVar4;\n  }\n  else {\n    *(undefined1 *)(param_1 + 0x10e1) = *param_2;\n    if ((((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&\n        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)) &&\n       (((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))))) {\n      *(undefined1 *)(param_1 + 0x10ef) = param_2[0xe];\n    }\n    lVar6 = param_3 + 1;\n    if (3 < uVar5) goto LAB_00133225;\n    iVar3 = 8;\n    if ((uVar5 == 3) || (iVar3 = 0x10, uVar5 == 2)) {\n      lVar7 = lVar7 << iVar3;\n    }\n    else {\n      lVar8 = lVar7 << 0x18;\n      lVar7 = 0;\n      if (uVar5 != 0) {\n        lVar7 = lVar8;\n      }\n    }\nLAB_00132d92:\n    uVar4 = 0;\n  }\n  if (((((uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)) &&\n       (*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5)) &&\n      (((*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&\n       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))))))) &&\n     (((*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))) &&\n      ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)))))) {\n    *(undefined1 *)(param_1 + 0x10ed + lVar6) = 0;\n    if (uVar4 + 0xe < uVar5) {\n      *(undefined1 *)(param_1 + lVar6 + 0x10ee) = 0;\n      if (uVar4 + 0xf < uVar5) {\n        *(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0;\n      }\n    }\n  }\n  iVar3 = (**(code **)(PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28))\n                    (param_1 + 0x10e0,param_1 + 0x10e0,param_1);\n  if (iVar3 != 0) {\n    return;\n  }\n  uVar4 = *(ulong *)(param_1 + 0x10c8);\n  *(undefined4 *)(param_1 + 0x10a8) = 0;\n  if (uVar4 != 0) {\n    bVar2 = (byte)(uVar4 >> 8);\n    if (uVar4 < 0xff00) {\n      *(undefined4 *)(param_1 + 0x10a8) = 2;\n      *(byte *)(param_1 + 0x10e0) = *(byte *)(param_1 + 0x10e0) ^ bVar2;\n      *(byte *)(param_1 + 0x10e1) = (byte)uVar4 ^ *(byte *)(param_1 + 0x10e1);\n    }\n    else {\n      *(byte *)(param_1 + 0x10e0) = ~*(byte *)(param_1 + 0x10e0);\n      *(byte *)(param_1 + 0x10e1) = *(byte *)(param_1 + 0x10e1) ^ 0xfe;\n      *(byte *)(param_1 + 0x10e2) = *(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18);\n      *(byte *)(param_1 + 0x10e3) = *(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10);\n      *(byte *)(param_1 + 0x10e4) = *(byte *)(param_1 + 0x10e4) ^ bVar2;\n      *(undefined4 *)(param_1 + 0x10a8) = 6;\n      *(byte *)(param_1 + 0x10e5) = *(byte *)(param_1 + 0x10e5) ^ (byte)uVar4;\n    }\n  }\n  lVar7 = *(long *)(param_1 + 0x10b0);\n  *(char *)(param_1 + 0x10f0) = (char)lVar7 + -1;\n  if (lVar7 == 0xf) {\n    lVar7 = 3;\n    *(undefined2 *)(param_1 + 0x10f1) = 0;\n  }\n  else {\n    *(undefined1 *)(param_1 + 0x10f1) = *param_2;\n    if (((((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&\n        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)) &&\n       (((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))))) {\n      *(undefined1 *)(param_1 + 0x10ff) = param_2[0xe];\n    }\n    if (0xf < 0x10U - lVar7) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x10U - lVar7)) = 0;\n    if (0x11 - lVar7 == 0x10) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x11 - lVar7)) = 0;\n    lVar7 = 0x12 - lVar7;\n    if (lVar7 == 0x10) goto LAB_001331f8;\n  }\n  *(undefined1 *)(param_1 + 0x10f0 + lVar7) = 0;\n  if (((((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)) &&\n       (*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd)) &&\n      (((*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&\n       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))))))) &&\n     ((*(undefined1 *)(param_1 + 0x10f8 + lVar7) = 0, lVar7 != 7 &&\n      (((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)))))) {\n    *(undefined1 *)(param_1 + 0x10ff) = 0;\n  }\nLAB_001331f8:\n  *(undefined1 *)(param_1 + 0x1110) = 0x10;\n  return;\n}\n\n" (function_definition "void ccm_add_nonce(long param_1,undefined1 *param_2,ulong param_3)\n\n{\n  ulong uVar1;\n  byte bVar2;\n  int iVar3;\n  ulong uVar4;\n  ulong uVar5;\n  long lVar6;\n  long lVar7;\n  long lVar8;\n  \n  if (param_1 == 0) {\n                    \n    crypt_argchk("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a);\n  }\n  if (param_2 == (undefined1 *)0x0) {\n                    \n    crypt_argchk("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b);\n  }\n  if (0xd < param_3) {\n    param_3 = 0xd;\n  }\n  uVar4 = *(ulong *)(param_1 + 0x10b0);\n  uVar5 = 0xf - param_3;\n  *(ulong *)(param_1 + 0x10d8) = param_3;\n  if (uVar4 < uVar5) {\n    *(ulong *)(param_1 + 0x10b0) = uVar5;\n  }\n  else {\n    uVar1 = param_3 + uVar4;\n    param_3 = 0xf - uVar4;\n    uVar5 = uVar4;\n    if (0xf < uVar1) {\n      *(ulong *)(param_1 + 0x10d8) = param_3;\n    }\n  }\n  lVar7 = *(long *)(param_1 + 0x10b8);\n  *(byte *)(param_1 + 0x10e0) =\n       (*(long *)(param_1 + 0x10c8) != 0) << 6 | (byte)((*(int *)(param_1 + 0x10a4) + -2 >> 1) << 3)\n       | (char)uVar5 - 1U;\n  if (param_3 == 0) {\n    lVar6 = 1;\nLAB_00133225:\n    if (uVar5 < 5) goto LAB_00132d92;\n    *(undefined1 *)(param_1 + 0x10e0 + lVar6) = 0;\n    if ((((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)) &&\n        ((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))))) &&\n       (((*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&\n        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))))))) {\n      *(undefined1 *)(param_1 + 0x10ee + lVar6) = 0;\n    }\n    uVar4 = uVar5 - 4;\n    lVar6 = lVar6 + uVar4;\n  }\n  else {\n    *(undefined1 *)(param_1 + 0x10e1) = *param_2;\n    if ((((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&\n        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)) &&\n       (((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))))) {\n      *(undefined1 *)(param_1 + 0x10ef) = param_2[0xe];\n    }\n    lVar6 = param_3 + 1;\n    if (3 < uVar5) goto LAB_00133225;\n    iVar3 = 8;\n    if ((uVar5 == 3) || (iVar3 = 0x10, uVar5 == 2)) {\n      lVar7 = lVar7 << iVar3;\n    }\n    else {\n      lVar8 = lVar7 << 0x18;\n      lVar7 = 0;\n      if (uVar5 != 0) {\n        lVar7 = lVar8;\n      }\n    }\nLAB_00132d92:\n    uVar4 = 0;\n  }\n  if (((((uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)) &&\n       (*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5)) &&\n      (((*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&\n       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))))))) &&\n     (((*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))) &&\n      ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)))))) {\n    *(undefined1 *)(param_1 + 0x10ed + lVar6) = 0;\n    if (uVar4 + 0xe < uVar5) {\n      *(undefined1 *)(param_1 + lVar6 + 0x10ee) = 0;\n      if (uVar4 + 0xf < uVar5) {\n        *(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0;\n      }\n    }\n  }\n  iVar3 = (**(code **)(PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28))\n                    (param_1 + 0x10e0,param_1 + 0x10e0,param_1);\n  if (iVar3 != 0) {\n    return;\n  }\n  uVar4 = *(ulong *)(param_1 + 0x10c8);\n  *(undefined4 *)(param_1 + 0x10a8) = 0;\n  if (uVar4 != 0) {\n    bVar2 = (byte)(uVar4 >> 8);\n    if (uVar4 < 0xff00) {\n      *(undefined4 *)(param_1 + 0x10a8) = 2;\n      *(byte *)(param_1 + 0x10e0) = *(byte *)(param_1 + 0x10e0) ^ bVar2;\n      *(byte *)(param_1 + 0x10e1) = (byte)uVar4 ^ *(byte *)(param_1 + 0x10e1);\n    }\n    else {\n      *(byte *)(param_1 + 0x10e0) = ~*(byte *)(param_1 + 0x10e0);\n      *(byte *)(param_1 + 0x10e1) = *(byte *)(param_1 + 0x10e1) ^ 0xfe;\n      *(byte *)(param_1 + 0x10e2) = *(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18);\n      *(byte *)(param_1 + 0x10e3) = *(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10);\n      *(byte *)(param_1 + 0x10e4) = *(byte *)(param_1 + 0x10e4) ^ bVar2;\n      *(undefined4 *)(param_1 + 0x10a8) = 6;\n      *(byte *)(param_1 + 0x10e5) = *(byte *)(param_1 + 0x10e5) ^ (byte)uVar4;\n    }\n  }\n  lVar7 = *(long *)(param_1 + 0x10b0);\n  *(char *)(param_1 + 0x10f0) = (char)lVar7 + -1;\n  if (lVar7 == 0xf) {\n    lVar7 = 3;\n    *(undefined2 *)(param_1 + 0x10f1) = 0;\n  }\n  else {\n    *(undefined1 *)(param_1 + 0x10f1) = *param_2;\n    if (((((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&\n        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)) &&\n       (((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))))) {\n      *(undefined1 *)(param_1 + 0x10ff) = param_2[0xe];\n    }\n    if (0xf < 0x10U - lVar7) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x10U - lVar7)) = 0;\n    if (0x11 - lVar7 == 0x10) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x11 - lVar7)) = 0;\n    lVar7 = 0x12 - lVar7;\n    if (lVar7 == 0x10) goto LAB_001331f8;\n  }\n  *(undefined1 *)(param_1 + 0x10f0 + lVar7) = 0;\n  if (((((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)) &&\n       (*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd)) &&\n      (((*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&\n       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))))))) &&\n     ((*(undefined1 *)(param_1 + 0x10f8 + lVar7) = 0, lVar7 != 7 &&\n      (((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)))))) {\n    *(undefined1 *)(param_1 + 0x10ff) = 0;\n  }\nLAB_001331f8:\n  *(undefined1 *)(param_1 + 0x1110) = 0x10;\n  return;\n}" primitive_type (function_declarator "ccm_add_nonce(long param_1,undefined1 *param_2,ulong param_3)" identifier (parameter_list "(long param_1,undefined1 *param_2,ulong param_3)" ( (parameter_declaration "long param_1" (sized_type_specifier "long" long) identifier) , (parameter_declaration "undefined1 *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) , (parameter_declaration "ulong param_3" type_identifier identifier) ))) (compound_statement "{\n  ulong uVar1;\n  byte bVar2;\n  int iVar3;\n  ulong uVar4;\n  ulong uVar5;\n  long lVar6;\n  long lVar7;\n  long lVar8;\n  \n  if (param_1 == 0) {\n                    \n    crypt_argchk("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a);\n  }\n  if (param_2 == (undefined1 *)0x0) {\n                    \n    crypt_argchk("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b);\n  }\n  if (0xd < param_3) {\n    param_3 = 0xd;\n  }\n  uVar4 = *(ulong *)(param_1 + 0x10b0);\n  uVar5 = 0xf - param_3;\n  *(ulong *)(param_1 + 0x10d8) = param_3;\n  if (uVar4 < uVar5) {\n    *(ulong *)(param_1 + 0x10b0) = uVar5;\n  }\n  else {\n    uVar1 = param_3 + uVar4;\n    param_3 = 0xf - uVar4;\n    uVar5 = uVar4;\n    if (0xf < uVar1) {\n      *(ulong *)(param_1 + 0x10d8) = param_3;\n    }\n  }\n  lVar7 = *(long *)(param_1 + 0x10b8);\n  *(byte *)(param_1 + 0x10e0) =\n       (*(long *)(param_1 + 0x10c8) != 0) << 6 | (byte)((*(int *)(param_1 + 0x10a4) + -2 >> 1) << 3)\n       | (char)uVar5 - 1U;\n  if (param_3 == 0) {\n    lVar6 = 1;\nLAB_00133225:\n    if (uVar5 < 5) goto LAB_00132d92;\n    *(undefined1 *)(param_1 + 0x10e0 + lVar6) = 0;\n    if ((((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)) &&\n        ((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))))) &&\n       (((*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&\n        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))))))) {\n      *(undefined1 *)(param_1 + 0x10ee + lVar6) = 0;\n    }\n    uVar4 = uVar5 - 4;\n    lVar6 = lVar6 + uVar4;\n  }\n  else {\n    *(undefined1 *)(param_1 + 0x10e1) = *param_2;\n    if ((((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&\n        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)) &&\n       (((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))))) {\n      *(undefined1 *)(param_1 + 0x10ef) = param_2[0xe];\n    }\n    lVar6 = param_3 + 1;\n    if (3 < uVar5) goto LAB_00133225;\n    iVar3 = 8;\n    if ((uVar5 == 3) || (iVar3 = 0x10, uVar5 == 2)) {\n      lVar7 = lVar7 << iVar3;\n    }\n    else {\n      lVar8 = lVar7 << 0x18;\n      lVar7 = 0;\n      if (uVar5 != 0) {\n        lVar7 = lVar8;\n      }\n    }\nLAB_00132d92:\n    uVar4 = 0;\n  }\n  if (((((uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)) &&\n       (*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5)) &&\n      (((*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&\n       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))))))) &&\n     (((*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))) &&\n      ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)))))) {\n    *(undefined1 *)(param_1 + 0x10ed + lVar6) = 0;\n    if (uVar4 + 0xe < uVar5) {\n      *(undefined1 *)(param_1 + lVar6 + 0x10ee) = 0;\n      if (uVar4 + 0xf < uVar5) {\n        *(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0;\n      }\n    }\n  }\n  iVar3 = (**(code **)(PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28))\n                    (param_1 + 0x10e0,param_1 + 0x10e0,param_1);\n  if (iVar3 != 0) {\n    return;\n  }\n  uVar4 = *(ulong *)(param_1 + 0x10c8);\n  *(undefined4 *)(param_1 + 0x10a8) = 0;\n  if (uVar4 != 0) {\n    bVar2 = (byte)(uVar4 >> 8);\n    if (uVar4 < 0xff00) {\n      *(undefined4 *)(param_1 + 0x10a8) = 2;\n      *(byte *)(param_1 + 0x10e0) = *(byte *)(param_1 + 0x10e0) ^ bVar2;\n      *(byte *)(param_1 + 0x10e1) = (byte)uVar4 ^ *(byte *)(param_1 + 0x10e1);\n    }\n    else {\n      *(byte *)(param_1 + 0x10e0) = ~*(byte *)(param_1 + 0x10e0);\n      *(byte *)(param_1 + 0x10e1) = *(byte *)(param_1 + 0x10e1) ^ 0xfe;\n      *(byte *)(param_1 + 0x10e2) = *(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18);\n      *(byte *)(param_1 + 0x10e3) = *(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10);\n      *(byte *)(param_1 + 0x10e4) = *(byte *)(param_1 + 0x10e4) ^ bVar2;\n      *(undefined4 *)(param_1 + 0x10a8) = 6;\n      *(byte *)(param_1 + 0x10e5) = *(byte *)(param_1 + 0x10e5) ^ (byte)uVar4;\n    }\n  }\n  lVar7 = *(long *)(param_1 + 0x10b0);\n  *(char *)(param_1 + 0x10f0) = (char)lVar7 + -1;\n  if (lVar7 == 0xf) {\n    lVar7 = 3;\n    *(undefined2 *)(param_1 + 0x10f1) = 0;\n  }\n  else {\n    *(undefined1 *)(param_1 + 0x10f1) = *param_2;\n    if (((((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&\n        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)) &&\n       (((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))))) {\n      *(undefined1 *)(param_1 + 0x10ff) = param_2[0xe];\n    }\n    if (0xf < 0x10U - lVar7) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x10U - lVar7)) = 0;\n    if (0x11 - lVar7 == 0x10) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x11 - lVar7)) = 0;\n    lVar7 = 0x12 - lVar7;\n    if (lVar7 == 0x10) goto LAB_001331f8;\n  }\n  *(undefined1 *)(param_1 + 0x10f0 + lVar7) = 0;\n  if (((((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)) &&\n       (*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd)) &&\n      (((*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&\n       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))))))) &&\n     ((*(undefined1 *)(param_1 + 0x10f8 + lVar7) = 0, lVar7 != 7 &&\n      (((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)))))) {\n    *(undefined1 *)(param_1 + 0x10ff) = 0;\n  }\nLAB_001331f8:\n  *(undefined1 *)(param_1 + 0x1110) = 0x10;\n  return;\n}" { (declaration "ulong uVar1;" type_identifier identifier ;) (declaration "byte bVar2;" type_identifier identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "ulong uVar4;" type_identifier identifier ;) (declaration "ulong uVar5;" type_identifier identifier ;) (declaration "long lVar6;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar7;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar8;" (sized_type_specifier "long" long) identifier ;) (if_statement "if (param_1 == 0) {\n                    \n    crypt_argchk("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a);\n  }" if (parenthesized_expression "(param_1 == 0)" ( (binary_expression "param_1 == 0" identifier == number_literal) )) (compound_statement "{\n                    \n    crypt_argchk("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a);\n  }" { (expression_statement "crypt_argchk("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a);" (call_expression "crypt_argchk("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a)" identifier (argument_list "("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a)" ( (string_literal ""ccm != NULL"" " string_content ") , (string_literal ""src/encauth/ccm/ccm_add_nonce.c"" " string_content ") , number_literal ))) ;) })) (if_statement "if (param_2 == (undefined1 *)0x0) {\n                    \n    crypt_argchk("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b);\n  }" if (parenthesized_expression "(param_2 == (undefined1 *)0x0)" ( (binary_expression "param_2 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    \n    crypt_argchk("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b);\n  }" { (expression_statement "crypt_argchk("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b);" (call_expression "crypt_argchk("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b)" identifier (argument_list "("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b)" ( (string_literal ""nonce != NULL"" " string_content ") , (string_literal ""src/encauth/ccm/ccm_add_nonce.c"" " string_content ") , number_literal ))) ;) })) (if_statement "if (0xd < param_3) {\n    param_3 = 0xd;\n  }" if (parenthesized_expression "(0xd < param_3)" ( (binary_expression "0xd < param_3" number_literal < identifier) )) (compound_statement "{\n    param_3 = 0xd;\n  }" { (expression_statement "param_3 = 0xd;" (assignment_expression "param_3 = 0xd" identifier = number_literal) ;) })) (expression_statement "uVar4 = *(ulong *)(param_1 + 0x10b0);" (assignment_expression "uVar4 = *(ulong *)(param_1 + 0x10b0)" identifier = (pointer_expression "*(ulong *)(param_1 + 0x10b0)" * (cast_expression "(ulong *)(param_1 + 0x10b0)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10b0)" ( (binary_expression "param_1 + 0x10b0" identifier + number_literal) ))))) ;) (expression_statement "uVar5 = 0xf - param_3;" (assignment_expression "uVar5 = 0xf - param_3" identifier = (binary_expression "0xf - param_3" number_literal - identifier)) ;) (expression_statement "*(ulong *)(param_1 + 0x10d8) = param_3;" (assignment_expression "*(ulong *)(param_1 + 0x10d8) = param_3" (pointer_expression "*(ulong *)(param_1 + 0x10d8)" * (cast_expression "(ulong *)(param_1 + 0x10d8)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10d8)" ( (binary_expression "param_1 + 0x10d8" identifier + number_literal) )))) = identifier) ;) (if_statement "if (uVar4 < uVar5) {\n    *(ulong *)(param_1 + 0x10b0) = uVar5;\n  }\n  else {\n    uVar1 = param_3 + uVar4;\n    param_3 = 0xf - uVar4;\n    uVar5 = uVar4;\n    if (0xf < uVar1) {\n      *(ulong *)(param_1 + 0x10d8) = param_3;\n    }\n  }" if (parenthesized_expression "(uVar4 < uVar5)" ( (binary_expression "uVar4 < uVar5" identifier < identifier) )) (compound_statement "{\n    *(ulong *)(param_1 + 0x10b0) = uVar5;\n  }" { (expression_statement "*(ulong *)(param_1 + 0x10b0) = uVar5;" (assignment_expression "*(ulong *)(param_1 + 0x10b0) = uVar5" (pointer_expression "*(ulong *)(param_1 + 0x10b0)" * (cast_expression "(ulong *)(param_1 + 0x10b0)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10b0)" ( (binary_expression "param_1 + 0x10b0" identifier + number_literal) )))) = identifier) ;) }) (else_clause "else {\n    uVar1 = param_3 + uVar4;\n    param_3 = 0xf - uVar4;\n    uVar5 = uVar4;\n    if (0xf < uVar1) {\n      *(ulong *)(param_1 + 0x10d8) = param_3;\n    }\n  }" else (compound_statement "{\n    uVar1 = param_3 + uVar4;\n    param_3 = 0xf - uVar4;\n    uVar5 = uVar4;\n    if (0xf < uVar1) {\n      *(ulong *)(param_1 + 0x10d8) = param_3;\n    }\n  }" { (expression_statement "uVar1 = param_3 + uVar4;" (assignment_expression "uVar1 = param_3 + uVar4" identifier = (binary_expression "param_3 + uVar4" identifier + identifier)) ;) (expression_statement "param_3 = 0xf - uVar4;" (assignment_expression "param_3 = 0xf - uVar4" identifier = (binary_expression "0xf - uVar4" number_literal - identifier)) ;) (expression_statement "uVar5 = uVar4;" (assignment_expression "uVar5 = uVar4" identifier = identifier) ;) (if_statement "if (0xf < uVar1) {\n      *(ulong *)(param_1 + 0x10d8) = param_3;\n    }" if (parenthesized_expression "(0xf < uVar1)" ( (binary_expression "0xf < uVar1" number_literal < identifier) )) (compound_statement "{\n      *(ulong *)(param_1 + 0x10d8) = param_3;\n    }" { (expression_statement "*(ulong *)(param_1 + 0x10d8) = param_3;" (assignment_expression "*(ulong *)(param_1 + 0x10d8) = param_3" (pointer_expression "*(ulong *)(param_1 + 0x10d8)" * (cast_expression "(ulong *)(param_1 + 0x10d8)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10d8)" ( (binary_expression "param_1 + 0x10d8" identifier + number_literal) )))) = identifier) ;) })) }))) (expression_statement "lVar7 = *(long *)(param_1 + 0x10b8);" (assignment_expression "lVar7 = *(long *)(param_1 + 0x10b8)" identifier = (pointer_expression "*(long *)(param_1 + 0x10b8)" * (cast_expression "(long *)(param_1 + 0x10b8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10b8)" ( (binary_expression "param_1 + 0x10b8" identifier + number_literal) ))))) ;) (expression_statement "*(byte *)(param_1 + 0x10e0) =\n       (*(long *)(param_1 + 0x10c8) != 0) << 6 | (byte)((*(int *)(param_1 + 0x10a4) + -2 >> 1) << 3)\n       | (char)uVar5 - 1U;" (assignment_expression "*(byte *)(param_1 + 0x10e0) =\n       (*(long *)(param_1 + 0x10c8) != 0) << 6 | (byte)((*(int *)(param_1 + 0x10a4) + -2 >> 1) << 3)\n       | (char)uVar5 - 1U" (pointer_expression "*(byte *)(param_1 + 0x10e0)" * (cast_expression "(byte *)(param_1 + 0x10e0)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e0)" ( (binary_expression "param_1 + 0x10e0" identifier + number_literal) )))) = (binary_expression "(*(long *)(param_1 + 0x10c8) != 0) << 6 | (byte)((*(int *)(param_1 + 0x10a4) + -2 >> 1) << 3)\n       | (char)uVar5 - 1U" (binary_expression "(*(long *)(param_1 + 0x10c8) != 0) << 6 | (byte)((*(int *)(param_1 + 0x10a4) + -2 >> 1) << 3)" (binary_expression "(*(long *)(param_1 + 0x10c8) != 0) << 6" (parenthesized_expression "(*(long *)(param_1 + 0x10c8) != 0)" ( (binary_expression "*(long *)(param_1 + 0x10c8) != 0" (pointer_expression "*(long *)(param_1 + 0x10c8)" * (cast_expression "(long *)(param_1 + 0x10c8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10c8)" ( (binary_expression "param_1 + 0x10c8" identifier + number_literal) )))) != number_literal) )) << number_literal) | (call_expression "(byte)((*(int *)(param_1 + 0x10a4) + -2 >> 1) << 3)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "((*(int *)(param_1 + 0x10a4) + -2 >> 1) << 3)" ( (binary_expression "(*(int *)(param_1 + 0x10a4) + -2 >> 1) << 3" (parenthesized_expression "(*(int *)(param_1 + 0x10a4) + -2 >> 1)" ( (binary_expression "*(int *)(param_1 + 0x10a4) + -2 >> 1" (binary_expression "*(int *)(param_1 + 0x10a4) + -2" (pointer_expression "*(int *)(param_1 + 0x10a4)" * (cast_expression "(int *)(param_1 + 0x10a4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10a4)" ( (binary_expression "param_1 + 0x10a4" identifier + number_literal) )))) + number_literal) >> number_literal) )) << number_literal) )))) | (binary_expression "(char)uVar5 - 1U" (cast_expression "(char)uVar5" ( (type_descriptor "char" primitive_type) ) identifier) - number_literal))) ;) (if_statement "if (param_3 == 0) {\n    lVar6 = 1;\nLAB_00133225:\n    if (uVar5 < 5) goto LAB_00132d92;\n    *(undefined1 *)(param_1 + 0x10e0 + lVar6) = 0;\n    if ((((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)) &&\n        ((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))))) &&\n       (((*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&\n        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))))))) {\n      *(undefined1 *)(param_1 + 0x10ee + lVar6) = 0;\n    }\n    uVar4 = uVar5 - 4;\n    lVar6 = lVar6 + uVar4;\n  }\n  else {\n    *(undefined1 *)(param_1 + 0x10e1) = *param_2;\n    if ((((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&\n        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)) &&\n       (((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))))) {\n      *(undefined1 *)(param_1 + 0x10ef) = param_2[0xe];\n    }\n    lVar6 = param_3 + 1;\n    if (3 < uVar5) goto LAB_00133225;\n    iVar3 = 8;\n    if ((uVar5 == 3) || (iVar3 = 0x10, uVar5 == 2)) {\n      lVar7 = lVar7 << iVar3;\n    }\n    else {\n      lVar8 = lVar7 << 0x18;\n      lVar7 = 0;\n      if (uVar5 != 0) {\n        lVar7 = lVar8;\n      }\n    }\nLAB_00132d92:\n    uVar4 = 0;\n  }" if (parenthesized_expression "(param_3 == 0)" ( (binary_expression "param_3 == 0" identifier == number_literal) )) (compound_statement "{\n    lVar6 = 1;\nLAB_00133225:\n    if (uVar5 < 5) goto LAB_00132d92;\n    *(undefined1 *)(param_1 + 0x10e0 + lVar6) = 0;\n    if ((((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)) &&\n        ((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))))) &&\n       (((*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&\n        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))))))) {\n      *(undefined1 *)(param_1 + 0x10ee + lVar6) = 0;\n    }\n    uVar4 = uVar5 - 4;\n    lVar6 = lVar6 + uVar4;\n  }" { (expression_statement "lVar6 = 1;" (assignment_expression "lVar6 = 1" identifier = number_literal) ;) (labeled_statement "LAB_00133225:\n    if (uVar5 < 5) goto LAB_00132d92;" statement_identifier : (if_statement "if (uVar5 < 5) goto LAB_00132d92;" if (parenthesized_expression "(uVar5 < 5)" ( (binary_expression "uVar5 < 5" identifier < number_literal) )) (goto_statement "goto LAB_00132d92;" goto statement_identifier ;))) (expression_statement "*(undefined1 *)(param_1 + 0x10e0 + lVar6) = 0;" (assignment_expression "*(undefined1 *)(param_1 + 0x10e0 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e0 + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e0 + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e0 + lVar6)" ( (binary_expression "param_1 + 0x10e0 + lVar6" (binary_expression "param_1 + 0x10e0" identifier + number_literal) + identifier) )))) = number_literal) ;) (if_statement "if ((((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)) &&\n        ((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))))) &&\n       (((*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&\n        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))))))) {\n      *(undefined1 *)(param_1 + 0x10ee + lVar6) = 0;\n    }" if (parenthesized_expression "((((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)) &&\n        ((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))))) &&\n       (((*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&\n        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12))))))))" ( (binary_expression "(((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)) &&\n        ((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))))) &&\n       (((*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&\n        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))))))" (parenthesized_expression "(((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)) &&\n        ((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd))))))" ( (binary_expression "((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)) &&\n        ((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))))" (parenthesized_expression "((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6))" ( (binary_expression "(uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)" (parenthesized_expression "(uVar5 != 5)" ( (binary_expression "uVar5 != 5" identifier != number_literal) )) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6" (assignment_expression "*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e1 + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e1 + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e1 + lVar6)" ( (binary_expression "param_1 + 0x10e1 + lVar6" (binary_expression "param_1 + 0x10e1" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar5 != 6" identifier != number_literal)) ))) )) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd))))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))" (assignment_expression "*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e2 + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e2 + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e2 + lVar6)" ( (binary_expression "param_1 + 0x10e2 + lVar6" (binary_expression "param_1 + 0x10e2" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))" (binary_expression "uVar5 != 7" identifier != number_literal) && (parenthesized_expression "(((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))" ( (parenthesized_expression "((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd))" ( (binary_expression "(((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)" (parenthesized_expression "(((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc))))" ( (binary_expression "((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))" (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10))" ( (binary_expression "(*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)" (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)" (assignment_expression "*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e3 + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e3 + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e3 + lVar6)" ( (binary_expression "param_1 + 0x10e3 + lVar6" (binary_expression "param_1 + 0x10e3" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)" (binary_expression "uVar5 != 8" identifier != number_literal) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9" (assignment_expression "*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e4 + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e4 + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e4 + lVar6)" ( (binary_expression "param_1 + 0x10e4 + lVar6" (binary_expression "param_1 + 0x10e4" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar5 != 9" identifier != number_literal)) )))) )) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10" (assignment_expression "*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e5 + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e5 + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e5 + lVar6)" ( (binary_expression "param_1 + 0x10e5 + lVar6" (binary_expression "param_1 + 0x10e5" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar5 != 10" identifier != number_literal)) ))) )) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)" (assignment_expression "*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e6 + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e6 + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e6 + lVar6)" ( (binary_expression "param_1 + 0x10e6 + lVar6" (binary_expression "param_1 + 0x10e6" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)" (binary_expression "uVar5 != 0xb" identifier != number_literal) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc" (assignment_expression "*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e7 + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e7 + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e7 + lVar6)" ( (binary_expression "param_1 + 0x10e7 + lVar6" (binary_expression "param_1 + 0x10e7" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar5 != 0xc" identifier != number_literal)) )))) )) ))) )) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd" (assignment_expression "*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e8 + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e8 + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e8 + lVar6)" ( (binary_expression "param_1 + 0x10e8 + lVar6" (binary_expression "param_1 + 0x10e8" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar5 != 0xd" identifier != number_literal)) ))) )) )))) )) ))) )) && (parenthesized_expression "(((*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&\n        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))))))" ( (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&\n        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12))))))" ( (binary_expression "(*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&\n        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))))" (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)" (assignment_expression "*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e9 + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e9 + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e9 + lVar6)" ( (binary_expression "param_1 + 0x10e9 + lVar6" (binary_expression "param_1 + 0x10e9" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)" (binary_expression "uVar5 != 0xe" identifier != number_literal) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf" (assignment_expression "*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10ea + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10ea + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10ea + lVar6)" ( (binary_expression "param_1 + 0x10ea + lVar6" (binary_expression "param_1 + 0x10ea" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar5 != 0xf" identifier != number_literal)) )))) )) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12))))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))" (assignment_expression "*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10eb + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10eb + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10eb + lVar6)" ( (binary_expression "param_1 + 0x10eb + lVar6" (binary_expression "param_1 + 0x10eb" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))" (binary_expression "uVar5 != 0x10" identifier != number_literal) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)" (assignment_expression "*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10ec + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10ec + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10ec + lVar6)" ( (binary_expression "param_1 + 0x10ec + lVar6" (binary_expression "param_1 + 0x10ec" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)" (binary_expression "uVar5 != 0x11" identifier != number_literal) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12" (assignment_expression "*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10ed + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10ed + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10ed + lVar6)" ( (binary_expression "param_1 + 0x10ed + lVar6" (binary_expression "param_1 + 0x10ed" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar5 != 0x12" identifier != number_literal)) )))) )) )))) )) ))) )) ))) )) (compound_statement "{\n      *(undefined1 *)(param_1 + 0x10ee + lVar6) = 0;\n    }" { (expression_statement "*(undefined1 *)(param_1 + 0x10ee + lVar6) = 0;" (assignment_expression "*(undefined1 *)(param_1 + 0x10ee + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10ee + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10ee + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10ee + lVar6)" ( (binary_expression "param_1 + 0x10ee + lVar6" (binary_expression "param_1 + 0x10ee" identifier + number_literal) + identifier) )))) = number_literal) ;) })) (expression_statement "uVar4 = uVar5 - 4;" (assignment_expression "uVar4 = uVar5 - 4" identifier = (binary_expression "uVar5 - 4" identifier - number_literal)) ;) (expression_statement "lVar6 = lVar6 + uVar4;" (assignment_expression "lVar6 = lVar6 + uVar4" identifier = (binary_expression "lVar6 + uVar4" identifier + identifier)) ;) }) (else_clause "else {\n    *(undefined1 *)(param_1 + 0x10e1) = *param_2;\n    if ((((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&\n        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)) &&\n       (((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))))) {\n      *(undefined1 *)(param_1 + 0x10ef) = param_2[0xe];\n    }\n    lVar6 = param_3 + 1;\n    if (3 < uVar5) goto LAB_00133225;\n    iVar3 = 8;\n    if ((uVar5 == 3) || (iVar3 = 0x10, uVar5 == 2)) {\n      lVar7 = lVar7 << iVar3;\n    }\n    else {\n      lVar8 = lVar7 << 0x18;\n      lVar7 = 0;\n      if (uVar5 != 0) {\n        lVar7 = lVar8;\n      }\n    }\nLAB_00132d92:\n    uVar4 = 0;\n  }" else (compound_statement "{\n    *(undefined1 *)(param_1 + 0x10e1) = *param_2;\n    if ((((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&\n        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)) &&\n       (((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))))) {\n      *(undefined1 *)(param_1 + 0x10ef) = param_2[0xe];\n    }\n    lVar6 = param_3 + 1;\n    if (3 < uVar5) goto LAB_00133225;\n    iVar3 = 8;\n    if ((uVar5 == 3) || (iVar3 = 0x10, uVar5 == 2)) {\n      lVar7 = lVar7 << iVar3;\n    }\n    else {\n      lVar8 = lVar7 << 0x18;\n      lVar7 = 0;\n      if (uVar5 != 0) {\n        lVar7 = lVar8;\n      }\n    }\nLAB_00132d92:\n    uVar4 = 0;\n  }" { (expression_statement "*(undefined1 *)(param_1 + 0x10e1) = *param_2;" (assignment_expression "*(undefined1 *)(param_1 + 0x10e1) = *param_2" (pointer_expression "*(undefined1 *)(param_1 + 0x10e1)" * (cast_expression "(undefined1 *)(param_1 + 0x10e1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e1)" ( (binary_expression "param_1 + 0x10e1" identifier + number_literal) )))) = (pointer_expression "*param_2" * identifier)) ;) (if_statement "if ((((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&\n        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)) &&\n       (((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))))) {\n      *(undefined1 *)(param_1 + 0x10ef) = param_2[0xe];\n    }" if (parenthesized_expression "((((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&\n        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)) &&\n       (((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe))))))))" ( (binary_expression "(((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&\n        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)) &&\n       (((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))))" (parenthesized_expression "(((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&\n        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3))" ( (binary_expression "((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&\n        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)" (parenthesized_expression "((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2))" ( (binary_expression "(1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)" (parenthesized_expression "(1 < param_3)" ( (binary_expression "1 < param_3" number_literal < identifier) )) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2" (assignment_expression "*(undefined1 *)(param_1 + 0x10e2) = param_2[1]" (pointer_expression "*(undefined1 *)(param_1 + 0x10e2)" * (cast_expression "(undefined1 *)(param_1 + 0x10e2)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e2)" ( (binary_expression "param_1 + 0x10e2" identifier + number_literal) )))) = (subscript_expression "param_2[1]" identifier [ number_literal ])) , (binary_expression "param_3 != 2" identifier != number_literal)) ))) )) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3" (assignment_expression "*(undefined1 *)(param_1 + 0x10e3) = param_2[2]" (pointer_expression "*(undefined1 *)(param_1 + 0x10e3)" * (cast_expression "(undefined1 *)(param_1 + 0x10e3)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e3)" ( (binary_expression "param_1 + 0x10e3" identifier + number_literal) )))) = (subscript_expression "param_2[2]" identifier [ number_literal ])) , (binary_expression "param_3 != 3" identifier != number_literal)) ))) )) && (parenthesized_expression "(((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))))" ( (parenthesized_expression "((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe))))))" ( (binary_expression "(((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))" (parenthesized_expression "(((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9))" ( (binary_expression "((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)" (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8))))))" ( (binary_expression "(*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))" (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)" (assignment_expression "*(undefined1 *)(param_1 + 0x10e4) = param_2[3]" (pointer_expression "*(undefined1 *)(param_1 + 0x10e4)" * (cast_expression "(undefined1 *)(param_1 + 0x10e4)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e4)" ( (binary_expression "param_1 + 0x10e4" identifier + number_literal) )))) = (subscript_expression "param_2[3]" identifier [ number_literal ])) , (binary_expression "param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)" (binary_expression "param_3 != 4" identifier != number_literal) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5" (assignment_expression "*(undefined1 *)(param_1 + 0x10e5) = param_2[4]" (pointer_expression "*(undefined1 *)(param_1 + 0x10e5)" * (cast_expression "(undefined1 *)(param_1 + 0x10e5)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e5)" ( (binary_expression "param_1 + 0x10e5" identifier + number_literal) )))) = (subscript_expression "param_2[4]" identifier [ number_literal ])) , (binary_expression "param_3 != 5" identifier != number_literal)) )))) )) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8))))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))" (assignment_expression "*(undefined1 *)(param_1 + 0x10e6) = param_2[5]" (pointer_expression "*(undefined1 *)(param_1 + 0x10e6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e6)" ( (binary_expression "param_1 + 0x10e6" identifier + number_literal) )))) = (subscript_expression "param_2[5]" identifier [ number_literal ])) , (binary_expression "param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))" (binary_expression "param_3 != 6" identifier != number_literal) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)" (assignment_expression "*(undefined1 *)(param_1 + 0x10e7) = param_2[6]" (pointer_expression "*(undefined1 *)(param_1 + 0x10e7)" * (cast_expression "(undefined1 *)(param_1 + 0x10e7)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e7)" ( (binary_expression "param_1 + 0x10e7" identifier + number_literal) )))) = (subscript_expression "param_2[6]" identifier [ number_literal ])) , (binary_expression "param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)" (binary_expression "param_3 != 7" identifier != number_literal) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8" (assignment_expression "*(undefined1 *)(param_1 + 0x10e8) = param_2[7]" (pointer_expression "*(undefined1 *)(param_1 + 0x10e8)" * (cast_expression "(undefined1 *)(param_1 + 0x10e8)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e8)" ( (binary_expression "param_1 + 0x10e8" identifier + number_literal) )))) = (subscript_expression "param_2[7]" identifier [ number_literal ])) , (binary_expression "param_3 != 8" identifier != number_literal)) )))) )) )))) )) ))) )) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9" (assignment_expression "*(undefined1 *)(param_1 + 0x10e9) = param_2[8]" (pointer_expression "*(undefined1 *)(param_1 + 0x10e9)" * (cast_expression "(undefined1 *)(param_1 + 0x10e9)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e9)" ( (binary_expression "param_1 + 0x10e9" identifier + number_literal) )))) = (subscript_expression "param_2[8]" identifier [ number_literal ])) , (binary_expression "param_3 != 9" identifier != number_literal)) ))) )) && (parenthesized_expression "((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))" ( (parenthesized_expression "(((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe))))" ( (binary_expression "((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))" (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc))" ( (binary_expression "(*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)" (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)" (assignment_expression "*(undefined1 *)(param_1 + 0x10ea) = param_2[9]" (pointer_expression "*(undefined1 *)(param_1 + 0x10ea)" * (cast_expression "(undefined1 *)(param_1 + 0x10ea)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10ea)" ( (binary_expression "param_1 + 0x10ea" identifier + number_literal) )))) = (subscript_expression "param_2[9]" identifier [ number_literal ])) , (binary_expression "param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)" (binary_expression "param_3 != 10" identifier != number_literal) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb" (assignment_expression "*(undefined1 *)(param_1 + 0x10eb) = param_2[10]" (pointer_expression "*(undefined1 *)(param_1 + 0x10eb)" * (cast_expression "(undefined1 *)(param_1 + 0x10eb)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10eb)" ( (binary_expression "param_1 + 0x10eb" identifier + number_literal) )))) = (subscript_expression "param_2[10]" identifier [ number_literal ])) , (binary_expression "param_3 != 0xb" identifier != number_literal)) )))) )) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc" (assignment_expression "*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb]" (pointer_expression "*(undefined1 *)(param_1 + 0x10ec)" * (cast_expression "(undefined1 *)(param_1 + 0x10ec)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10ec)" ( (binary_expression "param_1 + 0x10ec" identifier + number_literal) )))) = (subscript_expression "param_2[0xb]" identifier [ number_literal ])) , (binary_expression "param_3 != 0xc" identifier != number_literal)) ))) )) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)" (assignment_expression "*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc]" (pointer_expression "*(undefined1 *)(param_1 + 0x10ed)" * (cast_expression "(undefined1 *)(param_1 + 0x10ed)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10ed)" ( (binary_expression "param_1 + 0x10ed" identifier + number_literal) )))) = (subscript_expression "param_2[0xc]" identifier [ number_literal ])) , (binary_expression "param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)" (binary_expression "param_3 != 0xd" identifier != number_literal) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe" (assignment_expression "*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd]" (pointer_expression "*(undefined1 *)(param_1 + 0x10ee)" * (cast_expression "(undefined1 *)(param_1 + 0x10ee)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10ee)" ( (binary_expression "param_1 + 0x10ee" identifier + number_literal) )))) = (subscript_expression "param_2[0xd]" identifier [ number_literal ])) , (binary_expression "param_3 != 0xe" identifier != number_literal)) )))) )) ))) )) ))) )) ))) )) (compound_statement "{\n      *(undefined1 *)(param_1 + 0x10ef) = param_2[0xe];\n    }" { (expression_statement "*(undefined1 *)(param_1 + 0x10ef) = param_2[0xe];" (assignment_expression "*(undefined1 *)(param_1 + 0x10ef) = param_2[0xe]" (pointer_expression "*(undefined1 *)(param_1 + 0x10ef)" * (cast_expression "(undefined1 *)(param_1 + 0x10ef)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10ef)" ( (binary_expression "param_1 + 0x10ef" identifier + number_literal) )))) = (subscript_expression "param_2[0xe]" identifier [ number_literal ])) ;) })) (expression_statement "lVar6 = param_3 + 1;" (assignment_expression "lVar6 = param_3 + 1" identifier = (binary_expression "param_3 + 1" identifier + number_literal)) ;) (if_statement "if (3 < uVar5) goto LAB_00133225;" if (parenthesized_expression "(3 < uVar5)" ( (binary_expression "3 < uVar5" number_literal < identifier) )) (goto_statement "goto LAB_00133225;" goto statement_identifier ;)) (expression_statement "iVar3 = 8;" (assignment_expression "iVar3 = 8" identifier = number_literal) ;) (if_statement "if ((uVar5 == 3) || (iVar3 = 0x10, uVar5 == 2)) {\n      lVar7 = lVar7 << iVar3;\n    }\n    else {\n      lVar8 = lVar7 << 0x18;\n      lVar7 = 0;\n      if (uVar5 != 0) {\n        lVar7 = lVar8;\n      }\n    }" if (parenthesized_expression "((uVar5 == 3) || (iVar3 = 0x10, uVar5 == 2))" ( (binary_expression "(uVar5 == 3) || (iVar3 = 0x10, uVar5 == 2)" (parenthesized_expression "(uVar5 == 3)" ( (binary_expression "uVar5 == 3" identifier == number_literal) )) || (parenthesized_expression "(iVar3 = 0x10, uVar5 == 2)" ( (comma_expression "iVar3 = 0x10, uVar5 == 2" (assignment_expression "iVar3 = 0x10" identifier = number_literal) , (binary_expression "uVar5 == 2" identifier == number_literal)) ))) )) (compound_statement "{\n      lVar7 = lVar7 << iVar3;\n    }" { (expression_statement "lVar7 = lVar7 << iVar3;" (assignment_expression "lVar7 = lVar7 << iVar3" identifier = (binary_expression "lVar7 << iVar3" identifier << identifier)) ;) }) (else_clause "else {\n      lVar8 = lVar7 << 0x18;\n      lVar7 = 0;\n      if (uVar5 != 0) {\n        lVar7 = lVar8;\n      }\n    }" else (compound_statement "{\n      lVar8 = lVar7 << 0x18;\n      lVar7 = 0;\n      if (uVar5 != 0) {\n        lVar7 = lVar8;\n      }\n    }" { (expression_statement "lVar8 = lVar7 << 0x18;" (assignment_expression "lVar8 = lVar7 << 0x18" identifier = (binary_expression "lVar7 << 0x18" identifier << number_literal)) ;) (expression_statement "lVar7 = 0;" (assignment_expression "lVar7 = 0" identifier = number_literal) ;) (if_statement "if (uVar5 != 0) {\n        lVar7 = lVar8;\n      }" if (parenthesized_expression "(uVar5 != 0)" ( (binary_expression "uVar5 != 0" identifier != number_literal) )) (compound_statement "{\n        lVar7 = lVar8;\n      }" { (expression_statement "lVar7 = lVar8;" (assignment_expression "lVar7 = lVar8" identifier = identifier) ;) })) }))) (labeled_statement "LAB_00132d92:\n    uVar4 = 0;" statement_identifier : (expression_statement "uVar4 = 0;" (assignment_expression "uVar4 = 0" identifier = number_literal) ;)) }))) (if_statement "if (((((uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)) &&\n       (*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5)) &&\n      (((*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&\n       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))))))) &&\n     (((*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))) &&\n      ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)))))) {\n    *(undefined1 *)(param_1 + 0x10ed + lVar6) = 0;\n    if (uVar4 + 0xe < uVar5) {\n      *(undefined1 *)(param_1 + lVar6 + 0x10ee) = 0;\n      if (uVar4 + 0xf < uVar5) {\n        *(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0;\n      }\n    }\n  }" if (parenthesized_expression "(((((uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)) &&\n       (*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5)) &&\n      (((*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&\n       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))))))) &&\n     (((*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))) &&\n      ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5))))))" ( (binary_expression "((((uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)) &&\n       (*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5)) &&\n      (((*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&\n       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))))))) &&\n     (((*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))) &&\n      ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)))))" (parenthesized_expression "((((uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)) &&\n       (*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5)) &&\n      (((*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&\n       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5))))))))" ( (binary_expression "(((uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)) &&\n       (*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5)) &&\n      (((*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&\n       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))))))" (parenthesized_expression "(((uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)) &&\n       (*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5))" ( (binary_expression "((uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)) &&\n       (*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5)" (parenthesized_expression "((uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5))" ( (binary_expression "(uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)" (parenthesized_expression "(uVar4 < uVar5)" ( (binary_expression "uVar4 < uVar5" identifier < identifier) )) && (parenthesized_expression "(*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)" ( (comma_expression "*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5" (assignment_expression "*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18)" (pointer_expression "*(char *)(param_1 + 0x10e0 + lVar6)" * (cast_expression "(char *)(param_1 + 0x10e0 + lVar6)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e0 + lVar6)" ( (binary_expression "param_1 + 0x10e0 + lVar6" (binary_expression "param_1 + 0x10e0" identifier + number_literal) + identifier) )))) = (cast_expression "(char)((ulong)lVar7 >> 0x18)" ( (type_descriptor "char" primitive_type) ) (parenthesized_expression "((ulong)lVar7 >> 0x18)" ( (binary_expression "(ulong)lVar7 >> 0x18" (cast_expression "(ulong)lVar7" ( (type_descriptor "ulong" type_identifier) ) identifier) >> number_literal) )))) , (binary_expression "uVar4 + 1 < uVar5" (binary_expression "uVar4 + 1" identifier + number_literal) < identifier)) ))) )) && (parenthesized_expression "(*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5)" ( (comma_expression "*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5" (assignment_expression "*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10)" (pointer_expression "*(char *)(param_1 + 0x10e1 + lVar6)" * (cast_expression "(char *)(param_1 + 0x10e1 + lVar6)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e1 + lVar6)" ( (binary_expression "param_1 + 0x10e1 + lVar6" (binary_expression "param_1 + 0x10e1" identifier + number_literal) + identifier) )))) = (cast_expression "(char)((ulong)lVar7 >> 0x10)" ( (type_descriptor "char" primitive_type) ) (parenthesized_expression "((ulong)lVar7 >> 0x10)" ( (binary_expression "(ulong)lVar7 >> 0x10" (cast_expression "(ulong)lVar7" ( (type_descriptor "ulong" type_identifier) ) identifier) >> number_literal) )))) , (binary_expression "uVar4 + 2 < uVar5" (binary_expression "uVar4 + 2" identifier + number_literal) < identifier)) ))) )) && (parenthesized_expression "(((*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&\n       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))))))" ( (parenthesized_expression "((*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&\n       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5))))))" ( (binary_expression "(*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&\n       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))))" (parenthesized_expression "(*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5))" ( (comma_expression "*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)" (assignment_expression "*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8)" (pointer_expression "*(char *)(param_1 + 0x10e2 + lVar6)" * (cast_expression "(char *)(param_1 + 0x10e2 + lVar6)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e2 + lVar6)" ( (binary_expression "param_1 + 0x10e2 + lVar6" (binary_expression "param_1 + 0x10e2" identifier + number_literal) + identifier) )))) = (cast_expression "(char)((ulong)lVar7 >> 8)" ( (type_descriptor "char" primitive_type) ) (parenthesized_expression "((ulong)lVar7 >> 8)" ( (binary_expression "(ulong)lVar7 >> 8" (cast_expression "(ulong)lVar7" ( (type_descriptor "ulong" type_identifier) ) identifier) >> number_literal) )))) , (binary_expression "uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)" (binary_expression "uVar4 + 3 < uVar5" (binary_expression "uVar4 + 3" identifier + number_literal) < identifier) && (parenthesized_expression "(*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)" ( (comma_expression "*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5" (assignment_expression "*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7" (pointer_expression "*(char *)(param_1 + 0x10e3 + lVar6)" * (cast_expression "(char *)(param_1 + 0x10e3 + lVar6)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e3 + lVar6)" ( (binary_expression "param_1 + 0x10e3 + lVar6" (binary_expression "param_1 + 0x10e3" identifier + number_literal) + identifier) )))) = (cast_expression "(char)lVar7" ( (type_descriptor "char" primitive_type) ) identifier)) , (binary_expression "uVar4 + 4 < uVar5" (binary_expression "uVar4 + 4" identifier + number_literal) < identifier)) )))) )) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5))))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))" (assignment_expression "*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e4 + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e4 + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e4 + lVar6)" ( (binary_expression "param_1 + 0x10e4 + lVar6" (binary_expression "param_1 + 0x10e4" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))" (binary_expression "uVar4 + 5 < uVar5" (binary_expression "uVar4 + 5" identifier + number_literal) < identifier) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)" (assignment_expression "*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e5 + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e5 + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e5 + lVar6)" ( (binary_expression "param_1 + 0x10e5 + lVar6" (binary_expression "param_1 + 0x10e5" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)" (binary_expression "uVar4 + 6 < uVar5" (binary_expression "uVar4 + 6" identifier + number_literal) < identifier) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5" (assignment_expression "*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e6 + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e6 + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e6 + lVar6)" ( (binary_expression "param_1 + 0x10e6 + lVar6" (binary_expression "param_1 + 0x10e6" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar4 + 7 < uVar5" (binary_expression "uVar4 + 7" identifier + number_literal) < identifier)) )))) )) )))) )) ))) )) ))) )) && (parenthesized_expression "(((*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))) &&\n      ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)))))" ( (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))) &&\n      ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5))))" ( (binary_expression "(*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))) &&\n      ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)))" (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5))))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))" (assignment_expression "*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e7 + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e7 + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e7 + lVar6)" ( (binary_expression "param_1 + 0x10e7 + lVar6" (binary_expression "param_1 + 0x10e7" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))" (binary_expression "uVar4 + 8 < uVar5" (binary_expression "uVar4 + 8" identifier + number_literal) < identifier) && (parenthesized_expression "(((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))" ( (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5))" ( (binary_expression "(*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)" (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)" (assignment_expression "*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e8 + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e8 + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e8 + lVar6)" ( (binary_expression "param_1 + 0x10e8 + lVar6" (binary_expression "param_1 + 0x10e8" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)" (binary_expression "uVar4 + 9 < uVar5" (binary_expression "uVar4 + 9" identifier + number_literal) < identifier) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5" (assignment_expression "*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e9 + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10e9 + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e9 + lVar6)" ( (binary_expression "param_1 + 0x10e9 + lVar6" (binary_expression "param_1 + 0x10e9" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar4 + 10 < uVar5" (binary_expression "uVar4 + 10" identifier + number_literal) < identifier)) )))) )) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5" (assignment_expression "*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10ea + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10ea + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10ea + lVar6)" ( (binary_expression "param_1 + 0x10ea + lVar6" (binary_expression "param_1 + 0x10ea" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar4 + 0xb < uVar5" (binary_expression "uVar4 + 0xb" identifier + number_literal) < identifier)) ))) )) )))) )) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)" (assignment_expression "*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10eb + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10eb + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10eb + lVar6)" ( (binary_expression "param_1 + 0x10eb + lVar6" (binary_expression "param_1 + 0x10eb" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)" (binary_expression "uVar4 + 0xc < uVar5" (binary_expression "uVar4 + 0xc" identifier + number_literal) < identifier) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5" (assignment_expression "*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10ec + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10ec + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10ec + lVar6)" ( (binary_expression "param_1 + 0x10ec + lVar6" (binary_expression "param_1 + 0x10ec" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "uVar4 + 0xd < uVar5" (binary_expression "uVar4 + 0xd" identifier + number_literal) < identifier)) )))) )) ))) )) ))) )) (compound_statement "{\n    *(undefined1 *)(param_1 + 0x10ed + lVar6) = 0;\n    if (uVar4 + 0xe < uVar5) {\n      *(undefined1 *)(param_1 + lVar6 + 0x10ee) = 0;\n      if (uVar4 + 0xf < uVar5) {\n        *(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0;\n      }\n    }\n  }" { (expression_statement "*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0;" (assignment_expression "*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10ed + lVar6)" * (cast_expression "(undefined1 *)(param_1 + 0x10ed + lVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10ed + lVar6)" ( (binary_expression "param_1 + 0x10ed + lVar6" (binary_expression "param_1 + 0x10ed" identifier + number_literal) + identifier) )))) = number_literal) ;) (if_statement "if (uVar4 + 0xe < uVar5) {\n      *(undefined1 *)(param_1 + lVar6 + 0x10ee) = 0;\n      if (uVar4 + 0xf < uVar5) {\n        *(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0;\n      }\n    }" if (parenthesized_expression "(uVar4 + 0xe < uVar5)" ( (binary_expression "uVar4 + 0xe < uVar5" (binary_expression "uVar4 + 0xe" identifier + number_literal) < identifier) )) (compound_statement "{\n      *(undefined1 *)(param_1 + lVar6 + 0x10ee) = 0;\n      if (uVar4 + 0xf < uVar5) {\n        *(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0;\n      }\n    }" { (expression_statement "*(undefined1 *)(param_1 + lVar6 + 0x10ee) = 0;" (assignment_expression "*(undefined1 *)(param_1 + lVar6 + 0x10ee) = 0" (pointer_expression "*(undefined1 *)(param_1 + lVar6 + 0x10ee)" * (cast_expression "(undefined1 *)(param_1 + lVar6 + 0x10ee)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + lVar6 + 0x10ee)" ( (binary_expression "param_1 + lVar6 + 0x10ee" (binary_expression "param_1 + lVar6" identifier + identifier) + number_literal) )))) = number_literal) ;) (if_statement "if (uVar4 + 0xf < uVar5) {\n        *(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0;\n      }" if (parenthesized_expression "(uVar4 + 0xf < uVar5)" ( (binary_expression "uVar4 + 0xf < uVar5" (binary_expression "uVar4 + 0xf" identifier + number_literal) < identifier) )) (compound_statement "{\n        *(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0;\n      }" { (expression_statement "*(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0;" (assignment_expression "*(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0" (pointer_expression "*(undefined1 *)(param_1 + lVar6 + 0x10ef)" * (cast_expression "(undefined1 *)(param_1 + lVar6 + 0x10ef)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + lVar6 + 0x10ef)" ( (binary_expression "param_1 + lVar6 + 0x10ef" (binary_expression "param_1 + lVar6" identifier + identifier) + number_literal) )))) = number_literal) ;) })) })) })) (expression_statement "iVar3 = (**(code **)(PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28))\n                    (param_1 + 0x10e0,param_1 + 0x10e0,param_1);" (assignment_expression "iVar3 = (**(code **)(PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28))\n                    (param_1 + 0x10e0,param_1 + 0x10e0,param_1)" identifier = (call_expression "(**(code **)(PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28))\n                    (param_1 + 0x10e0,param_1 + 0x10e0,param_1)" (parenthesized_expression "(**(code **)(PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28))" ( (pointer_expression "**(code **)(PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28)" * (pointer_expression "*(code **)(PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28)" * (cast_expression "(code **)(PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28)" ( (binary_expression "PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28" (binary_expression "PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0" identifier + (binary_expression "(long)*(int *)(param_1 + 0x10a0) * 0xc0" (cast_expression "(long)*(int *)(param_1 + 0x10a0)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "*(int *)(param_1 + 0x10a0)" * (cast_expression "(int *)(param_1 + 0x10a0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10a0)" ( (binary_expression "param_1 + 0x10a0" identifier + number_literal) ))))) * number_literal)) + number_literal) ))))) )) (argument_list "(param_1 + 0x10e0,param_1 + 0x10e0,param_1)" ( (binary_expression "param_1 + 0x10e0" identifier + number_literal) , (binary_expression "param_1 + 0x10e0" identifier + number_literal) , identifier )))) ;) (if_statement "if (iVar3 != 0) {\n    return;\n  }" if (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (compound_statement "{\n    return;\n  }" { (return_statement "return;" return ;) })) (expression_statement "uVar4 = *(ulong *)(param_1 + 0x10c8);" (assignment_expression "uVar4 = *(ulong *)(param_1 + 0x10c8)" identifier = (pointer_expression "*(ulong *)(param_1 + 0x10c8)" * (cast_expression "(ulong *)(param_1 + 0x10c8)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10c8)" ( (binary_expression "param_1 + 0x10c8" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x10a8) = 0;" (assignment_expression "*(undefined4 *)(param_1 + 0x10a8) = 0" (pointer_expression "*(undefined4 *)(param_1 + 0x10a8)" * (cast_expression "(undefined4 *)(param_1 + 0x10a8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10a8)" ( (binary_expression "param_1 + 0x10a8" identifier + number_literal) )))) = number_literal) ;) (if_statement "if (uVar4 != 0) {\n    bVar2 = (byte)(uVar4 >> 8);\n    if (uVar4 < 0xff00) {\n      *(undefined4 *)(param_1 + 0x10a8) = 2;\n      *(byte *)(param_1 + 0x10e0) = *(byte *)(param_1 + 0x10e0) ^ bVar2;\n      *(byte *)(param_1 + 0x10e1) = (byte)uVar4 ^ *(byte *)(param_1 + 0x10e1);\n    }\n    else {\n      *(byte *)(param_1 + 0x10e0) = ~*(byte *)(param_1 + 0x10e0);\n      *(byte *)(param_1 + 0x10e1) = *(byte *)(param_1 + 0x10e1) ^ 0xfe;\n      *(byte *)(param_1 + 0x10e2) = *(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18);\n      *(byte *)(param_1 + 0x10e3) = *(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10);\n      *(byte *)(param_1 + 0x10e4) = *(byte *)(param_1 + 0x10e4) ^ bVar2;\n      *(undefined4 *)(param_1 + 0x10a8) = 6;\n      *(byte *)(param_1 + 0x10e5) = *(byte *)(param_1 + 0x10e5) ^ (byte)uVar4;\n    }\n  }" if (parenthesized_expression "(uVar4 != 0)" ( (binary_expression "uVar4 != 0" identifier != number_literal) )) (compound_statement "{\n    bVar2 = (byte)(uVar4 >> 8);\n    if (uVar4 < 0xff00) {\n      *(undefined4 *)(param_1 + 0x10a8) = 2;\n      *(byte *)(param_1 + 0x10e0) = *(byte *)(param_1 + 0x10e0) ^ bVar2;\n      *(byte *)(param_1 + 0x10e1) = (byte)uVar4 ^ *(byte *)(param_1 + 0x10e1);\n    }\n    else {\n      *(byte *)(param_1 + 0x10e0) = ~*(byte *)(param_1 + 0x10e0);\n      *(byte *)(param_1 + 0x10e1) = *(byte *)(param_1 + 0x10e1) ^ 0xfe;\n      *(byte *)(param_1 + 0x10e2) = *(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18);\n      *(byte *)(param_1 + 0x10e3) = *(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10);\n      *(byte *)(param_1 + 0x10e4) = *(byte *)(param_1 + 0x10e4) ^ bVar2;\n      *(undefined4 *)(param_1 + 0x10a8) = 6;\n      *(byte *)(param_1 + 0x10e5) = *(byte *)(param_1 + 0x10e5) ^ (byte)uVar4;\n    }\n  }" { (expression_statement "bVar2 = (byte)(uVar4 >> 8);" (assignment_expression "bVar2 = (byte)(uVar4 >> 8)" identifier = (call_expression "(byte)(uVar4 >> 8)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "(uVar4 >> 8)" ( (binary_expression "uVar4 >> 8" identifier >> number_literal) )))) ;) (if_statement "if (uVar4 < 0xff00) {\n      *(undefined4 *)(param_1 + 0x10a8) = 2;\n      *(byte *)(param_1 + 0x10e0) = *(byte *)(param_1 + 0x10e0) ^ bVar2;\n      *(byte *)(param_1 + 0x10e1) = (byte)uVar4 ^ *(byte *)(param_1 + 0x10e1);\n    }\n    else {\n      *(byte *)(param_1 + 0x10e0) = ~*(byte *)(param_1 + 0x10e0);\n      *(byte *)(param_1 + 0x10e1) = *(byte *)(param_1 + 0x10e1) ^ 0xfe;\n      *(byte *)(param_1 + 0x10e2) = *(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18);\n      *(byte *)(param_1 + 0x10e3) = *(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10);\n      *(byte *)(param_1 + 0x10e4) = *(byte *)(param_1 + 0x10e4) ^ bVar2;\n      *(undefined4 *)(param_1 + 0x10a8) = 6;\n      *(byte *)(param_1 + 0x10e5) = *(byte *)(param_1 + 0x10e5) ^ (byte)uVar4;\n    }" if (parenthesized_expression "(uVar4 < 0xff00)" ( (binary_expression "uVar4 < 0xff00" identifier < number_literal) )) (compound_statement "{\n      *(undefined4 *)(param_1 + 0x10a8) = 2;\n      *(byte *)(param_1 + 0x10e0) = *(byte *)(param_1 + 0x10e0) ^ bVar2;\n      *(byte *)(param_1 + 0x10e1) = (byte)uVar4 ^ *(byte *)(param_1 + 0x10e1);\n    }" { (expression_statement "*(undefined4 *)(param_1 + 0x10a8) = 2;" (assignment_expression "*(undefined4 *)(param_1 + 0x10a8) = 2" (pointer_expression "*(undefined4 *)(param_1 + 0x10a8)" * (cast_expression "(undefined4 *)(param_1 + 0x10a8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10a8)" ( (binary_expression "param_1 + 0x10a8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(byte *)(param_1 + 0x10e0) = *(byte *)(param_1 + 0x10e0) ^ bVar2;" (assignment_expression "*(byte *)(param_1 + 0x10e0) = *(byte *)(param_1 + 0x10e0) ^ bVar2" (pointer_expression "*(byte *)(param_1 + 0x10e0)" * (cast_expression "(byte *)(param_1 + 0x10e0)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e0)" ( (binary_expression "param_1 + 0x10e0" identifier + number_literal) )))) = (binary_expression "*(byte *)(param_1 + 0x10e0) ^ bVar2" (pointer_expression "*(byte *)(param_1 + 0x10e0)" * (cast_expression "(byte *)(param_1 + 0x10e0)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e0)" ( (binary_expression "param_1 + 0x10e0" identifier + number_literal) )))) ^ identifier)) ;) (expression_statement "*(byte *)(param_1 + 0x10e1) = (byte)uVar4 ^ *(byte *)(param_1 + 0x10e1);" (assignment_expression "*(byte *)(param_1 + 0x10e1) = (byte)uVar4 ^ *(byte *)(param_1 + 0x10e1)" (pointer_expression "*(byte *)(param_1 + 0x10e1)" * (cast_expression "(byte *)(param_1 + 0x10e1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e1)" ( (binary_expression "param_1 + 0x10e1" identifier + number_literal) )))) = (binary_expression "(byte)uVar4 ^ *(byte *)(param_1 + 0x10e1)" (cast_expression "(byte)uVar4" ( (type_descriptor "byte" type_identifier) ) identifier) ^ (pointer_expression "*(byte *)(param_1 + 0x10e1)" * (cast_expression "(byte *)(param_1 + 0x10e1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e1)" ( (binary_expression "param_1 + 0x10e1" identifier + number_literal) )))))) ;) }) (else_clause "else {\n      *(byte *)(param_1 + 0x10e0) = ~*(byte *)(param_1 + 0x10e0);\n      *(byte *)(param_1 + 0x10e1) = *(byte *)(param_1 + 0x10e1) ^ 0xfe;\n      *(byte *)(param_1 + 0x10e2) = *(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18);\n      *(byte *)(param_1 + 0x10e3) = *(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10);\n      *(byte *)(param_1 + 0x10e4) = *(byte *)(param_1 + 0x10e4) ^ bVar2;\n      *(undefined4 *)(param_1 + 0x10a8) = 6;\n      *(byte *)(param_1 + 0x10e5) = *(byte *)(param_1 + 0x10e5) ^ (byte)uVar4;\n    }" else (compound_statement "{\n      *(byte *)(param_1 + 0x10e0) = ~*(byte *)(param_1 + 0x10e0);\n      *(byte *)(param_1 + 0x10e1) = *(byte *)(param_1 + 0x10e1) ^ 0xfe;\n      *(byte *)(param_1 + 0x10e2) = *(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18);\n      *(byte *)(param_1 + 0x10e3) = *(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10);\n      *(byte *)(param_1 + 0x10e4) = *(byte *)(param_1 + 0x10e4) ^ bVar2;\n      *(undefined4 *)(param_1 + 0x10a8) = 6;\n      *(byte *)(param_1 + 0x10e5) = *(byte *)(param_1 + 0x10e5) ^ (byte)uVar4;\n    }" { (expression_statement "*(byte *)(param_1 + 0x10e0) = ~*(byte *)(param_1 + 0x10e0);" (assignment_expression "*(byte *)(param_1 + 0x10e0) = ~*(byte *)(param_1 + 0x10e0)" (pointer_expression "*(byte *)(param_1 + 0x10e0)" * (cast_expression "(byte *)(param_1 + 0x10e0)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e0)" ( (binary_expression "param_1 + 0x10e0" identifier + number_literal) )))) = (unary_expression "~*(byte *)(param_1 + 0x10e0)" ~ (pointer_expression "*(byte *)(param_1 + 0x10e0)" * (cast_expression "(byte *)(param_1 + 0x10e0)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e0)" ( (binary_expression "param_1 + 0x10e0" identifier + number_literal) )))))) ;) (expression_statement "*(byte *)(param_1 + 0x10e1) = *(byte *)(param_1 + 0x10e1) ^ 0xfe;" (assignment_expression "*(byte *)(param_1 + 0x10e1) = *(byte *)(param_1 + 0x10e1) ^ 0xfe" (pointer_expression "*(byte *)(param_1 + 0x10e1)" * (cast_expression "(byte *)(param_1 + 0x10e1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e1)" ( (binary_expression "param_1 + 0x10e1" identifier + number_literal) )))) = (binary_expression "*(byte *)(param_1 + 0x10e1) ^ 0xfe" (pointer_expression "*(byte *)(param_1 + 0x10e1)" * (cast_expression "(byte *)(param_1 + 0x10e1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e1)" ( (binary_expression "param_1 + 0x10e1" identifier + number_literal) )))) ^ number_literal)) ;) (expression_statement "*(byte *)(param_1 + 0x10e2) = *(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18);" (assignment_expression "*(byte *)(param_1 + 0x10e2) = *(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18)" (pointer_expression "*(byte *)(param_1 + 0x10e2)" * (cast_expression "(byte *)(param_1 + 0x10e2)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e2)" ( (binary_expression "param_1 + 0x10e2" identifier + number_literal) )))) = (binary_expression "*(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18)" (pointer_expression "*(byte *)(param_1 + 0x10e2)" * (cast_expression "(byte *)(param_1 + 0x10e2)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e2)" ( (binary_expression "param_1 + 0x10e2" identifier + number_literal) )))) ^ (call_expression "(byte)(uVar4 >> 0x18)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "(uVar4 >> 0x18)" ( (binary_expression "uVar4 >> 0x18" identifier >> number_literal) ))))) ;) (expression_statement "*(byte *)(param_1 + 0x10e3) = *(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10);" (assignment_expression "*(byte *)(param_1 + 0x10e3) = *(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10)" (pointer_expression "*(byte *)(param_1 + 0x10e3)" * (cast_expression "(byte *)(param_1 + 0x10e3)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e3)" ( (binary_expression "param_1 + 0x10e3" identifier + number_literal) )))) = (binary_expression "*(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10)" (pointer_expression "*(byte *)(param_1 + 0x10e3)" * (cast_expression "(byte *)(param_1 + 0x10e3)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e3)" ( (binary_expression "param_1 + 0x10e3" identifier + number_literal) )))) ^ (call_expression "(byte)(uVar4 >> 0x10)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "(uVar4 >> 0x10)" ( (binary_expression "uVar4 >> 0x10" identifier >> number_literal) ))))) ;) (expression_statement "*(byte *)(param_1 + 0x10e4) = *(byte *)(param_1 + 0x10e4) ^ bVar2;" (assignment_expression "*(byte *)(param_1 + 0x10e4) = *(byte *)(param_1 + 0x10e4) ^ bVar2" (pointer_expression "*(byte *)(param_1 + 0x10e4)" * (cast_expression "(byte *)(param_1 + 0x10e4)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e4)" ( (binary_expression "param_1 + 0x10e4" identifier + number_literal) )))) = (binary_expression "*(byte *)(param_1 + 0x10e4) ^ bVar2" (pointer_expression "*(byte *)(param_1 + 0x10e4)" * (cast_expression "(byte *)(param_1 + 0x10e4)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e4)" ( (binary_expression "param_1 + 0x10e4" identifier + number_literal) )))) ^ identifier)) ;) (expression_statement "*(undefined4 *)(param_1 + 0x10a8) = 6;" (assignment_expression "*(undefined4 *)(param_1 + 0x10a8) = 6" (pointer_expression "*(undefined4 *)(param_1 + 0x10a8)" * (cast_expression "(undefined4 *)(param_1 + 0x10a8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10a8)" ( (binary_expression "param_1 + 0x10a8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(byte *)(param_1 + 0x10e5) = *(byte *)(param_1 + 0x10e5) ^ (byte)uVar4;" (assignment_expression "*(byte *)(param_1 + 0x10e5) = *(byte *)(param_1 + 0x10e5) ^ (byte)uVar4" (pointer_expression "*(byte *)(param_1 + 0x10e5)" * (cast_expression "(byte *)(param_1 + 0x10e5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e5)" ( (binary_expression "param_1 + 0x10e5" identifier + number_literal) )))) = (binary_expression "*(byte *)(param_1 + 0x10e5) ^ (byte)uVar4" (pointer_expression "*(byte *)(param_1 + 0x10e5)" * (cast_expression "(byte *)(param_1 + 0x10e5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10e5)" ( (binary_expression "param_1 + 0x10e5" identifier + number_literal) )))) ^ (cast_expression "(byte)uVar4" ( (type_descriptor "byte" type_identifier) ) identifier))) ;) }))) })) (expression_statement "lVar7 = *(long *)(param_1 + 0x10b0);" (assignment_expression "lVar7 = *(long *)(param_1 + 0x10b0)" identifier = (pointer_expression "*(long *)(param_1 + 0x10b0)" * (cast_expression "(long *)(param_1 + 0x10b0)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10b0)" ( (binary_expression "param_1 + 0x10b0" identifier + number_literal) ))))) ;) (expression_statement "*(char *)(param_1 + 0x10f0) = (char)lVar7 + -1;" (assignment_expression "*(char *)(param_1 + 0x10f0) = (char)lVar7 + -1" (pointer_expression "*(char *)(param_1 + 0x10f0)" * (cast_expression "(char *)(param_1 + 0x10f0)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f0)" ( (binary_expression "param_1 + 0x10f0" identifier + number_literal) )))) = (binary_expression "(char)lVar7 + -1" (cast_expression "(char)lVar7" ( (type_descriptor "char" primitive_type) ) identifier) + number_literal)) ;) (if_statement "if (lVar7 == 0xf) {\n    lVar7 = 3;\n    *(undefined2 *)(param_1 + 0x10f1) = 0;\n  }\n  else {\n    *(undefined1 *)(param_1 + 0x10f1) = *param_2;\n    if (((((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&\n        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)) &&\n       (((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))))) {\n      *(undefined1 *)(param_1 + 0x10ff) = param_2[0xe];\n    }\n    if (0xf < 0x10U - lVar7) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x10U - lVar7)) = 0;\n    if (0x11 - lVar7 == 0x10) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x11 - lVar7)) = 0;\n    lVar7 = 0x12 - lVar7;\n    if (lVar7 == 0x10) goto LAB_001331f8;\n  }" if (parenthesized_expression "(lVar7 == 0xf)" ( (binary_expression "lVar7 == 0xf" identifier == number_literal) )) (compound_statement "{\n    lVar7 = 3;\n    *(undefined2 *)(param_1 + 0x10f1) = 0;\n  }" { (expression_statement "lVar7 = 3;" (assignment_expression "lVar7 = 3" identifier = number_literal) ;) (expression_statement "*(undefined2 *)(param_1 + 0x10f1) = 0;" (assignment_expression "*(undefined2 *)(param_1 + 0x10f1) = 0" (pointer_expression "*(undefined2 *)(param_1 + 0x10f1)" * (cast_expression "(undefined2 *)(param_1 + 0x10f1)" ( (type_descriptor "undefined2 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f1)" ( (binary_expression "param_1 + 0x10f1" identifier + number_literal) )))) = number_literal) ;) }) (else_clause "else {\n    *(undefined1 *)(param_1 + 0x10f1) = *param_2;\n    if (((((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&\n        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)) &&\n       (((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))))) {\n      *(undefined1 *)(param_1 + 0x10ff) = param_2[0xe];\n    }\n    if (0xf < 0x10U - lVar7) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x10U - lVar7)) = 0;\n    if (0x11 - lVar7 == 0x10) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x11 - lVar7)) = 0;\n    lVar7 = 0x12 - lVar7;\n    if (lVar7 == 0x10) goto LAB_001331f8;\n  }" else (compound_statement "{\n    *(undefined1 *)(param_1 + 0x10f1) = *param_2;\n    if (((((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&\n        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)) &&\n       (((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))))) {\n      *(undefined1 *)(param_1 + 0x10ff) = param_2[0xe];\n    }\n    if (0xf < 0x10U - lVar7) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x10U - lVar7)) = 0;\n    if (0x11 - lVar7 == 0x10) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x11 - lVar7)) = 0;\n    lVar7 = 0x12 - lVar7;\n    if (lVar7 == 0x10) goto LAB_001331f8;\n  }" { (expression_statement "*(undefined1 *)(param_1 + 0x10f1) = *param_2;" (assignment_expression "*(undefined1 *)(param_1 + 0x10f1) = *param_2" (pointer_expression "*(undefined1 *)(param_1 + 0x10f1)" * (cast_expression "(undefined1 *)(param_1 + 0x10f1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f1)" ( (binary_expression "param_1 + 0x10f1" identifier + number_literal) )))) = (pointer_expression "*param_2" * identifier)) ;) (if_statement "if (((((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&\n        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)) &&\n       (((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))))) {\n      *(undefined1 *)(param_1 + 0x10ff) = param_2[0xe];\n    }" if (parenthesized_expression "(((((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&\n        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)) &&\n       (((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1))))))))" ( (binary_expression "((((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&\n        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)) &&\n       (((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))))" (parenthesized_expression "((((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&\n        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6))" ( (binary_expression "(((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&\n        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)" (parenthesized_expression "(((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7))))))))" ( (binary_expression "((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))" (parenthesized_expression "((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd))" ( (binary_expression "(lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)" (parenthesized_expression "(lVar7 != 0xe)" ( (binary_expression "lVar7 != 0xe" identifier != number_literal) )) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd" (assignment_expression "*(undefined1 *)(param_1 + 0x10f2) = param_2[1]" (pointer_expression "*(undefined1 *)(param_1 + 0x10f2)" * (cast_expression "(undefined1 *)(param_1 + 0x10f2)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f2)" ( (binary_expression "param_1 + 0x10f2" identifier + number_literal) )))) = (subscript_expression "param_2[1]" identifier [ number_literal ])) , (binary_expression "lVar7 != 0xd" identifier != number_literal)) ))) )) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7))))))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))" (assignment_expression "*(undefined1 *)(param_1 + 0x10f3) = param_2[2]" (pointer_expression "*(undefined1 *)(param_1 + 0x10f3)" * (cast_expression "(undefined1 *)(param_1 + 0x10f3)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f3)" ( (binary_expression "param_1 + 0x10f3" identifier + number_literal) )))) = (subscript_expression "param_2[2]" identifier [ number_literal ])) , (binary_expression "lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))" (binary_expression "lVar7 != 0xc" identifier != number_literal) && (parenthesized_expression "((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))" ( (parenthesized_expression "(((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7))))" ( (binary_expression "((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))" (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9))" ( (binary_expression "(*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)" (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)" (assignment_expression "*(undefined1 *)(param_1 + 0x10f4) = param_2[3]" (pointer_expression "*(undefined1 *)(param_1 + 0x10f4)" * (cast_expression "(undefined1 *)(param_1 + 0x10f4)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f4)" ( (binary_expression "param_1 + 0x10f4" identifier + number_literal) )))) = (subscript_expression "param_2[3]" identifier [ number_literal ])) , (binary_expression "lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)" (binary_expression "lVar7 != 0xb" identifier != number_literal) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10" (assignment_expression "*(undefined1 *)(param_1 + 0x10f5) = param_2[4]" (pointer_expression "*(undefined1 *)(param_1 + 0x10f5)" * (cast_expression "(undefined1 *)(param_1 + 0x10f5)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f5)" ( (binary_expression "param_1 + 0x10f5" identifier + number_literal) )))) = (subscript_expression "param_2[4]" identifier [ number_literal ])) , (binary_expression "lVar7 != 10" identifier != number_literal)) )))) )) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9" (assignment_expression "*(undefined1 *)(param_1 + 0x10f6) = param_2[5]" (pointer_expression "*(undefined1 *)(param_1 + 0x10f6)" * (cast_expression "(undefined1 *)(param_1 + 0x10f6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f6)" ( (binary_expression "param_1 + 0x10f6" identifier + number_literal) )))) = (subscript_expression "param_2[5]" identifier [ number_literal ])) , (binary_expression "lVar7 != 9" identifier != number_literal)) ))) )) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)" (assignment_expression "*(undefined1 *)(param_1 + 0x10f7) = param_2[6]" (pointer_expression "*(undefined1 *)(param_1 + 0x10f7)" * (cast_expression "(undefined1 *)(param_1 + 0x10f7)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f7)" ( (binary_expression "param_1 + 0x10f7" identifier + number_literal) )))) = (subscript_expression "param_2[6]" identifier [ number_literal ])) , (binary_expression "lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)" (binary_expression "lVar7 != 8" identifier != number_literal) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7" (assignment_expression "*(undefined1 *)(param_1 + 0x10f8) = param_2[7]" (pointer_expression "*(undefined1 *)(param_1 + 0x10f8)" * (cast_expression "(undefined1 *)(param_1 + 0x10f8)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f8)" ( (binary_expression "param_1 + 0x10f8" identifier + number_literal) )))) = (subscript_expression "param_2[7]" identifier [ number_literal ])) , (binary_expression "lVar7 != 7" identifier != number_literal)) )))) )) ))) )) )))) )) ))) )) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6" (assignment_expression "*(undefined1 *)(param_1 + 0x10f9) = param_2[8]" (pointer_expression "*(undefined1 *)(param_1 + 0x10f9)" * (cast_expression "(undefined1 *)(param_1 + 0x10f9)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f9)" ( (binary_expression "param_1 + 0x10f9" identifier + number_literal) )))) = (subscript_expression "param_2[8]" identifier [ number_literal ])) , (binary_expression "lVar7 != 6" identifier != number_literal)) ))) )) && (parenthesized_expression "(((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))))" ( (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1))))))" ( (binary_expression "(*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))" (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)" (assignment_expression "*(undefined1 *)(param_1 + 0x10fa) = param_2[9]" (pointer_expression "*(undefined1 *)(param_1 + 0x10fa)" * (cast_expression "(undefined1 *)(param_1 + 0x10fa)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10fa)" ( (binary_expression "param_1 + 0x10fa" identifier + number_literal) )))) = (subscript_expression "param_2[9]" identifier [ number_literal ])) , (binary_expression "lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)" (binary_expression "lVar7 != 5" identifier != number_literal) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4" (assignment_expression "*(undefined1 *)(param_1 + 0x10fb) = param_2[10]" (pointer_expression "*(undefined1 *)(param_1 + 0x10fb)" * (cast_expression "(undefined1 *)(param_1 + 0x10fb)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10fb)" ( (binary_expression "param_1 + 0x10fb" identifier + number_literal) )))) = (subscript_expression "param_2[10]" identifier [ number_literal ])) , (binary_expression "lVar7 != 4" identifier != number_literal)) )))) )) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1))))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))" (assignment_expression "*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb]" (pointer_expression "*(undefined1 *)(param_1 + 0x10fc)" * (cast_expression "(undefined1 *)(param_1 + 0x10fc)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10fc)" ( (binary_expression "param_1 + 0x10fc" identifier + number_literal) )))) = (subscript_expression "param_2[0xb]" identifier [ number_literal ])) , (binary_expression "lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))" (binary_expression "lVar7 != 3" identifier != number_literal) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)" (assignment_expression "*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc]" (pointer_expression "*(undefined1 *)(param_1 + 0x10fd)" * (cast_expression "(undefined1 *)(param_1 + 0x10fd)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10fd)" ( (binary_expression "param_1 + 0x10fd" identifier + number_literal) )))) = (subscript_expression "param_2[0xc]" identifier [ number_literal ])) , (binary_expression "lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)" (binary_expression "lVar7 != 2" identifier != number_literal) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1" (assignment_expression "*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd]" (pointer_expression "*(undefined1 *)(param_1 + 0x10fe)" * (cast_expression "(undefined1 *)(param_1 + 0x10fe)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10fe)" ( (binary_expression "param_1 + 0x10fe" identifier + number_literal) )))) = (subscript_expression "param_2[0xd]" identifier [ number_literal ])) , (binary_expression "lVar7 != 1" identifier != number_literal)) )))) )) )))) )) ))) )) ))) )) (compound_statement "{\n      *(undefined1 *)(param_1 + 0x10ff) = param_2[0xe];\n    }" { (expression_statement "*(undefined1 *)(param_1 + 0x10ff) = param_2[0xe];" (assignment_expression "*(undefined1 *)(param_1 + 0x10ff) = param_2[0xe]" (pointer_expression "*(undefined1 *)(param_1 + 0x10ff)" * (cast_expression "(undefined1 *)(param_1 + 0x10ff)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10ff)" ( (binary_expression "param_1 + 0x10ff" identifier + number_literal) )))) = (subscript_expression "param_2[0xe]" identifier [ number_literal ])) ;) })) (if_statement "if (0xf < 0x10U - lVar7) goto LAB_001331f8;" if (parenthesized_expression "(0xf < 0x10U - lVar7)" ( (binary_expression "0xf < 0x10U - lVar7" number_literal < (binary_expression "0x10U - lVar7" number_literal - identifier)) )) (goto_statement "goto LAB_001331f8;" goto statement_identifier ;)) (expression_statement "*(undefined1 *)(param_1 + 0x10f0 + (0x10U - lVar7)) = 0;" (assignment_expression "*(undefined1 *)(param_1 + 0x10f0 + (0x10U - lVar7)) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f0 + (0x10U - lVar7))" * (cast_expression "(undefined1 *)(param_1 + 0x10f0 + (0x10U - lVar7))" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f0 + (0x10U - lVar7))" ( (binary_expression "param_1 + 0x10f0 + (0x10U - lVar7)" (binary_expression "param_1 + 0x10f0" identifier + number_literal) + (parenthesized_expression "(0x10U - lVar7)" ( (binary_expression "0x10U - lVar7" number_literal - identifier) ))) )))) = number_literal) ;) (if_statement "if (0x11 - lVar7 == 0x10) goto LAB_001331f8;" if (parenthesized_expression "(0x11 - lVar7 == 0x10)" ( (binary_expression "0x11 - lVar7 == 0x10" (binary_expression "0x11 - lVar7" number_literal - identifier) == number_literal) )) (goto_statement "goto LAB_001331f8;" goto statement_identifier ;)) (expression_statement "*(undefined1 *)(param_1 + 0x10f0 + (0x11 - lVar7)) = 0;" (assignment_expression "*(undefined1 *)(param_1 + 0x10f0 + (0x11 - lVar7)) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f0 + (0x11 - lVar7))" * (cast_expression "(undefined1 *)(param_1 + 0x10f0 + (0x11 - lVar7))" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f0 + (0x11 - lVar7))" ( (binary_expression "param_1 + 0x10f0 + (0x11 - lVar7)" (binary_expression "param_1 + 0x10f0" identifier + number_literal) + (parenthesized_expression "(0x11 - lVar7)" ( (binary_expression "0x11 - lVar7" number_literal - identifier) ))) )))) = number_literal) ;) (expression_statement "lVar7 = 0x12 - lVar7;" (assignment_expression "lVar7 = 0x12 - lVar7" identifier = (binary_expression "0x12 - lVar7" number_literal - identifier)) ;) (if_statement "if (lVar7 == 0x10) goto LAB_001331f8;" if (parenthesized_expression "(lVar7 == 0x10)" ( (binary_expression "lVar7 == 0x10" identifier == number_literal) )) (goto_statement "goto LAB_001331f8;" goto statement_identifier ;)) }))) (expression_statement "*(undefined1 *)(param_1 + 0x10f0 + lVar7) = 0;" (assignment_expression "*(undefined1 *)(param_1 + 0x10f0 + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f0 + lVar7)" * (cast_expression "(undefined1 *)(param_1 + 0x10f0 + lVar7)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f0 + lVar7)" ( (binary_expression "param_1 + 0x10f0 + lVar7" (binary_expression "param_1 + 0x10f0" identifier + number_literal) + identifier) )))) = number_literal) ;) (if_statement "if (((((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)) &&\n       (*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd)) &&\n      (((*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&\n       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))))))) &&\n     ((*(undefined1 *)(param_1 + 0x10f8 + lVar7) = 0, lVar7 != 7 &&\n      (((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)))))) {\n    *(undefined1 *)(param_1 + 0x10ff) = 0;\n  }" if (parenthesized_expression "(((((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)) &&\n       (*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd)) &&\n      (((*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&\n       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))))))) &&\n     ((*(undefined1 *)(param_1 + 0x10f8 + lVar7) = 0, lVar7 != 7 &&\n      (((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3))))))" ( (binary_expression "((((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)) &&\n       (*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd)) &&\n      (((*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&\n       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))))))) &&\n     ((*(undefined1 *)(param_1 + 0x10f8 + lVar7) = 0, lVar7 != 7 &&\n      (((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)))))" (parenthesized_expression "((((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)) &&\n       (*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd)) &&\n      (((*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&\n       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8))))))))" ( (binary_expression "(((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)) &&\n       (*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd)) &&\n      (((*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&\n       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))))))" (parenthesized_expression "(((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)) &&\n       (*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd))" ( (binary_expression "((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)) &&\n       (*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd)" (parenthesized_expression "((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe))" ( (binary_expression "(lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)" (parenthesized_expression "(lVar7 != 0xf)" ( (binary_expression "lVar7 != 0xf" identifier != number_literal) )) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe" (assignment_expression "*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f1 + lVar7)" * (cast_expression "(undefined1 *)(param_1 + 0x10f1 + lVar7)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f1 + lVar7)" ( (binary_expression "param_1 + 0x10f1 + lVar7" (binary_expression "param_1 + 0x10f1" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "lVar7 != 0xe" identifier != number_literal)) ))) )) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd" (assignment_expression "*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f2 + lVar7)" * (cast_expression "(undefined1 *)(param_1 + 0x10f2 + lVar7)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f2 + lVar7)" ( (binary_expression "param_1 + 0x10f2 + lVar7" (binary_expression "param_1 + 0x10f2" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "lVar7 != 0xd" identifier != number_literal)) ))) )) && (parenthesized_expression "(((*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&\n       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))))))" ( (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&\n       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8))))))" ( (binary_expression "(*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&\n       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))))" (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)" (assignment_expression "*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f3 + lVar7)" * (cast_expression "(undefined1 *)(param_1 + 0x10f3 + lVar7)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f3 + lVar7)" ( (binary_expression "param_1 + 0x10f3 + lVar7" (binary_expression "param_1 + 0x10f3" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)" (binary_expression "lVar7 != 0xc" identifier != number_literal) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb" (assignment_expression "*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f4 + lVar7)" * (cast_expression "(undefined1 *)(param_1 + 0x10f4 + lVar7)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f4 + lVar7)" ( (binary_expression "param_1 + 0x10f4 + lVar7" (binary_expression "param_1 + 0x10f4" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "lVar7 != 0xb" identifier != number_literal)) )))) )) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8))))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))" (assignment_expression "*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f5 + lVar7)" * (cast_expression "(undefined1 *)(param_1 + 0x10f5 + lVar7)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f5 + lVar7)" ( (binary_expression "param_1 + 0x10f5 + lVar7" (binary_expression "param_1 + 0x10f5" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))" (binary_expression "lVar7 != 10" identifier != number_literal) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)" (assignment_expression "*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f6 + lVar7)" * (cast_expression "(undefined1 *)(param_1 + 0x10f6 + lVar7)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f6 + lVar7)" ( (binary_expression "param_1 + 0x10f6 + lVar7" (binary_expression "param_1 + 0x10f6" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)" (binary_expression "lVar7 != 9" identifier != number_literal) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8" (assignment_expression "*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f7 + lVar7)" * (cast_expression "(undefined1 *)(param_1 + 0x10f7 + lVar7)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f7 + lVar7)" ( (binary_expression "param_1 + 0x10f7 + lVar7" (binary_expression "param_1 + 0x10f7" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "lVar7 != 8" identifier != number_literal)) )))) )) )))) )) ))) )) ))) )) && (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10f8 + lVar7) = 0, lVar7 != 7 &&\n      (((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)))))" ( (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f8 + lVar7) = 0, lVar7 != 7 &&\n      (((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3))))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f8 + lVar7) = 0, lVar7 != 7 &&\n      (((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)))" (assignment_expression "*(undefined1 *)(param_1 + 0x10f8 + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f8 + lVar7)" * (cast_expression "(undefined1 *)(param_1 + 0x10f8 + lVar7)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f8 + lVar7)" ( (binary_expression "param_1 + 0x10f8 + lVar7" (binary_expression "param_1 + 0x10f8" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "lVar7 != 7 &&\n      (((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)))" (binary_expression "lVar7 != 7" identifier != number_literal) && (parenthesized_expression "(((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)))" ( (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3))" ( (binary_expression "(*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)" (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5))" ( (comma_expression "*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)" (assignment_expression "*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f9 + lVar7)" * (cast_expression "(undefined1 *)(param_1 + 0x10f9 + lVar7)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10f9 + lVar7)" ( (binary_expression "param_1 + 0x10f9 + lVar7" (binary_expression "param_1 + 0x10f9" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)" (binary_expression "lVar7 != 6" identifier != number_literal) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5" (assignment_expression "*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10fa + lVar7)" * (cast_expression "(undefined1 *)(param_1 + 0x10fa + lVar7)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10fa + lVar7)" ( (binary_expression "param_1 + 0x10fa + lVar7" (binary_expression "param_1 + 0x10fa" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "lVar7 != 5" identifier != number_literal)) )))) )) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)" ( (comma_expression "*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3" (assignment_expression "*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10fb + lVar7)" * (cast_expression "(undefined1 *)(param_1 + 0x10fb + lVar7)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10fb + lVar7)" ( (binary_expression "param_1 + 0x10fb + lVar7" (binary_expression "param_1 + 0x10fb" identifier + number_literal) + identifier) )))) = number_literal) , (binary_expression "lVar7 == 3" identifier == number_literal)) ))) )) )))) )) ))) )) (compound_statement "{\n    *(undefined1 *)(param_1 + 0x10ff) = 0;\n  }" { (expression_statement "*(undefined1 *)(param_1 + 0x10ff) = 0;" (assignment_expression "*(undefined1 *)(param_1 + 0x10ff) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10ff)" * (cast_expression "(undefined1 *)(param_1 + 0x10ff)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10ff)" ( (binary_expression "param_1 + 0x10ff" identifier + number_literal) )))) = number_literal) ;) })) (labeled_statement "LAB_001331f8:\n  *(undefined1 *)(param_1 + 0x1110) = 0x10;" statement_identifier : (expression_statement "*(undefined1 *)(param_1 + 0x1110) = 0x10;" (assignment_expression "*(undefined1 *)(param_1 + 0x1110) = 0x10" (pointer_expression "*(undefined1 *)(param_1 + 0x1110)" * (cast_expression "(undefined1 *)(param_1 + 0x1110)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1110)" ( (binary_expression "param_1 + 0x1110" identifier + number_literal) )))) = number_literal) ;)) (return_statement "return;" return ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration (sized_type_specifier long) IDENT) , (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , (string_literal " string_content ") , LIT ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , (string_literal " string_content ") , LIT ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (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 = (binary_expression LIT - IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression LIT - IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (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 = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) << LIT) | (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) >> LIT) )) << LIT) )))) | (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - LIT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (goto_statement goto statement_identifier ;))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) , (binary_expression IDENT != LIT)) ))) )) && (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) , (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) , (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) , (binary_expression IDENT != LIT)) )))) )) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) , (binary_expression IDENT != LIT)) ))) )) && (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) , (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) , (binary_expression IDENT != LIT)) )))) )) ))) )) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) , (binary_expression IDENT != LIT)) ))) )) )))) )) ))) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) , (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) , (binary_expression IDENT != LIT)) )))) )) && (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) , (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) , (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) , (binary_expression IDENT != LIT)) )))) )) )))) )) ))) )) ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression LIT < IDENT) )) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) , (binary_expression IDENT != LIT)) ))) )) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) , (binary_expression IDENT != LIT)) ))) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) , (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) , (binary_expression IDENT != LIT)) )))) )) && (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) , (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) , (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) , (binary_expression IDENT != LIT)) )))) )) )))) )) ))) )) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) , (binary_expression IDENT != LIT)) ))) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) , (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) , (binary_expression IDENT != LIT)) )))) )) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) , (binary_expression IDENT != LIT)) ))) )) && (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) , (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) , (binary_expression IDENT != LIT)) )))) )) ))) )) ))) )) ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < 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) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = LIT) , (binary_expression IDENT == LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT << IDENT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT << LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) }))) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT < IDENT) )) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) , (binary_expression (binary_expression IDENT + LIT) < IDENT)) ))) )) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) , (binary_expression (binary_expression IDENT + LIT) < IDENT)) ))) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) , (binary_expression (binary_expression (binary_expression IDENT + LIT) < IDENT) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) , (binary_expression (binary_expression IDENT + LIT) < IDENT)) )))) )) && (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) , (binary_expression (binary_expression (binary_expression IDENT + LIT) < IDENT) && (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) , (binary_expression (binary_expression (binary_expression IDENT + LIT) < IDENT) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) , (binary_expression (binary_expression IDENT + LIT) < IDENT)) )))) )) )))) )) ))) )) ))) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) , (binary_expression (binary_expression (binary_expression IDENT + LIT) < IDENT) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) , (binary_expression (binary_expression (binary_expression IDENT + LIT) < IDENT) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) , (binary_expression (binary_expression IDENT + LIT) < IDENT)) )))) )) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) , (binary_expression (binary_expression IDENT + LIT) < IDENT)) ))) )) )))) )) && (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) , (binary_expression (binary_expression (binary_expression IDENT + LIT) < IDENT) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) , (binary_expression (binary_expression IDENT + LIT) < IDENT)) )))) )) ))) )) ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) < IDENT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + IDENT) + LIT) )))) = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) < IDENT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + IDENT) + 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 (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) * LIT)) + LIT) ))))) )) (argument_list ( (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (return_statement return ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ^ IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) 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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (unary_expression ~ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (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) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ^ (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ^ (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (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) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ^ (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) }))) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) , (binary_expression IDENT != LIT)) ))) )) && (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) , (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) , (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) , (binary_expression IDENT != LIT)) )))) )) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) , (binary_expression IDENT != LIT)) ))) )) && (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) , (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) , (binary_expression IDENT != LIT)) )))) )) ))) )) )))) )) ))) )) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) , (binary_expression IDENT != LIT)) ))) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) , (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) , (binary_expression IDENT != LIT)) )))) )) && (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) , (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) , (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) , (binary_expression IDENT != LIT)) )))) )) )))) )) ))) )) ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) ;) })) (if_statement if (parenthesized_expression ( (binary_expression LIT < (binary_expression LIT - IDENT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + (parenthesized_expression ( (binary_expression LIT - IDENT) ))) )))) = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression LIT - IDENT) == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + (parenthesized_expression ( (binary_expression LIT - IDENT) ))) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression LIT - IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) , (binary_expression IDENT != LIT)) ))) )) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) , (binary_expression IDENT != LIT)) ))) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) , (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) , (binary_expression IDENT != LIT)) )))) )) && (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) , (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) , (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) , (binary_expression IDENT != LIT)) )))) )) )))) )) ))) )) ))) )) && (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) , (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) , (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) , (binary_expression IDENT != LIT)) )))) )) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) = LIT) , (binary_expression IDENT == LIT)) ))) )) )))) )) ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;)) (return_statement return ;) })))
(function_definition "void ccm_add_nonce(long param_1,undefined1 *param_2,ulong param_3)\n\n{\n  ulong uVar1;\n  byte bVar2;\n  int iVar3;\n  ulong uVar4;\n  ulong uVar5;\n  long lVar6;\n  long lVar7;\n  long lVar8;\n  \n  if (param_1 == 0) {\n                    \n    crypt_argchk("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a);\n  }\n  if (param_2 == (undefined1 *)0x0) {\n                    \n    crypt_argchk("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b);\n  }\n  if (0xd < param_3) {\n    param_3 = 0xd;\n  }\n  uVar4 = *(ulong *)(param_1 + 0x10b0);\n  uVar5 = 0xf - param_3;\n  *(ulong *)(param_1 + 0x10d8) = param_3;\n  if (uVar4 < uVar5) {\n    *(ulong *)(param_1 + 0x10b0) = uVar5;\n  }\n  else {\n    uVar1 = param_3 + uVar4;\n    param_3 = 0xf - uVar4;\n    uVar5 = uVar4;\n    if (0xf < uVar1) {\n      *(ulong *)(param_1 + 0x10d8) = param_3;\n    }\n  }\n  lVar7 = *(long *)(param_1 + 0x10b8);\n  *(byte *)(param_1 + 0x10e0) =\n       (*(long *)(param_1 + 0x10c8) != 0) << 6 | (byte)((*(int *)(param_1 + 0x10a4) + -2 >> 1) << 3)\n       | (char)uVar5 - 1U;\n  if (param_3 == 0) {\n    lVar6 = 1;\nLAB_00133225:\n    if (uVar5 < 5) goto LAB_00132d92;\n    *(undefined1 *)(param_1 + 0x10e0 + lVar6) = 0;\n    if ((((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)) &&\n        ((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))))) &&\n       (((*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&\n        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))))))) {\n      *(undefined1 *)(param_1 + 0x10ee + lVar6) = 0;\n    }\n    uVar4 = uVar5 - 4;\n    lVar6 = lVar6 + uVar4;\n  }\n  else {\n    *(undefined1 *)(param_1 + 0x10e1) = *param_2;\n    if ((((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&\n        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)) &&\n       (((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))))) {\n      *(undefined1 *)(param_1 + 0x10ef) = param_2[0xe];\n    }\n    lVar6 = param_3 + 1;\n    if (3 < uVar5) goto LAB_00133225;\n    iVar3 = 8;\n    if ((uVar5 == 3) || (iVar3 = 0x10, uVar5 == 2)) {\n      lVar7 = lVar7 << iVar3;\n    }\n    else {\n      lVar8 = lVar7 << 0x18;\n      lVar7 = 0;\n      if (uVar5 != 0) {\n        lVar7 = lVar8;\n      }\n    }\nLAB_00132d92:\n    uVar4 = 0;\n  }\n  if (((((uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)) &&\n       (*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5)) &&\n      (((*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&\n       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))))))) &&\n     (((*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))) &&\n      ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)))))) {\n    *(undefined1 *)(param_1 + 0x10ed + lVar6) = 0;\n    if (uVar4 + 0xe < uVar5) {\n      *(undefined1 *)(param_1 + lVar6 + 0x10ee) = 0;\n      if (uVar4 + 0xf < uVar5) {\n        *(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0;\n      }\n    }\n  }\n  iVar3 = (**(code **)(PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28))\n                    (param_1 + 0x10e0,param_1 + 0x10e0,param_1);\n  if (iVar3 != 0) {\n    return;\n  }\n  uVar4 = *(ulong *)(param_1 + 0x10c8);\n  *(undefined4 *)(param_1 + 0x10a8) = 0;\n  if (uVar4 != 0) {\n    bVar2 = (byte)(uVar4 >> 8);\n    if (uVar4 < 0xff00) {\n      *(undefined4 *)(param_1 + 0x10a8) = 2;\n      *(byte *)(param_1 + 0x10e0) = *(byte *)(param_1 + 0x10e0) ^ bVar2;\n      *(byte *)(param_1 + 0x10e1) = (byte)uVar4 ^ *(byte *)(param_1 + 0x10e1);\n    }\n    else {\n      *(byte *)(param_1 + 0x10e0) = ~*(byte *)(param_1 + 0x10e0);\n      *(byte *)(param_1 + 0x10e1) = *(byte *)(param_1 + 0x10e1) ^ 0xfe;\n      *(byte *)(param_1 + 0x10e2) = *(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18);\n      *(byte *)(param_1 + 0x10e3) = *(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10);\n      *(byte *)(param_1 + 0x10e4) = *(byte *)(param_1 + 0x10e4) ^ bVar2;\n      *(undefined4 *)(param_1 + 0x10a8) = 6;\n      *(byte *)(param_1 + 0x10e5) = *(byte *)(param_1 + 0x10e5) ^ (byte)uVar4;\n    }\n  }\n  lVar7 = *(long *)(param_1 + 0x10b0);\n  *(char *)(param_1 + 0x10f0) = (char)lVar7 + -1;\n  if (lVar7 == 0xf) {\n    lVar7 = 3;\n    *(undefined2 *)(param_1 + 0x10f1) = 0;\n  }\n  else {\n    *(undefined1 *)(param_1 + 0x10f1) = *param_2;\n    if (((((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&\n        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)) &&\n       (((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))))) {\n      *(undefined1 *)(param_1 + 0x10ff) = param_2[0xe];\n    }\n    if (0xf < 0x10U - lVar7) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x10U - lVar7)) = 0;\n    if (0x11 - lVar7 == 0x10) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x11 - lVar7)) = 0;\n    lVar7 = 0x12 - lVar7;\n    if (lVar7 == 0x10) goto LAB_001331f8;\n  }\n  *(undefined1 *)(param_1 + 0x10f0 + lVar7) = 0;\n  if (((((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)) &&\n       (*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd)) &&\n      (((*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&\n       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))))))) &&\n     ((*(undefined1 *)(param_1 + 0x10f8 + lVar7) = 0, lVar7 != 7 &&\n      (((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)))))) {\n    *(undefined1 *)(param_1 + 0x10ff) = 0;\n  }\nLAB_001331f8:\n  *(undefined1 *)(param_1 + 0x1110) = 0x10;\n  return;\n}" (primitive_type "void") (function_declarator "ccm_add_nonce(long param_1,undefined1 *param_2,ulong param_3)" (identifier "ccm_add_nonce") (parameter_list "(long param_1,undefined1 *param_2,ulong param_3)" (( "(") (parameter_declaration "long param_1" (sized_type_specifier "long" (long "long")) (identifier "param_1")) (, ",") (parameter_declaration "undefined1 *param_2" (type_identifier "undefined1") (pointer_declarator "*param_2" (* "*") (identifier "param_2"))) (, ",") (parameter_declaration "ulong param_3" (type_identifier "ulong") (identifier "param_3")) () ")"))) (compound_statement "{\n  ulong uVar1;\n  byte bVar2;\n  int iVar3;\n  ulong uVar4;\n  ulong uVar5;\n  long lVar6;\n  long lVar7;\n  long lVar8;\n  \n  if (param_1 == 0) {\n                    \n    crypt_argchk("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a);\n  }\n  if (param_2 == (undefined1 *)0x0) {\n                    \n    crypt_argchk("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b);\n  }\n  if (0xd < param_3) {\n    param_3 = 0xd;\n  }\n  uVar4 = *(ulong *)(param_1 + 0x10b0);\n  uVar5 = 0xf - param_3;\n  *(ulong *)(param_1 + 0x10d8) = param_3;\n  if (uVar4 < uVar5) {\n    *(ulong *)(param_1 + 0x10b0) = uVar5;\n  }\n  else {\n    uVar1 = param_3 + uVar4;\n    param_3 = 0xf - uVar4;\n    uVar5 = uVar4;\n    if (0xf < uVar1) {\n      *(ulong *)(param_1 + 0x10d8) = param_3;\n    }\n  }\n  lVar7 = *(long *)(param_1 + 0x10b8);\n  *(byte *)(param_1 + 0x10e0) =\n       (*(long *)(param_1 + 0x10c8) != 0) << 6 | (byte)((*(int *)(param_1 + 0x10a4) + -2 >> 1) << 3)\n       | (char)uVar5 - 1U;\n  if (param_3 == 0) {\n    lVar6 = 1;\nLAB_00133225:\n    if (uVar5 < 5) goto LAB_00132d92;\n    *(undefined1 *)(param_1 + 0x10e0 + lVar6) = 0;\n    if ((((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)) &&\n        ((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))))) &&\n       (((*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&\n        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))))))) {\n      *(undefined1 *)(param_1 + 0x10ee + lVar6) = 0;\n    }\n    uVar4 = uVar5 - 4;\n    lVar6 = lVar6 + uVar4;\n  }\n  else {\n    *(undefined1 *)(param_1 + 0x10e1) = *param_2;\n    if ((((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&\n        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)) &&\n       (((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))))) {\n      *(undefined1 *)(param_1 + 0x10ef) = param_2[0xe];\n    }\n    lVar6 = param_3 + 1;\n    if (3 < uVar5) goto LAB_00133225;\n    iVar3 = 8;\n    if ((uVar5 == 3) || (iVar3 = 0x10, uVar5 == 2)) {\n      lVar7 = lVar7 << iVar3;\n    }\n    else {\n      lVar8 = lVar7 << 0x18;\n      lVar7 = 0;\n      if (uVar5 != 0) {\n        lVar7 = lVar8;\n      }\n    }\nLAB_00132d92:\n    uVar4 = 0;\n  }\n  if (((((uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)) &&\n       (*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5)) &&\n      (((*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&\n       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))))))) &&\n     (((*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))) &&\n      ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)))))) {\n    *(undefined1 *)(param_1 + 0x10ed + lVar6) = 0;\n    if (uVar4 + 0xe < uVar5) {\n      *(undefined1 *)(param_1 + lVar6 + 0x10ee) = 0;\n      if (uVar4 + 0xf < uVar5) {\n        *(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0;\n      }\n    }\n  }\n  iVar3 = (**(code **)(PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28))\n                    (param_1 + 0x10e0,param_1 + 0x10e0,param_1);\n  if (iVar3 != 0) {\n    return;\n  }\n  uVar4 = *(ulong *)(param_1 + 0x10c8);\n  *(undefined4 *)(param_1 + 0x10a8) = 0;\n  if (uVar4 != 0) {\n    bVar2 = (byte)(uVar4 >> 8);\n    if (uVar4 < 0xff00) {\n      *(undefined4 *)(param_1 + 0x10a8) = 2;\n      *(byte *)(param_1 + 0x10e0) = *(byte *)(param_1 + 0x10e0) ^ bVar2;\n      *(byte *)(param_1 + 0x10e1) = (byte)uVar4 ^ *(byte *)(param_1 + 0x10e1);\n    }\n    else {\n      *(byte *)(param_1 + 0x10e0) = ~*(byte *)(param_1 + 0x10e0);\n      *(byte *)(param_1 + 0x10e1) = *(byte *)(param_1 + 0x10e1) ^ 0xfe;\n      *(byte *)(param_1 + 0x10e2) = *(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18);\n      *(byte *)(param_1 + 0x10e3) = *(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10);\n      *(byte *)(param_1 + 0x10e4) = *(byte *)(param_1 + 0x10e4) ^ bVar2;\n      *(undefined4 *)(param_1 + 0x10a8) = 6;\n      *(byte *)(param_1 + 0x10e5) = *(byte *)(param_1 + 0x10e5) ^ (byte)uVar4;\n    }\n  }\n  lVar7 = *(long *)(param_1 + 0x10b0);\n  *(char *)(param_1 + 0x10f0) = (char)lVar7 + -1;\n  if (lVar7 == 0xf) {\n    lVar7 = 3;\n    *(undefined2 *)(param_1 + 0x10f1) = 0;\n  }\n  else {\n    *(undefined1 *)(param_1 + 0x10f1) = *param_2;\n    if (((((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&\n        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)) &&\n       (((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))))) {\n      *(undefined1 *)(param_1 + 0x10ff) = param_2[0xe];\n    }\n    if (0xf < 0x10U - lVar7) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x10U - lVar7)) = 0;\n    if (0x11 - lVar7 == 0x10) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x11 - lVar7)) = 0;\n    lVar7 = 0x12 - lVar7;\n    if (lVar7 == 0x10) goto LAB_001331f8;\n  }\n  *(undefined1 *)(param_1 + 0x10f0 + lVar7) = 0;\n  if (((((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)) &&\n       (*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd)) &&\n      (((*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&\n       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))))))) &&\n     ((*(undefined1 *)(param_1 + 0x10f8 + lVar7) = 0, lVar7 != 7 &&\n      (((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)))))) {\n    *(undefined1 *)(param_1 + 0x10ff) = 0;\n  }\nLAB_001331f8:\n  *(undefined1 *)(param_1 + 0x1110) = 0x10;\n  return;\n}" ({ "{") (declaration "ulong uVar1;" (type_identifier "ulong") (identifier "uVar1") (; ";")) (declaration "byte bVar2;" (type_identifier "byte") (identifier "bVar2") (; ";")) (declaration "int iVar3;" (primitive_type "int") (identifier "iVar3") (; ";")) (declaration "ulong uVar4;" (type_identifier "ulong") (identifier "uVar4") (; ";")) (declaration "ulong uVar5;" (type_identifier "ulong") (identifier "uVar5") (; ";")) (declaration "long lVar6;" (sized_type_specifier "long" (long "long")) (identifier "lVar6") (; ";")) (declaration "long lVar7;" (sized_type_specifier "long" (long "long")) (identifier "lVar7") (; ";")) (declaration "long lVar8;" (sized_type_specifier "long" (long "long")) (identifier "lVar8") (; ";")) (if_statement "if (param_1 == 0) {\n                    \n    crypt_argchk("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a);\n  }" (if "if") (parenthesized_expression "(param_1 == 0)" (( "(") (binary_expression "param_1 == 0" (identifier "param_1") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    \n    crypt_argchk("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a);\n  }" ({ "{") (expression_statement "crypt_argchk("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a);" (call_expression "crypt_argchk("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a)" (identifier "crypt_argchk") (argument_list "("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a)" (( "(") (string_literal ""ccm != NULL"" (" """) (string_content "ccm != NULL") (" """)) (, ",") (string_literal ""src/encauth/ccm/ccm_add_nonce.c"" (" """) (string_content "src/encauth/ccm/ccm_add_nonce.c") (" """)) (, ",") (number_literal "0x1a") () ")"))) (; ";")) (} "}"))) (if_statement "if (param_2 == (undefined1 *)0x0) {\n                    \n    crypt_argchk("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b);\n  }" (if "if") (parenthesized_expression "(param_2 == (undefined1 *)0x0)" (( "(") (binary_expression "param_2 == (undefined1 *)0x0" (identifier "param_2") (== "==") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                    \n    crypt_argchk("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b);\n  }" ({ "{") (expression_statement "crypt_argchk("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b);" (call_expression "crypt_argchk("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b)" (identifier "crypt_argchk") (argument_list "("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b)" (( "(") (string_literal ""nonce != NULL"" (" """) (string_content "nonce != NULL") (" """)) (, ",") (string_literal ""src/encauth/ccm/ccm_add_nonce.c"" (" """) (string_content "src/encauth/ccm/ccm_add_nonce.c") (" """)) (, ",") (number_literal "0x1b") () ")"))) (; ";")) (} "}"))) (if_statement "if (0xd < param_3) {\n    param_3 = 0xd;\n  }" (if "if") (parenthesized_expression "(0xd < param_3)" (( "(") (binary_expression "0xd < param_3" (number_literal "0xd") (< "<") (identifier "param_3")) () ")")) (compound_statement "{\n    param_3 = 0xd;\n  }" ({ "{") (expression_statement "param_3 = 0xd;" (assignment_expression "param_3 = 0xd" (identifier "param_3") (= "=") (number_literal "0xd")) (; ";")) (} "}"))) (expression_statement "uVar4 = *(ulong *)(param_1 + 0x10b0);" (assignment_expression "uVar4 = *(ulong *)(param_1 + 0x10b0)" (identifier "uVar4") (= "=") (pointer_expression "*(ulong *)(param_1 + 0x10b0)" (* "*") (cast_expression "(ulong *)(param_1 + 0x10b0)" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10b0)" (( "(") (binary_expression "param_1 + 0x10b0" (identifier "param_1") (+ "+") (number_literal "0x10b0")) () ")"))))) (; ";")) (expression_statement "uVar5 = 0xf - param_3;" (assignment_expression "uVar5 = 0xf - param_3" (identifier "uVar5") (= "=") (binary_expression "0xf - param_3" (number_literal "0xf") (- "-") (identifier "param_3"))) (; ";")) (expression_statement "*(ulong *)(param_1 + 0x10d8) = param_3;" (assignment_expression "*(ulong *)(param_1 + 0x10d8) = param_3" (pointer_expression "*(ulong *)(param_1 + 0x10d8)" (* "*") (cast_expression "(ulong *)(param_1 + 0x10d8)" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10d8)" (( "(") (binary_expression "param_1 + 0x10d8" (identifier "param_1") (+ "+") (number_literal "0x10d8")) () ")")))) (= "=") (identifier "param_3")) (; ";")) (if_statement "if (uVar4 < uVar5) {\n    *(ulong *)(param_1 + 0x10b0) = uVar5;\n  }\n  else {\n    uVar1 = param_3 + uVar4;\n    param_3 = 0xf - uVar4;\n    uVar5 = uVar4;\n    if (0xf < uVar1) {\n      *(ulong *)(param_1 + 0x10d8) = param_3;\n    }\n  }" (if "if") (parenthesized_expression "(uVar4 < uVar5)" (( "(") (binary_expression "uVar4 < uVar5" (identifier "uVar4") (< "<") (identifier "uVar5")) () ")")) (compound_statement "{\n    *(ulong *)(param_1 + 0x10b0) = uVar5;\n  }" ({ "{") (expression_statement "*(ulong *)(param_1 + 0x10b0) = uVar5;" (assignment_expression "*(ulong *)(param_1 + 0x10b0) = uVar5" (pointer_expression "*(ulong *)(param_1 + 0x10b0)" (* "*") (cast_expression "(ulong *)(param_1 + 0x10b0)" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10b0)" (( "(") (binary_expression "param_1 + 0x10b0" (identifier "param_1") (+ "+") (number_literal "0x10b0")) () ")")))) (= "=") (identifier "uVar5")) (; ";")) (} "}")) (else_clause "else {\n    uVar1 = param_3 + uVar4;\n    param_3 = 0xf - uVar4;\n    uVar5 = uVar4;\n    if (0xf < uVar1) {\n      *(ulong *)(param_1 + 0x10d8) = param_3;\n    }\n  }" (else "else") (compound_statement "{\n    uVar1 = param_3 + uVar4;\n    param_3 = 0xf - uVar4;\n    uVar5 = uVar4;\n    if (0xf < uVar1) {\n      *(ulong *)(param_1 + 0x10d8) = param_3;\n    }\n  }" ({ "{") (expression_statement "uVar1 = param_3 + uVar4;" (assignment_expression "uVar1 = param_3 + uVar4" (identifier "uVar1") (= "=") (binary_expression "param_3 + uVar4" (identifier "param_3") (+ "+") (identifier "uVar4"))) (; ";")) (expression_statement "param_3 = 0xf - uVar4;" (assignment_expression "param_3 = 0xf - uVar4" (identifier "param_3") (= "=") (binary_expression "0xf - uVar4" (number_literal "0xf") (- "-") (identifier "uVar4"))) (; ";")) (expression_statement "uVar5 = uVar4;" (assignment_expression "uVar5 = uVar4" (identifier "uVar5") (= "=") (identifier "uVar4")) (; ";")) (if_statement "if (0xf < uVar1) {\n      *(ulong *)(param_1 + 0x10d8) = param_3;\n    }" (if "if") (parenthesized_expression "(0xf < uVar1)" (( "(") (binary_expression "0xf < uVar1" (number_literal "0xf") (< "<") (identifier "uVar1")) () ")")) (compound_statement "{\n      *(ulong *)(param_1 + 0x10d8) = param_3;\n    }" ({ "{") (expression_statement "*(ulong *)(param_1 + 0x10d8) = param_3;" (assignment_expression "*(ulong *)(param_1 + 0x10d8) = param_3" (pointer_expression "*(ulong *)(param_1 + 0x10d8)" (* "*") (cast_expression "(ulong *)(param_1 + 0x10d8)" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10d8)" (( "(") (binary_expression "param_1 + 0x10d8" (identifier "param_1") (+ "+") (number_literal "0x10d8")) () ")")))) (= "=") (identifier "param_3")) (; ";")) (} "}"))) (} "}")))) (expression_statement "lVar7 = *(long *)(param_1 + 0x10b8);" (assignment_expression "lVar7 = *(long *)(param_1 + 0x10b8)" (identifier "lVar7") (= "=") (pointer_expression "*(long *)(param_1 + 0x10b8)" (* "*") (cast_expression "(long *)(param_1 + 0x10b8)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10b8)" (( "(") (binary_expression "param_1 + 0x10b8" (identifier "param_1") (+ "+") (number_literal "0x10b8")) () ")"))))) (; ";")) (expression_statement "*(byte *)(param_1 + 0x10e0) =\n       (*(long *)(param_1 + 0x10c8) != 0) << 6 | (byte)((*(int *)(param_1 + 0x10a4) + -2 >> 1) << 3)\n       | (char)uVar5 - 1U;" (assignment_expression "*(byte *)(param_1 + 0x10e0) =\n       (*(long *)(param_1 + 0x10c8) != 0) << 6 | (byte)((*(int *)(param_1 + 0x10a4) + -2 >> 1) << 3)\n       | (char)uVar5 - 1U" (pointer_expression "*(byte *)(param_1 + 0x10e0)" (* "*") (cast_expression "(byte *)(param_1 + 0x10e0)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e0)" (( "(") (binary_expression "param_1 + 0x10e0" (identifier "param_1") (+ "+") (number_literal "0x10e0")) () ")")))) (= "=") (binary_expression "(*(long *)(param_1 + 0x10c8) != 0) << 6 | (byte)((*(int *)(param_1 + 0x10a4) + -2 >> 1) << 3)\n       | (char)uVar5 - 1U" (binary_expression "(*(long *)(param_1 + 0x10c8) != 0) << 6 | (byte)((*(int *)(param_1 + 0x10a4) + -2 >> 1) << 3)" (binary_expression "(*(long *)(param_1 + 0x10c8) != 0) << 6" (parenthesized_expression "(*(long *)(param_1 + 0x10c8) != 0)" (( "(") (binary_expression "*(long *)(param_1 + 0x10c8) != 0" (pointer_expression "*(long *)(param_1 + 0x10c8)" (* "*") (cast_expression "(long *)(param_1 + 0x10c8)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10c8)" (( "(") (binary_expression "param_1 + 0x10c8" (identifier "param_1") (+ "+") (number_literal "0x10c8")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (<< "<<") (number_literal "6")) (| "|") (call_expression "(byte)((*(int *)(param_1 + 0x10a4) + -2 >> 1) << 3)" (parenthesized_expression "(byte)" (( "(") (identifier "byte") () ")")) (argument_list "((*(int *)(param_1 + 0x10a4) + -2 >> 1) << 3)" (( "(") (binary_expression "(*(int *)(param_1 + 0x10a4) + -2 >> 1) << 3" (parenthesized_expression "(*(int *)(param_1 + 0x10a4) + -2 >> 1)" (( "(") (binary_expression "*(int *)(param_1 + 0x10a4) + -2 >> 1" (binary_expression "*(int *)(param_1 + 0x10a4) + -2" (pointer_expression "*(int *)(param_1 + 0x10a4)" (* "*") (cast_expression "(int *)(param_1 + 0x10a4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10a4)" (( "(") (binary_expression "param_1 + 0x10a4" (identifier "param_1") (+ "+") (number_literal "0x10a4")) () ")")))) (+ "+") (number_literal "-2")) (>> ">>") (number_literal "1")) () ")")) (<< "<<") (number_literal "3")) () ")")))) (| "|") (binary_expression "(char)uVar5 - 1U" (cast_expression "(char)uVar5" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "uVar5")) (- "-") (number_literal "1U")))) (; ";")) (if_statement "if (param_3 == 0) {\n    lVar6 = 1;\nLAB_00133225:\n    if (uVar5 < 5) goto LAB_00132d92;\n    *(undefined1 *)(param_1 + 0x10e0 + lVar6) = 0;\n    if ((((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)) &&\n        ((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))))) &&\n       (((*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&\n        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))))))) {\n      *(undefined1 *)(param_1 + 0x10ee + lVar6) = 0;\n    }\n    uVar4 = uVar5 - 4;\n    lVar6 = lVar6 + uVar4;\n  }\n  else {\n    *(undefined1 *)(param_1 + 0x10e1) = *param_2;\n    if ((((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&\n        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)) &&\n       (((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))))) {\n      *(undefined1 *)(param_1 + 0x10ef) = param_2[0xe];\n    }\n    lVar6 = param_3 + 1;\n    if (3 < uVar5) goto LAB_00133225;\n    iVar3 = 8;\n    if ((uVar5 == 3) || (iVar3 = 0x10, uVar5 == 2)) {\n      lVar7 = lVar7 << iVar3;\n    }\n    else {\n      lVar8 = lVar7 << 0x18;\n      lVar7 = 0;\n      if (uVar5 != 0) {\n        lVar7 = lVar8;\n      }\n    }\nLAB_00132d92:\n    uVar4 = 0;\n  }" (if "if") (parenthesized_expression "(param_3 == 0)" (( "(") (binary_expression "param_3 == 0" (identifier "param_3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    lVar6 = 1;\nLAB_00133225:\n    if (uVar5 < 5) goto LAB_00132d92;\n    *(undefined1 *)(param_1 + 0x10e0 + lVar6) = 0;\n    if ((((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)) &&\n        ((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))))) &&\n       (((*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&\n        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))))))) {\n      *(undefined1 *)(param_1 + 0x10ee + lVar6) = 0;\n    }\n    uVar4 = uVar5 - 4;\n    lVar6 = lVar6 + uVar4;\n  }" ({ "{") (expression_statement "lVar6 = 1;" (assignment_expression "lVar6 = 1" (identifier "lVar6") (= "=") (number_literal "1")) (; ";")) (labeled_statement "LAB_00133225:\n    if (uVar5 < 5) goto LAB_00132d92;" (statement_identifier "LAB_00133225") (: ":") (if_statement "if (uVar5 < 5) goto LAB_00132d92;" (if "if") (parenthesized_expression "(uVar5 < 5)" (( "(") (binary_expression "uVar5 < 5" (identifier "uVar5") (< "<") (number_literal "5")) () ")")) (goto_statement "goto LAB_00132d92;" (goto "goto") (statement_identifier "LAB_00132d92") (; ";")))) (expression_statement "*(undefined1 *)(param_1 + 0x10e0 + lVar6) = 0;" (assignment_expression "*(undefined1 *)(param_1 + 0x10e0 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e0 + lVar6)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10e0 + lVar6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e0 + lVar6)" (( "(") (binary_expression "param_1 + 0x10e0 + lVar6" (binary_expression "param_1 + 0x10e0" (identifier "param_1") (+ "+") (number_literal "0x10e0")) (+ "+") (identifier "lVar6")) () ")")))) (= "=") (number_literal "0")) (; ";")) (if_statement "if ((((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)) &&\n        ((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))))) &&\n       (((*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&\n        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))))))) {\n      *(undefined1 *)(param_1 + 0x10ee + lVar6) = 0;\n    }" (if "if") (parenthesized_expression "((((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)) &&\n        ((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))))) &&\n       (((*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&\n        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12))))))))" (( "(") (binary_expression "(((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)) &&\n        ((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))))) &&\n       (((*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&\n        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))))))" (parenthesized_expression "(((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)) &&\n        ((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd))))))" (( "(") (binary_expression "((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)) &&\n        ((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))))" (parenthesized_expression "((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6))" (( "(") (binary_expression "(uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)" (parenthesized_expression "(uVar5 != 5)" (( "(") (binary_expression "uVar5 != 5" (identifier "uVar5") (!= "!=") (number_literal "5")) () ")")) (&& "&&") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6" (assignment_expression "*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e1 + lVar6)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10e1 + lVar6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e1 + lVar6)" (( "(") (binary_expression "param_1 + 0x10e1 + lVar6" (binary_expression "param_1 + 0x10e1" (identifier "param_1") (+ "+") (number_literal "0x10e1")) (+ "+") (identifier "lVar6")) () ")")))) (= "=") (number_literal "0")) (, ",") (binary_expression "uVar5 != 6" (identifier "uVar5") (!= "!=") (number_literal "6"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))))" (( "(") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd))))" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))" (assignment_expression "*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e2 + lVar6)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10e2 + lVar6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e2 + lVar6)" (( "(") (binary_expression "param_1 + 0x10e2 + lVar6" (binary_expression "param_1 + 0x10e2" (identifier "param_1") (+ "+") (number_literal "0x10e2")) (+ "+") (identifier "lVar6")) () ")")))) (= "=") (number_literal "0")) (, ",") (binary_expression "uVar5 != 7 &&\n         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))" (binary_expression "uVar5 != 7" (identifier "uVar5") (!= "!=") (number_literal "7")) (&& "&&") (parenthesized_expression "(((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))" (( "(") (parenthesized_expression "((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd))" (( "(") (binary_expression "(((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&\n          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)" (parenthesized_expression "(((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc))))" (( "(") (binary_expression "((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&\n           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))" (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10))" (( "(") (binary_expression "(*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&\n            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)" (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9))" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)" (assignment_expression "*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e3 + lVar6)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10e3 + lVar6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e3 + lVar6)" (( "(") (binary_expression "param_1 + 0x10e3 + lVar6" (binary_expression "param_1 + 0x10e3" (identifier "param_1") (+ "+") (number_literal "0x10e3")) (+ "+") (identifier "lVar6")) () ")")))) (= "=") (number_literal "0")) (, ",") (binary_expression "uVar5 != 8 &&\n             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)" (binary_expression "uVar5 != 8" (identifier "uVar5") (!= "!=") (number_literal "8")) (&& "&&") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9" (assignment_expression "*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e4 + lVar6)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10e4 + lVar6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e4 + lVar6)" (( "(") (binary_expression "param_1 + 0x10e4 + lVar6" (binary_expression "param_1 + 0x10e4" (identifier "param_1") (+ "+") (number_literal "0x10e4")) (+ "+") (identifier "lVar6")) () ")")))) (= "=") (number_literal "0")) (, ",") (binary_expression "uVar5 != 9" (identifier "uVar5") (!= "!=") (number_literal "9"))) () ")")))) () ")")) (&& "&&") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10" (assignment_expression "*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e5 + lVar6)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10e5 + lVar6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e5 + lVar6)" (( "(") (binary_expression "param_1 + 0x10e5 + lVar6" (binary_expression "param_1 + 0x10e5" (identifier "param_1") (+ "+") (number_literal "0x10e5")) (+ "+") (identifier "lVar6")) () ")")))) (= "=") (number_literal "0")) (, ",") (binary_expression "uVar5 != 10" (identifier "uVar5") (!= "!=") (number_literal "10"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))" (( "(") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc))" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)" (assignment_expression "*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e6 + lVar6)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10e6 + lVar6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e6 + lVar6)" (( "(") (binary_expression "param_1 + 0x10e6 + lVar6" (binary_expression "param_1 + 0x10e6" (identifier "param_1") (+ "+") (number_literal "0x10e6")) (+ "+") (identifier "lVar6")) () ")")))) (= "=") (number_literal "0")) (, ",") (binary_expression "uVar5 != 0xb &&\n            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)" (binary_expression "uVar5 != 0xb" (identifier "uVar5") (!= "!=") (number_literal "0xb")) (&& "&&") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc" (assignment_expression "*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e7 + lVar6)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10e7 + lVar6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e7 + lVar6)" (( "(") (binary_expression "param_1 + 0x10e7 + lVar6" (binary_expression "param_1 + 0x10e7" (identifier "param_1") (+ "+") (number_literal "0x10e7")) (+ "+") (identifier "lVar6")) () ")")))) (= "=") (number_literal "0")) (, ",") (binary_expression "uVar5 != 0xc" (identifier "uVar5") (!= "!=") (number_literal "0xc"))) () ")")))) () ")")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd" (assignment_expression "*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e8 + lVar6)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10e8 + lVar6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e8 + lVar6)" (( "(") (binary_expression "param_1 + 0x10e8 + lVar6" (binary_expression "param_1 + 0x10e8" (identifier "param_1") (+ "+") (number_literal "0x10e8")) (+ "+") (identifier "lVar6")) () ")")))) (= "=") (number_literal "0")) (, ",") (binary_expression "uVar5 != 0xd" (identifier "uVar5") (!= "!=") (number_literal "0xd"))) () ")"))) () ")")) () ")")))) () ")")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(((*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&\n        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))))))" (( "(") (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&\n        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12))))))" (( "(") (binary_expression "(*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&\n        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))))" (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf))" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)" (assignment_expression "*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e9 + lVar6)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10e9 + lVar6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e9 + lVar6)" (( "(") (binary_expression "param_1 + 0x10e9 + lVar6" (binary_expression "param_1 + 0x10e9" (identifier "param_1") (+ "+") (number_literal "0x10e9")) (+ "+") (identifier "lVar6")) () ")")))) (= "=") (number_literal "0")) (, ",") (binary_expression "uVar5 != 0xe &&\n         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)" (binary_expression "uVar5 != 0xe" (identifier "uVar5") (!= "!=") (number_literal "0xe")) (&& "&&") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf" (assignment_expression "*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10ea + lVar6)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10ea + lVar6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10ea + lVar6)" (( "(") (binary_expression "param_1 + 0x10ea + lVar6" (binary_expression "param_1 + 0x10ea" (identifier "param_1") (+ "+") (number_literal "0x10ea")) (+ "+") (identifier "lVar6")) () ")")))) (= "=") (number_literal "0")) (, ",") (binary_expression "uVar5 != 0xf" (identifier "uVar5") (!= "!=") (number_literal "0xf"))) () ")")))) () ")")) (&& "&&") (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))))" (( "(") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12))))" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))" (assignment_expression "*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10eb + lVar6)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10eb + lVar6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10eb + lVar6)" (( "(") (binary_expression "param_1 + 0x10eb + lVar6" (binary_expression "param_1 + 0x10eb" (identifier "param_1") (+ "+") (number_literal "0x10eb")) (+ "+") (identifier "lVar6")) () ")")))) (= "=") (number_literal "0")) (, ",") (binary_expression "uVar5 != 0x10 &&\n         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))" (binary_expression "uVar5 != 0x10" (identifier "uVar5") (!= "!=") (number_literal "0x10")) (&& "&&") (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))" (( "(") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12))" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)" (assignment_expression "*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10ec + lVar6)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10ec + lVar6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10ec + lVar6)" (( "(") (binary_expression "param_1 + 0x10ec + lVar6" (binary_expression "param_1 + 0x10ec" (identifier "param_1") (+ "+") (number_literal "0x10ec")) (+ "+") (identifier "lVar6")) () ")")))) (= "=") (number_literal "0")) (, ",") (binary_expression "uVar5 != 0x11 &&\n          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)" (binary_expression "uVar5 != 0x11" (identifier "uVar5") (!= "!=") (number_literal "0x11")) (&& "&&") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12" (assignment_expression "*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10ed + lVar6)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10ed + lVar6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10ed + lVar6)" (( "(") (binary_expression "param_1 + 0x10ed + lVar6" (binary_expression "param_1 + 0x10ed" (identifier "param_1") (+ "+") (number_literal "0x10ed")) (+ "+") (identifier "lVar6")) () ")")))) (= "=") (number_literal "0")) (, ",") (binary_expression "uVar5 != 0x12" (identifier "uVar5") (!= "!=") (number_literal "0x12"))) () ")")))) () ")")) () ")")))) () ")")) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n      *(undefined1 *)(param_1 + 0x10ee + lVar6) = 0;\n    }" ({ "{") (expression_statement "*(undefined1 *)(param_1 + 0x10ee + lVar6) = 0;" (assignment_expression "*(undefined1 *)(param_1 + 0x10ee + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10ee + lVar6)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10ee + lVar6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10ee + lVar6)" (( "(") (binary_expression "param_1 + 0x10ee + lVar6" (binary_expression "param_1 + 0x10ee" (identifier "param_1") (+ "+") (number_literal "0x10ee")) (+ "+") (identifier "lVar6")) () ")")))) (= "=") (number_literal "0")) (; ";")) (} "}"))) (expression_statement "uVar4 = uVar5 - 4;" (assignment_expression "uVar4 = uVar5 - 4" (identifier "uVar4") (= "=") (binary_expression "uVar5 - 4" (identifier "uVar5") (- "-") (number_literal "4"))) (; ";")) (expression_statement "lVar6 = lVar6 + uVar4;" (assignment_expression "lVar6 = lVar6 + uVar4" (identifier "lVar6") (= "=") (binary_expression "lVar6 + uVar4" (identifier "lVar6") (+ "+") (identifier "uVar4"))) (; ";")) (} "}")) (else_clause "else {\n    *(undefined1 *)(param_1 + 0x10e1) = *param_2;\n    if ((((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&\n        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)) &&\n       (((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))))) {\n      *(undefined1 *)(param_1 + 0x10ef) = param_2[0xe];\n    }\n    lVar6 = param_3 + 1;\n    if (3 < uVar5) goto LAB_00133225;\n    iVar3 = 8;\n    if ((uVar5 == 3) || (iVar3 = 0x10, uVar5 == 2)) {\n      lVar7 = lVar7 << iVar3;\n    }\n    else {\n      lVar8 = lVar7 << 0x18;\n      lVar7 = 0;\n      if (uVar5 != 0) {\n        lVar7 = lVar8;\n      }\n    }\nLAB_00132d92:\n    uVar4 = 0;\n  }" (else "else") (compound_statement "{\n    *(undefined1 *)(param_1 + 0x10e1) = *param_2;\n    if ((((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&\n        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)) &&\n       (((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))))) {\n      *(undefined1 *)(param_1 + 0x10ef) = param_2[0xe];\n    }\n    lVar6 = param_3 + 1;\n    if (3 < uVar5) goto LAB_00133225;\n    iVar3 = 8;\n    if ((uVar5 == 3) || (iVar3 = 0x10, uVar5 == 2)) {\n      lVar7 = lVar7 << iVar3;\n    }\n    else {\n      lVar8 = lVar7 << 0x18;\n      lVar7 = 0;\n      if (uVar5 != 0) {\n        lVar7 = lVar8;\n      }\n    }\nLAB_00132d92:\n    uVar4 = 0;\n  }" ({ "{") (expression_statement "*(undefined1 *)(param_1 + 0x10e1) = *param_2;" (assignment_expression "*(undefined1 *)(param_1 + 0x10e1) = *param_2" (pointer_expression "*(undefined1 *)(param_1 + 0x10e1)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10e1)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e1)" (( "(") (binary_expression "param_1 + 0x10e1" (identifier "param_1") (+ "+") (number_literal "0x10e1")) () ")")))) (= "=") (pointer_expression "*param_2" (* "*") (identifier "param_2"))) (; ";")) (if_statement "if ((((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&\n        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)) &&\n       (((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))))) {\n      *(undefined1 *)(param_1 + 0x10ef) = param_2[0xe];\n    }" (if "if") (parenthesized_expression "((((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&\n        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)) &&\n       (((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe))))))))" (( "(") (binary_expression "(((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&\n        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)) &&\n       (((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))))" (parenthesized_expression "(((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&\n        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3))" (( "(") (binary_expression "((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&\n        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)" (parenthesized_expression "((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2))" (( "(") (binary_expression "(1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)" (parenthesized_expression "(1 < param_3)" (( "(") (binary_expression "1 < param_3" (number_literal "1") (< "<") (identifier "param_3")) () ")")) (&& "&&") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2" (assignment_expression "*(undefined1 *)(param_1 + 0x10e2) = param_2[1]" (pointer_expression "*(undefined1 *)(param_1 + 0x10e2)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10e2)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e2)" (( "(") (binary_expression "param_1 + 0x10e2" (identifier "param_1") (+ "+") (number_literal "0x10e2")) () ")")))) (= "=") (subscript_expression "param_2[1]" (identifier "param_2") ([ "[") (number_literal "1") (] "]"))) (, ",") (binary_expression "param_3 != 2" (identifier "param_3") (!= "!=") (number_literal "2"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3" (assignment_expression "*(undefined1 *)(param_1 + 0x10e3) = param_2[2]" (pointer_expression "*(undefined1 *)(param_1 + 0x10e3)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10e3)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e3)" (( "(") (binary_expression "param_1 + 0x10e3" (identifier "param_1") (+ "+") (number_literal "0x10e3")) () ")")))) (= "=") (subscript_expression "param_2[2]" (identifier "param_2") ([ "[") (number_literal "2") (] "]"))) (, ",") (binary_expression "param_3 != 3" (identifier "param_3") (!= "!=") (number_literal "3"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))))" (( "(") (parenthesized_expression "((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe))))))" (( "(") (binary_expression "(((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&\n        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))" (parenthesized_expression "(((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9))" (( "(") (binary_expression "((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&\n         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)" (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8))))))" (( "(") (binary_expression "(*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&\n          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))" (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5))" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)" (assignment_expression "*(undefined1 *)(param_1 + 0x10e4) = param_2[3]" (pointer_expression "*(undefined1 *)(param_1 + 0x10e4)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10e4)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e4)" (( "(") (binary_expression "param_1 + 0x10e4" (identifier "param_1") (+ "+") (number_literal "0x10e4")) () ")")))) (= "=") (subscript_expression "param_2[3]" (identifier "param_2") ([ "[") (number_literal "3") (] "]"))) (, ",") (binary_expression "param_3 != 4 &&\n           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)" (binary_expression "param_3 != 4" (identifier "param_3") (!= "!=") (number_literal "4")) (&& "&&") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5" (assignment_expression "*(undefined1 *)(param_1 + 0x10e5) = param_2[4]" (pointer_expression "*(undefined1 *)(param_1 + 0x10e5)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10e5)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e5)" (( "(") (binary_expression "param_1 + 0x10e5" (identifier "param_1") (+ "+") (number_literal "0x10e5")) () ")")))) (= "=") (subscript_expression "param_2[4]" (identifier "param_2") ([ "[") (number_literal "4") (] "]"))) (, ",") (binary_expression "param_3 != 5" (identifier "param_3") (!= "!=") (number_literal "5"))) () ")")))) () ")")) (&& "&&") (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))" (( "(") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8))))" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))" (assignment_expression "*(undefined1 *)(param_1 + 0x10e6) = param_2[5]" (pointer_expression "*(undefined1 *)(param_1 + 0x10e6)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10e6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e6)" (( "(") (binary_expression "param_1 + 0x10e6" (identifier "param_1") (+ "+") (number_literal "0x10e6")) () ")")))) (= "=") (subscript_expression "param_2[5]" (identifier "param_2") ([ "[") (number_literal "5") (] "]"))) (, ",") (binary_expression "param_3 != 6 &&\n           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))" (binary_expression "param_3 != 6" (identifier "param_3") (!= "!=") (number_literal "6")) (&& "&&") (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))" (( "(") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8))" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)" (assignment_expression "*(undefined1 *)(param_1 + 0x10e7) = param_2[6]" (pointer_expression "*(undefined1 *)(param_1 + 0x10e7)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10e7)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e7)" (( "(") (binary_expression "param_1 + 0x10e7" (identifier "param_1") (+ "+") (number_literal "0x10e7")) () ")")))) (= "=") (subscript_expression "param_2[6]" (identifier "param_2") ([ "[") (number_literal "6") (] "]"))) (, ",") (binary_expression "param_3 != 7 &&\n            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)" (binary_expression "param_3 != 7" (identifier "param_3") (!= "!=") (number_literal "7")) (&& "&&") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8" (assignment_expression "*(undefined1 *)(param_1 + 0x10e8) = param_2[7]" (pointer_expression "*(undefined1 *)(param_1 + 0x10e8)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10e8)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e8)" (( "(") (binary_expression "param_1 + 0x10e8" (identifier "param_1") (+ "+") (number_literal "0x10e8")) () ")")))) (= "=") (subscript_expression "param_2[7]" (identifier "param_2") ([ "[") (number_literal "7") (] "]"))) (, ",") (binary_expression "param_3 != 8" (identifier "param_3") (!= "!=") (number_literal "8"))) () ")")))) () ")")) () ")")))) () ")")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9" (assignment_expression "*(undefined1 *)(param_1 + 0x10e9) = param_2[8]" (pointer_expression "*(undefined1 *)(param_1 + 0x10e9)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10e9)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e9)" (( "(") (binary_expression "param_1 + 0x10e9" (identifier "param_1") (+ "+") (number_literal "0x10e9")) () ")")))) (= "=") (subscript_expression "param_2[8]" (identifier "param_2") ([ "[") (number_literal "8") (] "]"))) (, ",") (binary_expression "param_3 != 9" (identifier "param_3") (!= "!=") (number_literal "9"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))" (( "(") (parenthesized_expression "(((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe))))" (( "(") (binary_expression "((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&\n         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))" (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc))" (( "(") (binary_expression "(*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&\n          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)" (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb))" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)" (assignment_expression "*(undefined1 *)(param_1 + 0x10ea) = param_2[9]" (pointer_expression "*(undefined1 *)(param_1 + 0x10ea)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10ea)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10ea)" (( "(") (binary_expression "param_1 + 0x10ea" (identifier "param_1") (+ "+") (number_literal "0x10ea")) () ")")))) (= "=") (subscript_expression "param_2[9]" (identifier "param_2") ([ "[") (number_literal "9") (] "]"))) (, ",") (binary_expression "param_3 != 10 &&\n           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)" (binary_expression "param_3 != 10" (identifier "param_3") (!= "!=") (number_literal "10")) (&& "&&") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb" (assignment_expression "*(undefined1 *)(param_1 + 0x10eb) = param_2[10]" (pointer_expression "*(undefined1 *)(param_1 + 0x10eb)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10eb)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10eb)" (( "(") (binary_expression "param_1 + 0x10eb" (identifier "param_1") (+ "+") (number_literal "0x10eb")) () ")")))) (= "=") (subscript_expression "param_2[10]" (identifier "param_2") ([ "[") (number_literal "10") (] "]"))) (, ",") (binary_expression "param_3 != 0xb" (identifier "param_3") (!= "!=") (number_literal "0xb"))) () ")")))) () ")")) (&& "&&") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc" (assignment_expression "*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb]" (pointer_expression "*(undefined1 *)(param_1 + 0x10ec)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10ec)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10ec)" (( "(") (binary_expression "param_1 + 0x10ec" (identifier "param_1") (+ "+") (number_literal "0x10ec")) () ")")))) (= "=") (subscript_expression "param_2[0xb]" (identifier "param_2") ([ "[") (number_literal "0xb") (] "]"))) (, ",") (binary_expression "param_3 != 0xc" (identifier "param_3") (!= "!=") (number_literal "0xc"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))" (( "(") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe))" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)" (assignment_expression "*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc]" (pointer_expression "*(undefined1 *)(param_1 + 0x10ed)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10ed)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10ed)" (( "(") (binary_expression "param_1 + 0x10ed" (identifier "param_1") (+ "+") (number_literal "0x10ed")) () ")")))) (= "=") (subscript_expression "param_2[0xc]" (identifier "param_2") ([ "[") (number_literal "0xc") (] "]"))) (, ",") (binary_expression "param_3 != 0xd &&\n          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)" (binary_expression "param_3 != 0xd" (identifier "param_3") (!= "!=") (number_literal "0xd")) (&& "&&") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe" (assignment_expression "*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd]" (pointer_expression "*(undefined1 *)(param_1 + 0x10ee)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10ee)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10ee)" (( "(") (binary_expression "param_1 + 0x10ee" (identifier "param_1") (+ "+") (number_literal "0x10ee")) () ")")))) (= "=") (subscript_expression "param_2[0xd]" (identifier "param_2") ([ "[") (number_literal "0xd") (] "]"))) (, ",") (binary_expression "param_3 != 0xe" (identifier "param_3") (!= "!=") (number_literal "0xe"))) () ")")))) () ")")) () ")"))) () ")")) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n      *(undefined1 *)(param_1 + 0x10ef) = param_2[0xe];\n    }" ({ "{") (expression_statement "*(undefined1 *)(param_1 + 0x10ef) = param_2[0xe];" (assignment_expression "*(undefined1 *)(param_1 + 0x10ef) = param_2[0xe]" (pointer_expression "*(undefined1 *)(param_1 + 0x10ef)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10ef)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10ef)" (( "(") (binary_expression "param_1 + 0x10ef" (identifier "param_1") (+ "+") (number_literal "0x10ef")) () ")")))) (= "=") (subscript_expression "param_2[0xe]" (identifier "param_2") ([ "[") (number_literal "0xe") (] "]"))) (; ";")) (} "}"))) (expression_statement "lVar6 = param_3 + 1;" (assignment_expression "lVar6 = param_3 + 1" (identifier "lVar6") (= "=") (binary_expression "param_3 + 1" (identifier "param_3") (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (3 < uVar5) goto LAB_00133225;" (if "if") (parenthesized_expression "(3 < uVar5)" (( "(") (binary_expression "3 < uVar5" (number_literal "3") (< "<") (identifier "uVar5")) () ")")) (goto_statement "goto LAB_00133225;" (goto "goto") (statement_identifier "LAB_00133225") (; ";"))) (expression_statement "iVar3 = 8;" (assignment_expression "iVar3 = 8" (identifier "iVar3") (= "=") (number_literal "8")) (; ";")) (if_statement "if ((uVar5 == 3) || (iVar3 = 0x10, uVar5 == 2)) {\n      lVar7 = lVar7 << iVar3;\n    }\n    else {\n      lVar8 = lVar7 << 0x18;\n      lVar7 = 0;\n      if (uVar5 != 0) {\n        lVar7 = lVar8;\n      }\n    }" (if "if") (parenthesized_expression "((uVar5 == 3) || (iVar3 = 0x10, uVar5 == 2))" (( "(") (binary_expression "(uVar5 == 3) || (iVar3 = 0x10, uVar5 == 2)" (parenthesized_expression "(uVar5 == 3)" (( "(") (binary_expression "uVar5 == 3" (identifier "uVar5") (== "==") (number_literal "3")) () ")")) (|| "||") (parenthesized_expression "(iVar3 = 0x10, uVar5 == 2)" (( "(") (comma_expression "iVar3 = 0x10, uVar5 == 2" (assignment_expression "iVar3 = 0x10" (identifier "iVar3") (= "=") (number_literal "0x10")) (, ",") (binary_expression "uVar5 == 2" (identifier "uVar5") (== "==") (number_literal "2"))) () ")"))) () ")")) (compound_statement "{\n      lVar7 = lVar7 << iVar3;\n    }" ({ "{") (expression_statement "lVar7 = lVar7 << iVar3;" (assignment_expression "lVar7 = lVar7 << iVar3" (identifier "lVar7") (= "=") (binary_expression "lVar7 << iVar3" (identifier "lVar7") (<< "<<") (identifier "iVar3"))) (; ";")) (} "}")) (else_clause "else {\n      lVar8 = lVar7 << 0x18;\n      lVar7 = 0;\n      if (uVar5 != 0) {\n        lVar7 = lVar8;\n      }\n    }" (else "else") (compound_statement "{\n      lVar8 = lVar7 << 0x18;\n      lVar7 = 0;\n      if (uVar5 != 0) {\n        lVar7 = lVar8;\n      }\n    }" ({ "{") (expression_statement "lVar8 = lVar7 << 0x18;" (assignment_expression "lVar8 = lVar7 << 0x18" (identifier "lVar8") (= "=") (binary_expression "lVar7 << 0x18" (identifier "lVar7") (<< "<<") (number_literal "0x18"))) (; ";")) (expression_statement "lVar7 = 0;" (assignment_expression "lVar7 = 0" (identifier "lVar7") (= "=") (number_literal "0")) (; ";")) (if_statement "if (uVar5 != 0) {\n        lVar7 = lVar8;\n      }" (if "if") (parenthesized_expression "(uVar5 != 0)" (( "(") (binary_expression "uVar5 != 0" (identifier "uVar5") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        lVar7 = lVar8;\n      }" ({ "{") (expression_statement "lVar7 = lVar8;" (assignment_expression "lVar7 = lVar8" (identifier "lVar7") (= "=") (identifier "lVar8")) (; ";")) (} "}"))) (} "}")))) (labeled_statement "LAB_00132d92:\n    uVar4 = 0;" (statement_identifier "LAB_00132d92") (: ":") (expression_statement "uVar4 = 0;" (assignment_expression "uVar4 = 0" (identifier "uVar4") (= "=") (number_literal "0")) (; ";"))) (} "}")))) (if_statement "if (((((uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)) &&\n       (*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5)) &&\n      (((*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&\n       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))))))) &&\n     (((*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))) &&\n      ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)))))) {\n    *(undefined1 *)(param_1 + 0x10ed + lVar6) = 0;\n    if (uVar4 + 0xe < uVar5) {\n      *(undefined1 *)(param_1 + lVar6 + 0x10ee) = 0;\n      if (uVar4 + 0xf < uVar5) {\n        *(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0;\n      }\n    }\n  }" (if "if") (parenthesized_expression "(((((uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)) &&\n       (*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5)) &&\n      (((*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&\n       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))))))) &&\n     (((*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))) &&\n      ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5))))))" (( "(") (binary_expression "((((uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)) &&\n       (*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5)) &&\n      (((*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&\n       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))))))) &&\n     (((*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))) &&\n      ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)))))" (parenthesized_expression "((((uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)) &&\n       (*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5)) &&\n      (((*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&\n       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5))))))))" (( "(") (binary_expression "(((uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)) &&\n       (*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5)) &&\n      (((*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&\n       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))))))" (parenthesized_expression "(((uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)) &&\n       (*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5))" (( "(") (binary_expression "((uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)) &&\n       (*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5)" (parenthesized_expression "((uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5))" (( "(") (binary_expression "(uVar4 < uVar5) &&\n        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)" (parenthesized_expression "(uVar4 < uVar5)" (( "(") (binary_expression "uVar4 < uVar5" (identifier "uVar4") (< "<") (identifier "uVar5")) () ")")) (&& "&&") (parenthesized_expression "(*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)" (( "(") (comma_expression "*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5" (assignment_expression "*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18)" (pointer_expression "*(char *)(param_1 + 0x10e0 + lVar6)" (* "*") (cast_expression "(char *)(param_1 + 0x10e0 + lVar6)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e0 + lVar6)" (( "(") (binary_expression "param_1 + 0x10e0 + lVar6" (binary_expression "param_1 + 0x10e0" (identifier "param_1") (+ "+") (number_literal "0x10e0")) (+ "+") (identifier "lVar6")) () ")")))) (= "=") (cast_expression "(char)((ulong)lVar7 >> 0x18)" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (parenthesized_expression "((ulong)lVar7 >> 0x18)" (( "(") (binary_expression "(ulong)lVar7 >> 0x18" (cast_expression "(ulong)lVar7" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "lVar7")) (>> ">>") (number_literal "0x18")) () ")")))) (, ",") (binary_expression "uVar4 + 1 < uVar5" (binary_expression "uVar4 + 1" (identifier "uVar4") (+ "+") (number_literal "1")) (< "<") (identifier "uVar5"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5)" (( "(") (comma_expression "*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5" (assignment_expression "*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10)" (pointer_expression "*(char *)(param_1 + 0x10e1 + lVar6)" (* "*") (cast_expression "(char *)(param_1 + 0x10e1 + lVar6)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e1 + lVar6)" (( "(") (binary_expression "param_1 + 0x10e1 + lVar6" (binary_expression "param_1 + 0x10e1" (identifier "param_1") (+ "+") (number_literal "0x10e1")) (+ "+") (identifier "lVar6")) () ")")))) (= "=") (cast_expression "(char)((ulong)lVar7 >> 0x10)" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (parenthesized_expression "((ulong)lVar7 >> 0x10)" (( "(") (binary_expression "(ulong)lVar7 >> 0x10" (cast_expression "(ulong)lVar7" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "lVar7")) (>> ">>") (number_literal "0x10")) () ")")))) (, ",") (binary_expression "uVar4 + 2 < uVar5" (binary_expression "uVar4 + 2" (identifier "uVar4") (+ "+") (number_literal "2")) (< "<") (identifier "uVar5"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(((*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&\n       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))))))" (( "(") (parenthesized_expression "((*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&\n       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5))))))" (( "(") (binary_expression "(*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&\n       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))))" (parenthesized_expression "(*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5))" (( "(") (comma_expression "*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)" (assignment_expression "*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8)" (pointer_expression "*(char *)(param_1 + 0x10e2 + lVar6)" (* "*") (cast_expression "(char *)(param_1 + 0x10e2 + lVar6)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e2 + lVar6)" (( "(") (binary_expression "param_1 + 0x10e2 + lVar6" (binary_expression "param_1 + 0x10e2" (identifier "param_1") (+ "+") (number_literal "0x10e2")) (+ "+") (identifier "lVar6")) () ")")))) (= "=") (cast_expression "(char)((ulong)lVar7 >> 8)" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (parenthesized_expression "((ulong)lVar7 >> 8)" (( "(") (binary_expression "(ulong)lVar7 >> 8" (cast_expression "(ulong)lVar7" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "lVar7")) (>> ">>") (number_literal "8")) () ")")))) (, ",") (binary_expression "uVar4 + 3 < uVar5 &&\n        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)" (binary_expression "uVar4 + 3 < uVar5" (binary_expression "uVar4 + 3" (identifier "uVar4") (+ "+") (number_literal "3")) (< "<") (identifier "uVar5")) (&& "&&") (parenthesized_expression "(*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)" (( "(") (comma_expression "*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5" (assignment_expression "*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7" (pointer_expression "*(char *)(param_1 + 0x10e3 + lVar6)" (* "*") (cast_expression "(char *)(param_1 + 0x10e3 + lVar6)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e3 + lVar6)" (( "(") (binary_expression "param_1 + 0x10e3 + lVar6" (binary_expression "param_1 + 0x10e3" (identifier "param_1") (+ "+") (number_literal "0x10e3")) (+ "+") (identifier "lVar6")) () ")")))) (= "=") (cast_expression "(char)lVar7" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "lVar7"))) (, ",") (binary_expression "uVar4 + 4 < uVar5" (binary_expression "uVar4 + 4" (identifier "uVar4") (+ "+") (number_literal "4")) (< "<") (identifier "uVar5"))) () ")")))) () ")")) (&& "&&") (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))))" (( "(") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5))))" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))" (assignment_expression "*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e4 + lVar6)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10e4 + lVar6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e4 + lVar6)" (( "(") (binary_expression "param_1 + 0x10e4 + lVar6" (binary_expression "param_1 + 0x10e4" (identifier "param_1") (+ "+") (number_literal "0x10e4")) (+ "+") (identifier "lVar6")) () ")")))) (= "=") (number_literal "0")) (, ",") (binary_expression "uVar4 + 5 < uVar5 &&\n        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))" (binary_expression "uVar4 + 5 < uVar5" (binary_expression "uVar4 + 5" (identifier "uVar4") (+ "+") (number_literal "5")) (< "<") (identifier "uVar5")) (&& "&&") (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))" (( "(") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5))" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)" (assignment_expression "*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e5 + lVar6)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10e5 + lVar6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e5 + lVar6)" (( "(") (binary_expression "param_1 + 0x10e5 + lVar6" (binary_expression "param_1 + 0x10e5" (identifier "param_1") (+ "+") (number_literal "0x10e5")) (+ "+") (identifier "lVar6")) () ")")))) (= "=") (number_literal "0")) (, ",") (binary_expression "uVar4 + 6 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)" (binary_expression "uVar4 + 6 < uVar5" (binary_expression "uVar4 + 6" (identifier "uVar4") (+ "+") (number_literal "6")) (< "<") (identifier "uVar5")) (&& "&&") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5" (assignment_expression "*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e6 + lVar6)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10e6 + lVar6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e6 + lVar6)" (( "(") (binary_expression "param_1 + 0x10e6 + lVar6" (binary_expression "param_1 + 0x10e6" (identifier "param_1") (+ "+") (number_literal "0x10e6")) (+ "+") (identifier "lVar6")) () ")")))) (= "=") (number_literal "0")) (, ",") (binary_expression "uVar4 + 7 < uVar5" (binary_expression "uVar4 + 7" (identifier "uVar4") (+ "+") (number_literal "7")) (< "<") (identifier "uVar5"))) () ")")))) () ")")) () ")")))) () ")")) () ")"))) () ")")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(((*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))) &&\n      ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)))))" (( "(") (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))) &&\n      ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5))))" (( "(") (binary_expression "(*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))) &&\n      ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)))" (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5))))" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))" (assignment_expression "*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e7 + lVar6)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10e7 + lVar6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e7 + lVar6)" (( "(") (binary_expression "param_1 + 0x10e7 + lVar6" (binary_expression "param_1 + 0x10e7" (identifier "param_1") (+ "+") (number_literal "0x10e7")) (+ "+") (identifier "lVar6")) () ")")))) (= "=") (number_literal "0")) (, ",") (binary_expression "uVar4 + 8 < uVar5 &&\n       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))" (binary_expression "uVar4 + 8 < uVar5" (binary_expression "uVar4 + 8" (identifier "uVar4") (+ "+") (number_literal "8")) (< "<") (identifier "uVar5")) (&& "&&") (parenthesized_expression "(((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))" (( "(") (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5))" (( "(") (binary_expression "(*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&\n        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)" (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5))" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)" (assignment_expression "*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e8 + lVar6)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10e8 + lVar6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e8 + lVar6)" (( "(") (binary_expression "param_1 + 0x10e8 + lVar6" (binary_expression "param_1 + 0x10e8" (identifier "param_1") (+ "+") (number_literal "0x10e8")) (+ "+") (identifier "lVar6")) () ")")))) (= "=") (number_literal "0")) (, ",") (binary_expression "uVar4 + 9 < uVar5 &&\n         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)" (binary_expression "uVar4 + 9 < uVar5" (binary_expression "uVar4 + 9" (identifier "uVar4") (+ "+") (number_literal "9")) (< "<") (identifier "uVar5")) (&& "&&") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5" (assignment_expression "*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10e9 + lVar6)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10e9 + lVar6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e9 + lVar6)" (( "(") (binary_expression "param_1 + 0x10e9 + lVar6" (binary_expression "param_1 + 0x10e9" (identifier "param_1") (+ "+") (number_literal "0x10e9")) (+ "+") (identifier "lVar6")) () ")")))) (= "=") (number_literal "0")) (, ",") (binary_expression "uVar4 + 10 < uVar5" (binary_expression "uVar4 + 10" (identifier "uVar4") (+ "+") (number_literal "10")) (< "<") (identifier "uVar5"))) () ")")))) () ")")) (&& "&&") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5" (assignment_expression "*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10ea + lVar6)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10ea + lVar6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10ea + lVar6)" (( "(") (binary_expression "param_1 + 0x10ea + lVar6" (binary_expression "param_1 + 0x10ea" (identifier "param_1") (+ "+") (number_literal "0x10ea")) (+ "+") (identifier "lVar6")) () ")")))) (= "=") (number_literal "0")) (, ",") (binary_expression "uVar4 + 0xb < uVar5" (binary_expression "uVar4 + 0xb" (identifier "uVar4") (+ "+") (number_literal "0xb")) (< "<") (identifier "uVar5"))) () ")"))) () ")")) () ")")))) () ")")) (&& "&&") (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)))" (( "(") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5))" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)" (assignment_expression "*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10eb + lVar6)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10eb + lVar6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10eb + lVar6)" (( "(") (binary_expression "param_1 + 0x10eb + lVar6" (binary_expression "param_1 + 0x10eb" (identifier "param_1") (+ "+") (number_literal "0x10eb")) (+ "+") (identifier "lVar6")) () ")")))) (= "=") (number_literal "0")) (, ",") (binary_expression "uVar4 + 0xc < uVar5 &&\n       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)" (binary_expression "uVar4 + 0xc < uVar5" (binary_expression "uVar4 + 0xc" (identifier "uVar4") (+ "+") (number_literal "0xc")) (< "<") (identifier "uVar5")) (&& "&&") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5" (assignment_expression "*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10ec + lVar6)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10ec + lVar6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10ec + lVar6)" (( "(") (binary_expression "param_1 + 0x10ec + lVar6" (binary_expression "param_1 + 0x10ec" (identifier "param_1") (+ "+") (number_literal "0x10ec")) (+ "+") (identifier "lVar6")) () ")")))) (= "=") (number_literal "0")) (, ",") (binary_expression "uVar4 + 0xd < uVar5" (binary_expression "uVar4 + 0xd" (identifier "uVar4") (+ "+") (number_literal "0xd")) (< "<") (identifier "uVar5"))) () ")")))) () ")")) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n    *(undefined1 *)(param_1 + 0x10ed + lVar6) = 0;\n    if (uVar4 + 0xe < uVar5) {\n      *(undefined1 *)(param_1 + lVar6 + 0x10ee) = 0;\n      if (uVar4 + 0xf < uVar5) {\n        *(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0;\n      }\n    }\n  }" ({ "{") (expression_statement "*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0;" (assignment_expression "*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10ed + lVar6)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10ed + lVar6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10ed + lVar6)" (( "(") (binary_expression "param_1 + 0x10ed + lVar6" (binary_expression "param_1 + 0x10ed" (identifier "param_1") (+ "+") (number_literal "0x10ed")) (+ "+") (identifier "lVar6")) () ")")))) (= "=") (number_literal "0")) (; ";")) (if_statement "if (uVar4 + 0xe < uVar5) {\n      *(undefined1 *)(param_1 + lVar6 + 0x10ee) = 0;\n      if (uVar4 + 0xf < uVar5) {\n        *(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0;\n      }\n    }" (if "if") (parenthesized_expression "(uVar4 + 0xe < uVar5)" (( "(") (binary_expression "uVar4 + 0xe < uVar5" (binary_expression "uVar4 + 0xe" (identifier "uVar4") (+ "+") (number_literal "0xe")) (< "<") (identifier "uVar5")) () ")")) (compound_statement "{\n      *(undefined1 *)(param_1 + lVar6 + 0x10ee) = 0;\n      if (uVar4 + 0xf < uVar5) {\n        *(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0;\n      }\n    }" ({ "{") (expression_statement "*(undefined1 *)(param_1 + lVar6 + 0x10ee) = 0;" (assignment_expression "*(undefined1 *)(param_1 + lVar6 + 0x10ee) = 0" (pointer_expression "*(undefined1 *)(param_1 + lVar6 + 0x10ee)" (* "*") (cast_expression "(undefined1 *)(param_1 + lVar6 + 0x10ee)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + lVar6 + 0x10ee)" (( "(") (binary_expression "param_1 + lVar6 + 0x10ee" (binary_expression "param_1 + lVar6" (identifier "param_1") (+ "+") (identifier "lVar6")) (+ "+") (number_literal "0x10ee")) () ")")))) (= "=") (number_literal "0")) (; ";")) (if_statement "if (uVar4 + 0xf < uVar5) {\n        *(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0;\n      }" (if "if") (parenthesized_expression "(uVar4 + 0xf < uVar5)" (( "(") (binary_expression "uVar4 + 0xf < uVar5" (binary_expression "uVar4 + 0xf" (identifier "uVar4") (+ "+") (number_literal "0xf")) (< "<") (identifier "uVar5")) () ")")) (compound_statement "{\n        *(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0;\n      }" ({ "{") (expression_statement "*(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0;" (assignment_expression "*(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0" (pointer_expression "*(undefined1 *)(param_1 + lVar6 + 0x10ef)" (* "*") (cast_expression "(undefined1 *)(param_1 + lVar6 + 0x10ef)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + lVar6 + 0x10ef)" (( "(") (binary_expression "param_1 + lVar6 + 0x10ef" (binary_expression "param_1 + lVar6" (identifier "param_1") (+ "+") (identifier "lVar6")) (+ "+") (number_literal "0x10ef")) () ")")))) (= "=") (number_literal "0")) (; ";")) (} "}"))) (} "}"))) (} "}"))) (expression_statement "iVar3 = (**(code **)(PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28))\n                    (param_1 + 0x10e0,param_1 + 0x10e0,param_1);" (assignment_expression "iVar3 = (**(code **)(PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28))\n                    (param_1 + 0x10e0,param_1 + 0x10e0,param_1)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28))\n                    (param_1 + 0x10e0,param_1 + 0x10e0,param_1)" (parenthesized_expression "(**(code **)(PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28))" (( "(") (pointer_expression "**(code **)(PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28)" (* "*") (pointer_expression "*(code **)(PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28)" (* "*") (cast_expression "(code **)(PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28)" (( "(") (binary_expression "PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28" (binary_expression "PTR_cipher_descriptor_001dded0 +\n                      (long)*(int *)(param_1 + 0x10a0) * 0xc0" (identifier "PTR_cipher_descriptor_001dded0") (+ "+") (binary_expression "(long)*(int *)(param_1 + 0x10a0) * 0xc0" (cast_expression "(long)*(int *)(param_1 + 0x10a0)" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (pointer_expression "*(int *)(param_1 + 0x10a0)" (* "*") (cast_expression "(int *)(param_1 + 0x10a0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10a0)" (( "(") (binary_expression "param_1 + 0x10a0" (identifier "param_1") (+ "+") (number_literal "0x10a0")) () ")"))))) (* "*") (number_literal "0xc0"))) (+ "+") (number_literal "0x28")) () ")"))))) () ")")) (argument_list "(param_1 + 0x10e0,param_1 + 0x10e0,param_1)" (( "(") (binary_expression "param_1 + 0x10e0" (identifier "param_1") (+ "+") (number_literal "0x10e0")) (, ",") (binary_expression "param_1 + 0x10e0" (identifier "param_1") (+ "+") (number_literal "0x10e0")) (, ",") (identifier "param_1") () ")")))) (; ";")) (if_statement "if (iVar3 != 0) {\n    return;\n  }" (if "if") (parenthesized_expression "(iVar3 != 0)" (( "(") (binary_expression "iVar3 != 0" (identifier "iVar3") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    return;\n  }" ({ "{") (return_statement "return;" (return "return") (; ";")) (} "}"))) (expression_statement "uVar4 = *(ulong *)(param_1 + 0x10c8);" (assignment_expression "uVar4 = *(ulong *)(param_1 + 0x10c8)" (identifier "uVar4") (= "=") (pointer_expression "*(ulong *)(param_1 + 0x10c8)" (* "*") (cast_expression "(ulong *)(param_1 + 0x10c8)" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10c8)" (( "(") (binary_expression "param_1 + 0x10c8" (identifier "param_1") (+ "+") (number_literal "0x10c8")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(param_1 + 0x10a8) = 0;" (assignment_expression "*(undefined4 *)(param_1 + 0x10a8) = 0" (pointer_expression "*(undefined4 *)(param_1 + 0x10a8)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x10a8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10a8)" (( "(") (binary_expression "param_1 + 0x10a8" (identifier "param_1") (+ "+") (number_literal "0x10a8")) () ")")))) (= "=") (number_literal "0")) (; ";")) (if_statement "if (uVar4 != 0) {\n    bVar2 = (byte)(uVar4 >> 8);\n    if (uVar4 < 0xff00) {\n      *(undefined4 *)(param_1 + 0x10a8) = 2;\n      *(byte *)(param_1 + 0x10e0) = *(byte *)(param_1 + 0x10e0) ^ bVar2;\n      *(byte *)(param_1 + 0x10e1) = (byte)uVar4 ^ *(byte *)(param_1 + 0x10e1);\n    }\n    else {\n      *(byte *)(param_1 + 0x10e0) = ~*(byte *)(param_1 + 0x10e0);\n      *(byte *)(param_1 + 0x10e1) = *(byte *)(param_1 + 0x10e1) ^ 0xfe;\n      *(byte *)(param_1 + 0x10e2) = *(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18);\n      *(byte *)(param_1 + 0x10e3) = *(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10);\n      *(byte *)(param_1 + 0x10e4) = *(byte *)(param_1 + 0x10e4) ^ bVar2;\n      *(undefined4 *)(param_1 + 0x10a8) = 6;\n      *(byte *)(param_1 + 0x10e5) = *(byte *)(param_1 + 0x10e5) ^ (byte)uVar4;\n    }\n  }" (if "if") (parenthesized_expression "(uVar4 != 0)" (( "(") (binary_expression "uVar4 != 0" (identifier "uVar4") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    bVar2 = (byte)(uVar4 >> 8);\n    if (uVar4 < 0xff00) {\n      *(undefined4 *)(param_1 + 0x10a8) = 2;\n      *(byte *)(param_1 + 0x10e0) = *(byte *)(param_1 + 0x10e0) ^ bVar2;\n      *(byte *)(param_1 + 0x10e1) = (byte)uVar4 ^ *(byte *)(param_1 + 0x10e1);\n    }\n    else {\n      *(byte *)(param_1 + 0x10e0) = ~*(byte *)(param_1 + 0x10e0);\n      *(byte *)(param_1 + 0x10e1) = *(byte *)(param_1 + 0x10e1) ^ 0xfe;\n      *(byte *)(param_1 + 0x10e2) = *(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18);\n      *(byte *)(param_1 + 0x10e3) = *(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10);\n      *(byte *)(param_1 + 0x10e4) = *(byte *)(param_1 + 0x10e4) ^ bVar2;\n      *(undefined4 *)(param_1 + 0x10a8) = 6;\n      *(byte *)(param_1 + 0x10e5) = *(byte *)(param_1 + 0x10e5) ^ (byte)uVar4;\n    }\n  }" ({ "{") (expression_statement "bVar2 = (byte)(uVar4 >> 8);" (assignment_expression "bVar2 = (byte)(uVar4 >> 8)" (identifier "bVar2") (= "=") (call_expression "(byte)(uVar4 >> 8)" (parenthesized_expression "(byte)" (( "(") (identifier "byte") () ")")) (argument_list "(uVar4 >> 8)" (( "(") (binary_expression "uVar4 >> 8" (identifier "uVar4") (>> ">>") (number_literal "8")) () ")")))) (; ";")) (if_statement "if (uVar4 < 0xff00) {\n      *(undefined4 *)(param_1 + 0x10a8) = 2;\n      *(byte *)(param_1 + 0x10e0) = *(byte *)(param_1 + 0x10e0) ^ bVar2;\n      *(byte *)(param_1 + 0x10e1) = (byte)uVar4 ^ *(byte *)(param_1 + 0x10e1);\n    }\n    else {\n      *(byte *)(param_1 + 0x10e0) = ~*(byte *)(param_1 + 0x10e0);\n      *(byte *)(param_1 + 0x10e1) = *(byte *)(param_1 + 0x10e1) ^ 0xfe;\n      *(byte *)(param_1 + 0x10e2) = *(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18);\n      *(byte *)(param_1 + 0x10e3) = *(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10);\n      *(byte *)(param_1 + 0x10e4) = *(byte *)(param_1 + 0x10e4) ^ bVar2;\n      *(undefined4 *)(param_1 + 0x10a8) = 6;\n      *(byte *)(param_1 + 0x10e5) = *(byte *)(param_1 + 0x10e5) ^ (byte)uVar4;\n    }" (if "if") (parenthesized_expression "(uVar4 < 0xff00)" (( "(") (binary_expression "uVar4 < 0xff00" (identifier "uVar4") (< "<") (number_literal "0xff00")) () ")")) (compound_statement "{\n      *(undefined4 *)(param_1 + 0x10a8) = 2;\n      *(byte *)(param_1 + 0x10e0) = *(byte *)(param_1 + 0x10e0) ^ bVar2;\n      *(byte *)(param_1 + 0x10e1) = (byte)uVar4 ^ *(byte *)(param_1 + 0x10e1);\n    }" ({ "{") (expression_statement "*(undefined4 *)(param_1 + 0x10a8) = 2;" (assignment_expression "*(undefined4 *)(param_1 + 0x10a8) = 2" (pointer_expression "*(undefined4 *)(param_1 + 0x10a8)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x10a8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10a8)" (( "(") (binary_expression "param_1 + 0x10a8" (identifier "param_1") (+ "+") (number_literal "0x10a8")) () ")")))) (= "=") (number_literal "2")) (; ";")) (expression_statement "*(byte *)(param_1 + 0x10e0) = *(byte *)(param_1 + 0x10e0) ^ bVar2;" (assignment_expression "*(byte *)(param_1 + 0x10e0) = *(byte *)(param_1 + 0x10e0) ^ bVar2" (pointer_expression "*(byte *)(param_1 + 0x10e0)" (* "*") (cast_expression "(byte *)(param_1 + 0x10e0)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e0)" (( "(") (binary_expression "param_1 + 0x10e0" (identifier "param_1") (+ "+") (number_literal "0x10e0")) () ")")))) (= "=") (binary_expression "*(byte *)(param_1 + 0x10e0) ^ bVar2" (pointer_expression "*(byte *)(param_1 + 0x10e0)" (* "*") (cast_expression "(byte *)(param_1 + 0x10e0)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e0)" (( "(") (binary_expression "param_1 + 0x10e0" (identifier "param_1") (+ "+") (number_literal "0x10e0")) () ")")))) (^ "^") (identifier "bVar2"))) (; ";")) (expression_statement "*(byte *)(param_1 + 0x10e1) = (byte)uVar4 ^ *(byte *)(param_1 + 0x10e1);" (assignment_expression "*(byte *)(param_1 + 0x10e1) = (byte)uVar4 ^ *(byte *)(param_1 + 0x10e1)" (pointer_expression "*(byte *)(param_1 + 0x10e1)" (* "*") (cast_expression "(byte *)(param_1 + 0x10e1)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e1)" (( "(") (binary_expression "param_1 + 0x10e1" (identifier "param_1") (+ "+") (number_literal "0x10e1")) () ")")))) (= "=") (binary_expression "(byte)uVar4 ^ *(byte *)(param_1 + 0x10e1)" (cast_expression "(byte)uVar4" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "uVar4")) (^ "^") (pointer_expression "*(byte *)(param_1 + 0x10e1)" (* "*") (cast_expression "(byte *)(param_1 + 0x10e1)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e1)" (( "(") (binary_expression "param_1 + 0x10e1" (identifier "param_1") (+ "+") (number_literal "0x10e1")) () ")")))))) (; ";")) (} "}")) (else_clause "else {\n      *(byte *)(param_1 + 0x10e0) = ~*(byte *)(param_1 + 0x10e0);\n      *(byte *)(param_1 + 0x10e1) = *(byte *)(param_1 + 0x10e1) ^ 0xfe;\n      *(byte *)(param_1 + 0x10e2) = *(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18);\n      *(byte *)(param_1 + 0x10e3) = *(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10);\n      *(byte *)(param_1 + 0x10e4) = *(byte *)(param_1 + 0x10e4) ^ bVar2;\n      *(undefined4 *)(param_1 + 0x10a8) = 6;\n      *(byte *)(param_1 + 0x10e5) = *(byte *)(param_1 + 0x10e5) ^ (byte)uVar4;\n    }" (else "else") (compound_statement "{\n      *(byte *)(param_1 + 0x10e0) = ~*(byte *)(param_1 + 0x10e0);\n      *(byte *)(param_1 + 0x10e1) = *(byte *)(param_1 + 0x10e1) ^ 0xfe;\n      *(byte *)(param_1 + 0x10e2) = *(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18);\n      *(byte *)(param_1 + 0x10e3) = *(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10);\n      *(byte *)(param_1 + 0x10e4) = *(byte *)(param_1 + 0x10e4) ^ bVar2;\n      *(undefined4 *)(param_1 + 0x10a8) = 6;\n      *(byte *)(param_1 + 0x10e5) = *(byte *)(param_1 + 0x10e5) ^ (byte)uVar4;\n    }" ({ "{") (expression_statement "*(byte *)(param_1 + 0x10e0) = ~*(byte *)(param_1 + 0x10e0);" (assignment_expression "*(byte *)(param_1 + 0x10e0) = ~*(byte *)(param_1 + 0x10e0)" (pointer_expression "*(byte *)(param_1 + 0x10e0)" (* "*") (cast_expression "(byte *)(param_1 + 0x10e0)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e0)" (( "(") (binary_expression "param_1 + 0x10e0" (identifier "param_1") (+ "+") (number_literal "0x10e0")) () ")")))) (= "=") (unary_expression "~*(byte *)(param_1 + 0x10e0)" (~ "~") (pointer_expression "*(byte *)(param_1 + 0x10e0)" (* "*") (cast_expression "(byte *)(param_1 + 0x10e0)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e0)" (( "(") (binary_expression "param_1 + 0x10e0" (identifier "param_1") (+ "+") (number_literal "0x10e0")) () ")")))))) (; ";")) (expression_statement "*(byte *)(param_1 + 0x10e1) = *(byte *)(param_1 + 0x10e1) ^ 0xfe;" (assignment_expression "*(byte *)(param_1 + 0x10e1) = *(byte *)(param_1 + 0x10e1) ^ 0xfe" (pointer_expression "*(byte *)(param_1 + 0x10e1)" (* "*") (cast_expression "(byte *)(param_1 + 0x10e1)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e1)" (( "(") (binary_expression "param_1 + 0x10e1" (identifier "param_1") (+ "+") (number_literal "0x10e1")) () ")")))) (= "=") (binary_expression "*(byte *)(param_1 + 0x10e1) ^ 0xfe" (pointer_expression "*(byte *)(param_1 + 0x10e1)" (* "*") (cast_expression "(byte *)(param_1 + 0x10e1)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e1)" (( "(") (binary_expression "param_1 + 0x10e1" (identifier "param_1") (+ "+") (number_literal "0x10e1")) () ")")))) (^ "^") (number_literal "0xfe"))) (; ";")) (expression_statement "*(byte *)(param_1 + 0x10e2) = *(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18);" (assignment_expression "*(byte *)(param_1 + 0x10e2) = *(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18)" (pointer_expression "*(byte *)(param_1 + 0x10e2)" (* "*") (cast_expression "(byte *)(param_1 + 0x10e2)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e2)" (( "(") (binary_expression "param_1 + 0x10e2" (identifier "param_1") (+ "+") (number_literal "0x10e2")) () ")")))) (= "=") (binary_expression "*(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18)" (pointer_expression "*(byte *)(param_1 + 0x10e2)" (* "*") (cast_expression "(byte *)(param_1 + 0x10e2)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e2)" (( "(") (binary_expression "param_1 + 0x10e2" (identifier "param_1") (+ "+") (number_literal "0x10e2")) () ")")))) (^ "^") (call_expression "(byte)(uVar4 >> 0x18)" (parenthesized_expression "(byte)" (( "(") (identifier "byte") () ")")) (argument_list "(uVar4 >> 0x18)" (( "(") (binary_expression "uVar4 >> 0x18" (identifier "uVar4") (>> ">>") (number_literal "0x18")) () ")"))))) (; ";")) (expression_statement "*(byte *)(param_1 + 0x10e3) = *(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10);" (assignment_expression "*(byte *)(param_1 + 0x10e3) = *(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10)" (pointer_expression "*(byte *)(param_1 + 0x10e3)" (* "*") (cast_expression "(byte *)(param_1 + 0x10e3)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e3)" (( "(") (binary_expression "param_1 + 0x10e3" (identifier "param_1") (+ "+") (number_literal "0x10e3")) () ")")))) (= "=") (binary_expression "*(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10)" (pointer_expression "*(byte *)(param_1 + 0x10e3)" (* "*") (cast_expression "(byte *)(param_1 + 0x10e3)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e3)" (( "(") (binary_expression "param_1 + 0x10e3" (identifier "param_1") (+ "+") (number_literal "0x10e3")) () ")")))) (^ "^") (call_expression "(byte)(uVar4 >> 0x10)" (parenthesized_expression "(byte)" (( "(") (identifier "byte") () ")")) (argument_list "(uVar4 >> 0x10)" (( "(") (binary_expression "uVar4 >> 0x10" (identifier "uVar4") (>> ">>") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "*(byte *)(param_1 + 0x10e4) = *(byte *)(param_1 + 0x10e4) ^ bVar2;" (assignment_expression "*(byte *)(param_1 + 0x10e4) = *(byte *)(param_1 + 0x10e4) ^ bVar2" (pointer_expression "*(byte *)(param_1 + 0x10e4)" (* "*") (cast_expression "(byte *)(param_1 + 0x10e4)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e4)" (( "(") (binary_expression "param_1 + 0x10e4" (identifier "param_1") (+ "+") (number_literal "0x10e4")) () ")")))) (= "=") (binary_expression "*(byte *)(param_1 + 0x10e4) ^ bVar2" (pointer_expression "*(byte *)(param_1 + 0x10e4)" (* "*") (cast_expression "(byte *)(param_1 + 0x10e4)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e4)" (( "(") (binary_expression "param_1 + 0x10e4" (identifier "param_1") (+ "+") (number_literal "0x10e4")) () ")")))) (^ "^") (identifier "bVar2"))) (; ";")) (expression_statement "*(undefined4 *)(param_1 + 0x10a8) = 6;" (assignment_expression "*(undefined4 *)(param_1 + 0x10a8) = 6" (pointer_expression "*(undefined4 *)(param_1 + 0x10a8)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x10a8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10a8)" (( "(") (binary_expression "param_1 + 0x10a8" (identifier "param_1") (+ "+") (number_literal "0x10a8")) () ")")))) (= "=") (number_literal "6")) (; ";")) (expression_statement "*(byte *)(param_1 + 0x10e5) = *(byte *)(param_1 + 0x10e5) ^ (byte)uVar4;" (assignment_expression "*(byte *)(param_1 + 0x10e5) = *(byte *)(param_1 + 0x10e5) ^ (byte)uVar4" (pointer_expression "*(byte *)(param_1 + 0x10e5)" (* "*") (cast_expression "(byte *)(param_1 + 0x10e5)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e5)" (( "(") (binary_expression "param_1 + 0x10e5" (identifier "param_1") (+ "+") (number_literal "0x10e5")) () ")")))) (= "=") (binary_expression "*(byte *)(param_1 + 0x10e5) ^ (byte)uVar4" (pointer_expression "*(byte *)(param_1 + 0x10e5)" (* "*") (cast_expression "(byte *)(param_1 + 0x10e5)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10e5)" (( "(") (binary_expression "param_1 + 0x10e5" (identifier "param_1") (+ "+") (number_literal "0x10e5")) () ")")))) (^ "^") (cast_expression "(byte)uVar4" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "uVar4")))) (; ";")) (} "}")))) (} "}"))) (expression_statement "lVar7 = *(long *)(param_1 + 0x10b0);" (assignment_expression "lVar7 = *(long *)(param_1 + 0x10b0)" (identifier "lVar7") (= "=") (pointer_expression "*(long *)(param_1 + 0x10b0)" (* "*") (cast_expression "(long *)(param_1 + 0x10b0)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10b0)" (( "(") (binary_expression "param_1 + 0x10b0" (identifier "param_1") (+ "+") (number_literal "0x10b0")) () ")"))))) (; ";")) (expression_statement "*(char *)(param_1 + 0x10f0) = (char)lVar7 + -1;" (assignment_expression "*(char *)(param_1 + 0x10f0) = (char)lVar7 + -1" (pointer_expression "*(char *)(param_1 + 0x10f0)" (* "*") (cast_expression "(char *)(param_1 + 0x10f0)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10f0)" (( "(") (binary_expression "param_1 + 0x10f0" (identifier "param_1") (+ "+") (number_literal "0x10f0")) () ")")))) (= "=") (binary_expression "(char)lVar7 + -1" (cast_expression "(char)lVar7" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "lVar7")) (+ "+") (number_literal "-1"))) (; ";")) (if_statement "if (lVar7 == 0xf) {\n    lVar7 = 3;\n    *(undefined2 *)(param_1 + 0x10f1) = 0;\n  }\n  else {\n    *(undefined1 *)(param_1 + 0x10f1) = *param_2;\n    if (((((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&\n        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)) &&\n       (((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))))) {\n      *(undefined1 *)(param_1 + 0x10ff) = param_2[0xe];\n    }\n    if (0xf < 0x10U - lVar7) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x10U - lVar7)) = 0;\n    if (0x11 - lVar7 == 0x10) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x11 - lVar7)) = 0;\n    lVar7 = 0x12 - lVar7;\n    if (lVar7 == 0x10) goto LAB_001331f8;\n  }" (if "if") (parenthesized_expression "(lVar7 == 0xf)" (( "(") (binary_expression "lVar7 == 0xf" (identifier "lVar7") (== "==") (number_literal "0xf")) () ")")) (compound_statement "{\n    lVar7 = 3;\n    *(undefined2 *)(param_1 + 0x10f1) = 0;\n  }" ({ "{") (expression_statement "lVar7 = 3;" (assignment_expression "lVar7 = 3" (identifier "lVar7") (= "=") (number_literal "3")) (; ";")) (expression_statement "*(undefined2 *)(param_1 + 0x10f1) = 0;" (assignment_expression "*(undefined2 *)(param_1 + 0x10f1) = 0" (pointer_expression "*(undefined2 *)(param_1 + 0x10f1)" (* "*") (cast_expression "(undefined2 *)(param_1 + 0x10f1)" (( "(") (type_descriptor "undefined2 *" (type_identifier "undefined2") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10f1)" (( "(") (binary_expression "param_1 + 0x10f1" (identifier "param_1") (+ "+") (number_literal "0x10f1")) () ")")))) (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n    *(undefined1 *)(param_1 + 0x10f1) = *param_2;\n    if (((((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&\n        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)) &&\n       (((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))))) {\n      *(undefined1 *)(param_1 + 0x10ff) = param_2[0xe];\n    }\n    if (0xf < 0x10U - lVar7) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x10U - lVar7)) = 0;\n    if (0x11 - lVar7 == 0x10) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x11 - lVar7)) = 0;\n    lVar7 = 0x12 - lVar7;\n    if (lVar7 == 0x10) goto LAB_001331f8;\n  }" (else "else") (compound_statement "{\n    *(undefined1 *)(param_1 + 0x10f1) = *param_2;\n    if (((((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&\n        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)) &&\n       (((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))))) {\n      *(undefined1 *)(param_1 + 0x10ff) = param_2[0xe];\n    }\n    if (0xf < 0x10U - lVar7) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x10U - lVar7)) = 0;\n    if (0x11 - lVar7 == 0x10) goto LAB_001331f8;\n    *(undefined1 *)(param_1 + 0x10f0 + (0x11 - lVar7)) = 0;\n    lVar7 = 0x12 - lVar7;\n    if (lVar7 == 0x10) goto LAB_001331f8;\n  }" ({ "{") (expression_statement "*(undefined1 *)(param_1 + 0x10f1) = *param_2;" (assignment_expression "*(undefined1 *)(param_1 + 0x10f1) = *param_2" (pointer_expression "*(undefined1 *)(param_1 + 0x10f1)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10f1)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10f1)" (( "(") (binary_expression "param_1 + 0x10f1" (identifier "param_1") (+ "+") (number_literal "0x10f1")) () ")")))) (= "=") (pointer_expression "*param_2" (* "*") (identifier "param_2"))) (; ";")) (if_statement "if (((((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&\n        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)) &&\n       (((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))))) {\n      *(undefined1 *)(param_1 + 0x10ff) = param_2[0xe];\n    }" (if "if") (parenthesized_expression "(((((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&\n        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)) &&\n       (((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1))))))))" (( "(") (binary_expression "((((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&\n        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)) &&\n       (((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))))" (parenthesized_expression "((((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&\n        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6))" (( "(") (binary_expression "(((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&\n        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)" (parenthesized_expression "(((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7))))))))" (( "(") (binary_expression "((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&\n         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))" (parenthesized_expression "((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd))" (( "(") (binary_expression "(lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)" (parenthesized_expression "(lVar7 != 0xe)" (( "(") (binary_expression "lVar7 != 0xe" (identifier "lVar7") (!= "!=") (number_literal "0xe")) () ")")) (&& "&&") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd" (assignment_expression "*(undefined1 *)(param_1 + 0x10f2) = param_2[1]" (pointer_expression "*(undefined1 *)(param_1 + 0x10f2)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10f2)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10f2)" (( "(") (binary_expression "param_1 + 0x10f2" (identifier "param_1") (+ "+") (number_literal "0x10f2")) () ")")))) (= "=") (subscript_expression "param_2[1]" (identifier "param_2") ([ "[") (number_literal "1") (] "]"))) (, ",") (binary_expression "lVar7 != 0xd" (identifier "lVar7") (!= "!=") (number_literal "0xd"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))" (( "(") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7))))))" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))" (assignment_expression "*(undefined1 *)(param_1 + 0x10f3) = param_2[2]" (pointer_expression "*(undefined1 *)(param_1 + 0x10f3)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10f3)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10f3)" (( "(") (binary_expression "param_1 + 0x10f3" (identifier "param_1") (+ "+") (number_literal "0x10f3")) () ")")))) (= "=") (subscript_expression "param_2[2]" (identifier "param_2") ([ "[") (number_literal "2") (] "]"))) (, ",") (binary_expression "lVar7 != 0xc &&\n          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))" (binary_expression "lVar7 != 0xc" (identifier "lVar7") (!= "!=") (number_literal "0xc")) (&& "&&") (parenthesized_expression "((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))" (( "(") (parenthesized_expression "(((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7))))" (( "(") (binary_expression "((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&\n           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))" (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9))" (( "(") (binary_expression "(*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&\n            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)" (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10))" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)" (assignment_expression "*(undefined1 *)(param_1 + 0x10f4) = param_2[3]" (pointer_expression "*(undefined1 *)(param_1 + 0x10f4)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10f4)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10f4)" (( "(") (binary_expression "param_1 + 0x10f4" (identifier "param_1") (+ "+") (number_literal "0x10f4")) () ")")))) (= "=") (subscript_expression "param_2[3]" (identifier "param_2") ([ "[") (number_literal "3") (] "]"))) (, ",") (binary_expression "lVar7 != 0xb &&\n             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)" (binary_expression "lVar7 != 0xb" (identifier "lVar7") (!= "!=") (number_literal "0xb")) (&& "&&") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10" (assignment_expression "*(undefined1 *)(param_1 + 0x10f5) = param_2[4]" (pointer_expression "*(undefined1 *)(param_1 + 0x10f5)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10f5)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10f5)" (( "(") (binary_expression "param_1 + 0x10f5" (identifier "param_1") (+ "+") (number_literal "0x10f5")) () ")")))) (= "=") (subscript_expression "param_2[4]" (identifier "param_2") ([ "[") (number_literal "4") (] "]"))) (, ",") (binary_expression "lVar7 != 10" (identifier "lVar7") (!= "!=") (number_literal "10"))) () ")")))) () ")")) (&& "&&") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9" (assignment_expression "*(undefined1 *)(param_1 + 0x10f6) = param_2[5]" (pointer_expression "*(undefined1 *)(param_1 + 0x10f6)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10f6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10f6)" (( "(") (binary_expression "param_1 + 0x10f6" (identifier "param_1") (+ "+") (number_literal "0x10f6")) () ")")))) (= "=") (subscript_expression "param_2[5]" (identifier "param_2") ([ "[") (number_literal "5") (] "]"))) (, ",") (binary_expression "lVar7 != 9" (identifier "lVar7") (!= "!=") (number_literal "9"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))" (( "(") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7))" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)" (assignment_expression "*(undefined1 *)(param_1 + 0x10f7) = param_2[6]" (pointer_expression "*(undefined1 *)(param_1 + 0x10f7)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10f7)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10f7)" (( "(") (binary_expression "param_1 + 0x10f7" (identifier "param_1") (+ "+") (number_literal "0x10f7")) () ")")))) (= "=") (subscript_expression "param_2[6]" (identifier "param_2") ([ "[") (number_literal "6") (] "]"))) (, ",") (binary_expression "lVar7 != 8 &&\n            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)" (binary_expression "lVar7 != 8" (identifier "lVar7") (!= "!=") (number_literal "8")) (&& "&&") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7" (assignment_expression "*(undefined1 *)(param_1 + 0x10f8) = param_2[7]" (pointer_expression "*(undefined1 *)(param_1 + 0x10f8)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10f8)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10f8)" (( "(") (binary_expression "param_1 + 0x10f8" (identifier "param_1") (+ "+") (number_literal "0x10f8")) () ")")))) (= "=") (subscript_expression "param_2[7]" (identifier "param_2") ([ "[") (number_literal "7") (] "]"))) (, ",") (binary_expression "lVar7 != 7" (identifier "lVar7") (!= "!=") (number_literal "7"))) () ")")))) () ")")) () ")"))) () ")")) () ")")))) () ")")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6" (assignment_expression "*(undefined1 *)(param_1 + 0x10f9) = param_2[8]" (pointer_expression "*(undefined1 *)(param_1 + 0x10f9)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10f9)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10f9)" (( "(") (binary_expression "param_1 + 0x10f9" (identifier "param_1") (+ "+") (number_literal "0x10f9")) () ")")))) (= "=") (subscript_expression "param_2[8]" (identifier "param_2") ([ "[") (number_literal "8") (] "]"))) (, ",") (binary_expression "lVar7 != 6" (identifier "lVar7") (!= "!=") (number_literal "6"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))))" (( "(") (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1))))))" (( "(") (binary_expression "(*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&\n        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))" (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4))" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)" (assignment_expression "*(undefined1 *)(param_1 + 0x10fa) = param_2[9]" (pointer_expression "*(undefined1 *)(param_1 + 0x10fa)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10fa)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10fa)" (( "(") (binary_expression "param_1 + 0x10fa" (identifier "param_1") (+ "+") (number_literal "0x10fa")) () ")")))) (= "=") (subscript_expression "param_2[9]" (identifier "param_2") ([ "[") (number_literal "9") (] "]"))) (, ",") (binary_expression "lVar7 != 5 &&\n         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)" (binary_expression "lVar7 != 5" (identifier "lVar7") (!= "!=") (number_literal "5")) (&& "&&") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4" (assignment_expression "*(undefined1 *)(param_1 + 0x10fb) = param_2[10]" (pointer_expression "*(undefined1 *)(param_1 + 0x10fb)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10fb)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10fb)" (( "(") (binary_expression "param_1 + 0x10fb" (identifier "param_1") (+ "+") (number_literal "0x10fb")) () ")")))) (= "=") (subscript_expression "param_2[10]" (identifier "param_2") ([ "[") (number_literal "10") (] "]"))) (, ",") (binary_expression "lVar7 != 4" (identifier "lVar7") (!= "!=") (number_literal "4"))) () ")")))) () ")")) (&& "&&") (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))" (( "(") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1))))" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))" (assignment_expression "*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb]" (pointer_expression "*(undefined1 *)(param_1 + 0x10fc)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10fc)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10fc)" (( "(") (binary_expression "param_1 + 0x10fc" (identifier "param_1") (+ "+") (number_literal "0x10fc")) () ")")))) (= "=") (subscript_expression "param_2[0xb]" (identifier "param_2") ([ "[") (number_literal "0xb") (] "]"))) (, ",") (binary_expression "lVar7 != 3 &&\n         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))" (binary_expression "lVar7 != 3" (identifier "lVar7") (!= "!=") (number_literal "3")) (&& "&&") (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))" (( "(") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1))" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)" (assignment_expression "*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc]" (pointer_expression "*(undefined1 *)(param_1 + 0x10fd)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10fd)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10fd)" (( "(") (binary_expression "param_1 + 0x10fd" (identifier "param_1") (+ "+") (number_literal "0x10fd")) () ")")))) (= "=") (subscript_expression "param_2[0xc]" (identifier "param_2") ([ "[") (number_literal "0xc") (] "]"))) (, ",") (binary_expression "lVar7 != 2 &&\n          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)" (binary_expression "lVar7 != 2" (identifier "lVar7") (!= "!=") (number_literal "2")) (&& "&&") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1" (assignment_expression "*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd]" (pointer_expression "*(undefined1 *)(param_1 + 0x10fe)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10fe)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10fe)" (( "(") (binary_expression "param_1 + 0x10fe" (identifier "param_1") (+ "+") (number_literal "0x10fe")) () ")")))) (= "=") (subscript_expression "param_2[0xd]" (identifier "param_2") ([ "[") (number_literal "0xd") (] "]"))) (, ",") (binary_expression "lVar7 != 1" (identifier "lVar7") (!= "!=") (number_literal "1"))) () ")")))) () ")")) () ")")))) () ")")) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n      *(undefined1 *)(param_1 + 0x10ff) = param_2[0xe];\n    }" ({ "{") (expression_statement "*(undefined1 *)(param_1 + 0x10ff) = param_2[0xe];" (assignment_expression "*(undefined1 *)(param_1 + 0x10ff) = param_2[0xe]" (pointer_expression "*(undefined1 *)(param_1 + 0x10ff)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10ff)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10ff)" (( "(") (binary_expression "param_1 + 0x10ff" (identifier "param_1") (+ "+") (number_literal "0x10ff")) () ")")))) (= "=") (subscript_expression "param_2[0xe]" (identifier "param_2") ([ "[") (number_literal "0xe") (] "]"))) (; ";")) (} "}"))) (if_statement "if (0xf < 0x10U - lVar7) goto LAB_001331f8;" (if "if") (parenthesized_expression "(0xf < 0x10U - lVar7)" (( "(") (binary_expression "0xf < 0x10U - lVar7" (number_literal "0xf") (< "<") (binary_expression "0x10U - lVar7" (number_literal "0x10U") (- "-") (identifier "lVar7"))) () ")")) (goto_statement "goto LAB_001331f8;" (goto "goto") (statement_identifier "LAB_001331f8") (; ";"))) (expression_statement "*(undefined1 *)(param_1 + 0x10f0 + (0x10U - lVar7)) = 0;" (assignment_expression "*(undefined1 *)(param_1 + 0x10f0 + (0x10U - lVar7)) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f0 + (0x10U - lVar7))" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10f0 + (0x10U - lVar7))" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10f0 + (0x10U - lVar7))" (( "(") (binary_expression "param_1 + 0x10f0 + (0x10U - lVar7)" (binary_expression "param_1 + 0x10f0" (identifier "param_1") (+ "+") (number_literal "0x10f0")) (+ "+") (parenthesized_expression "(0x10U - lVar7)" (( "(") (binary_expression "0x10U - lVar7" (number_literal "0x10U") (- "-") (identifier "lVar7")) () ")"))) () ")")))) (= "=") (number_literal "0")) (; ";")) (if_statement "if (0x11 - lVar7 == 0x10) goto LAB_001331f8;" (if "if") (parenthesized_expression "(0x11 - lVar7 == 0x10)" (( "(") (binary_expression "0x11 - lVar7 == 0x10" (binary_expression "0x11 - lVar7" (number_literal "0x11") (- "-") (identifier "lVar7")) (== "==") (number_literal "0x10")) () ")")) (goto_statement "goto LAB_001331f8;" (goto "goto") (statement_identifier "LAB_001331f8") (; ";"))) (expression_statement "*(undefined1 *)(param_1 + 0x10f0 + (0x11 - lVar7)) = 0;" (assignment_expression "*(undefined1 *)(param_1 + 0x10f0 + (0x11 - lVar7)) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f0 + (0x11 - lVar7))" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10f0 + (0x11 - lVar7))" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10f0 + (0x11 - lVar7))" (( "(") (binary_expression "param_1 + 0x10f0 + (0x11 - lVar7)" (binary_expression "param_1 + 0x10f0" (identifier "param_1") (+ "+") (number_literal "0x10f0")) (+ "+") (parenthesized_expression "(0x11 - lVar7)" (( "(") (binary_expression "0x11 - lVar7" (number_literal "0x11") (- "-") (identifier "lVar7")) () ")"))) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "lVar7 = 0x12 - lVar7;" (assignment_expression "lVar7 = 0x12 - lVar7" (identifier "lVar7") (= "=") (binary_expression "0x12 - lVar7" (number_literal "0x12") (- "-") (identifier "lVar7"))) (; ";")) (if_statement "if (lVar7 == 0x10) goto LAB_001331f8;" (if "if") (parenthesized_expression "(lVar7 == 0x10)" (( "(") (binary_expression "lVar7 == 0x10" (identifier "lVar7") (== "==") (number_literal "0x10")) () ")")) (goto_statement "goto LAB_001331f8;" (goto "goto") (statement_identifier "LAB_001331f8") (; ";"))) (} "}")))) (expression_statement "*(undefined1 *)(param_1 + 0x10f0 + lVar7) = 0;" (assignment_expression "*(undefined1 *)(param_1 + 0x10f0 + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f0 + lVar7)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10f0 + lVar7)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10f0 + lVar7)" (( "(") (binary_expression "param_1 + 0x10f0 + lVar7" (binary_expression "param_1 + 0x10f0" (identifier "param_1") (+ "+") (number_literal "0x10f0")) (+ "+") (identifier "lVar7")) () ")")))) (= "=") (number_literal "0")) (; ";")) (if_statement "if (((((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)) &&\n       (*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd)) &&\n      (((*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&\n       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))))))) &&\n     ((*(undefined1 *)(param_1 + 0x10f8 + lVar7) = 0, lVar7 != 7 &&\n      (((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)))))) {\n    *(undefined1 *)(param_1 + 0x10ff) = 0;\n  }" (if "if") (parenthesized_expression "(((((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)) &&\n       (*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd)) &&\n      (((*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&\n       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))))))) &&\n     ((*(undefined1 *)(param_1 + 0x10f8 + lVar7) = 0, lVar7 != 7 &&\n      (((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3))))))" (( "(") (binary_expression "((((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)) &&\n       (*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd)) &&\n      (((*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&\n       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))))))) &&\n     ((*(undefined1 *)(param_1 + 0x10f8 + lVar7) = 0, lVar7 != 7 &&\n      (((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)))))" (parenthesized_expression "((((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)) &&\n       (*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd)) &&\n      (((*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&\n       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8))))))))" (( "(") (binary_expression "(((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)) &&\n       (*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd)) &&\n      (((*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&\n       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))))))" (parenthesized_expression "(((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)) &&\n       (*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd))" (( "(") (binary_expression "((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)) &&\n       (*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd)" (parenthesized_expression "((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe))" (( "(") (binary_expression "(lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)" (parenthesized_expression "(lVar7 != 0xf)" (( "(") (binary_expression "lVar7 != 0xf" (identifier "lVar7") (!= "!=") (number_literal "0xf")) () ")")) (&& "&&") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe" (assignment_expression "*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f1 + lVar7)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10f1 + lVar7)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10f1 + lVar7)" (( "(") (binary_expression "param_1 + 0x10f1 + lVar7" (binary_expression "param_1 + 0x10f1" (identifier "param_1") (+ "+") (number_literal "0x10f1")) (+ "+") (identifier "lVar7")) () ")")))) (= "=") (number_literal "0")) (, ",") (binary_expression "lVar7 != 0xe" (identifier "lVar7") (!= "!=") (number_literal "0xe"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd)" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd" (assignment_expression "*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f2 + lVar7)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10f2 + lVar7)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10f2 + lVar7)" (( "(") (binary_expression "param_1 + 0x10f2 + lVar7" (binary_expression "param_1 + 0x10f2" (identifier "param_1") (+ "+") (number_literal "0x10f2")) (+ "+") (identifier "lVar7")) () ")")))) (= "=") (number_literal "0")) (, ",") (binary_expression "lVar7 != 0xd" (identifier "lVar7") (!= "!=") (number_literal "0xd"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(((*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&\n       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))))))" (( "(") (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&\n       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8))))))" (( "(") (binary_expression "(*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&\n       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))))" (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb))" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)" (assignment_expression "*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f3 + lVar7)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10f3 + lVar7)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10f3 + lVar7)" (( "(") (binary_expression "param_1 + 0x10f3 + lVar7" (binary_expression "param_1 + 0x10f3" (identifier "param_1") (+ "+") (number_literal "0x10f3")) (+ "+") (identifier "lVar7")) () ")")))) (= "=") (number_literal "0")) (, ",") (binary_expression "lVar7 != 0xc &&\n        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)" (binary_expression "lVar7 != 0xc" (identifier "lVar7") (!= "!=") (number_literal "0xc")) (&& "&&") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb" (assignment_expression "*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f4 + lVar7)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10f4 + lVar7)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10f4 + lVar7)" (( "(") (binary_expression "param_1 + 0x10f4 + lVar7" (binary_expression "param_1 + 0x10f4" (identifier "param_1") (+ "+") (number_literal "0x10f4")) (+ "+") (identifier "lVar7")) () ")")))) (= "=") (number_literal "0")) (, ",") (binary_expression "lVar7 != 0xb" (identifier "lVar7") (!= "!=") (number_literal "0xb"))) () ")")))) () ")")) (&& "&&") (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))))" (( "(") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8))))" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))" (assignment_expression "*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f5 + lVar7)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10f5 + lVar7)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10f5 + lVar7)" (( "(") (binary_expression "param_1 + 0x10f5 + lVar7" (binary_expression "param_1 + 0x10f5" (identifier "param_1") (+ "+") (number_literal "0x10f5")) (+ "+") (identifier "lVar7")) () ")")))) (= "=") (number_literal "0")) (, ",") (binary_expression "lVar7 != 10 &&\n        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))" (binary_expression "lVar7 != 10" (identifier "lVar7") (!= "!=") (number_literal "10")) (&& "&&") (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))" (( "(") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8))" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)" (assignment_expression "*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f6 + lVar7)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10f6 + lVar7)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10f6 + lVar7)" (( "(") (binary_expression "param_1 + 0x10f6 + lVar7" (binary_expression "param_1 + 0x10f6" (identifier "param_1") (+ "+") (number_literal "0x10f6")) (+ "+") (identifier "lVar7")) () ")")))) (= "=") (number_literal "0")) (, ",") (binary_expression "lVar7 != 9 &&\n         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)" (binary_expression "lVar7 != 9" (identifier "lVar7") (!= "!=") (number_literal "9")) (&& "&&") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8" (assignment_expression "*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f7 + lVar7)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10f7 + lVar7)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10f7 + lVar7)" (( "(") (binary_expression "param_1 + 0x10f7 + lVar7" (binary_expression "param_1 + 0x10f7" (identifier "param_1") (+ "+") (number_literal "0x10f7")) (+ "+") (identifier "lVar7")) () ")")))) (= "=") (number_literal "0")) (, ",") (binary_expression "lVar7 != 8" (identifier "lVar7") (!= "!=") (number_literal "8"))) () ")")))) () ")")) () ")")))) () ")")) () ")"))) () ")")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10f8 + lVar7) = 0, lVar7 != 7 &&\n      (((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)))))" (( "(") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f8 + lVar7) = 0, lVar7 != 7 &&\n      (((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3))))" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10f8 + lVar7) = 0, lVar7 != 7 &&\n      (((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)))" (assignment_expression "*(undefined1 *)(param_1 + 0x10f8 + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f8 + lVar7)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10f8 + lVar7)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10f8 + lVar7)" (( "(") (binary_expression "param_1 + 0x10f8 + lVar7" (binary_expression "param_1 + 0x10f8" (identifier "param_1") (+ "+") (number_literal "0x10f8")) (+ "+") (identifier "lVar7")) () ")")))) (= "=") (number_literal "0")) (, ",") (binary_expression "lVar7 != 7 &&\n      (((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)))" (binary_expression "lVar7 != 7" (identifier "lVar7") (!= "!=") (number_literal "7")) (&& "&&") (parenthesized_expression "(((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)))" (( "(") (parenthesized_expression "((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3))" (( "(") (binary_expression "(*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&\n       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)" (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5))" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)" (assignment_expression "*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10f9 + lVar7)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10f9 + lVar7)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10f9 + lVar7)" (( "(") (binary_expression "param_1 + 0x10f9 + lVar7" (binary_expression "param_1 + 0x10f9" (identifier "param_1") (+ "+") (number_literal "0x10f9")) (+ "+") (identifier "lVar7")) () ")")))) (= "=") (number_literal "0")) (, ",") (binary_expression "lVar7 != 6 &&\n        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)" (binary_expression "lVar7 != 6" (identifier "lVar7") (!= "!=") (number_literal "6")) (&& "&&") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5" (assignment_expression "*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10fa + lVar7)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10fa + lVar7)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10fa + lVar7)" (( "(") (binary_expression "param_1 + 0x10fa + lVar7" (binary_expression "param_1 + 0x10fa" (identifier "param_1") (+ "+") (number_literal "0x10fa")) (+ "+") (identifier "lVar7")) () ")")))) (= "=") (number_literal "0")) (, ",") (binary_expression "lVar7 != 5" (identifier "lVar7") (!= "!=") (number_literal "5"))) () ")")))) () ")")) (&& "&&") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3" (assignment_expression "*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10fb + lVar7)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10fb + lVar7)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10fb + lVar7)" (( "(") (binary_expression "param_1 + 0x10fb + lVar7" (binary_expression "param_1 + 0x10fb" (identifier "param_1") (+ "+") (number_literal "0x10fb")) (+ "+") (identifier "lVar7")) () ")")))) (= "=") (number_literal "0")) (, ",") (binary_expression "lVar7 == 3" (identifier "lVar7") (== "==") (number_literal "3"))) () ")"))) () ")")) () ")")))) () ")")) () ")"))) () ")")) (compound_statement "{\n    *(undefined1 *)(param_1 + 0x10ff) = 0;\n  }" ({ "{") (expression_statement "*(undefined1 *)(param_1 + 0x10ff) = 0;" (assignment_expression "*(undefined1 *)(param_1 + 0x10ff) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x10ff)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x10ff)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10ff)" (( "(") (binary_expression "param_1 + 0x10ff" (identifier "param_1") (+ "+") (number_literal "0x10ff")) () ")")))) (= "=") (number_literal "0")) (; ";")) (} "}"))) (labeled_statement "LAB_001331f8:\n  *(undefined1 *)(param_1 + 0x1110) = 0x10;" (statement_identifier "LAB_001331f8") (: ":") (expression_statement "*(undefined1 *)(param_1 + 0x1110) = 0x10;" (assignment_expression "*(undefined1 *)(param_1 + 0x1110) = 0x10" (pointer_expression "*(undefined1 *)(param_1 + 0x1110)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x1110)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1110)" (( "(") (binary_expression "param_1 + 0x1110" (identifier "param_1") (+ "+") (number_literal "0x1110")) () ")")))) (= "=") (number_literal "0x10")) (; ";"))) (return_statement "return;" (return "return") (; ";")) (} "}")))

int function_1(type_1 *var_1,type_2 *var_3,type_3 var_4)

{
  type_4 var_12;
  type_4 var_11;
  int var_9;
  type_3 var_6;
  long var_8;
  type_3 var_5;
  type_3 var_7;
  
  if (var_1 == (type_1 *)0x0) {
                    /* WARNING: Subroutine does not return */
    var_2("ccm != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1a);
  }
  if (var_3 == (type_2 *)0x0) {
                    /* WARNING: Subroutine does not return */
    var_2("nonce != NULL","src/encauth/ccm/ccm_add_nonce.c",0x1b);
  }
  if (0xd < var_4) {
    var_4 = 0xd;
  }
  var_5 = var_1->L;
  var_6 = 0xf - var_4;
  var_1->var_4 = var_4;
  if (var_5 < var_6) {
    var_1->L = var_6;
  }
  else {
    var_7 = var_4 + var_5;
    var_4 = 0xf - var_5;
    var_6 = var_5;
    if (0xf < var_7) {
      var_1->var_4 = var_4;
    }
  }
  var_5 = var_1->ptlen;
  var_1->PAD[0] = (var_1->aadlen != 0) << 6 | (type_4)((var_1->taglen + -2 >> 1) << 3) | (char)var_6 - 1U;
  if (var_4 == 0) {
    var_8 = 1;
LAB_00133225:
    if (var_6 < 5) goto LAB_00132d92;
    var_1->PAD[var_8] = '\0';
    if ((((var_6 != 5) && (var_1->PAD[var_8 + 1] = '\0', var_6 != 6)) &&
        ((var_1->PAD[var_8 + 2] = '\0', var_6 != 7 &&
         (((((var_1->PAD[var_8 + 3] = '\0', var_6 != 8 && (var_1->PAD[var_8 + 4] = '\0', var_6 != 9)) &&
            (var_1->PAD[var_8 + 5] = '\0', var_6 != 10)) &&
           ((var_1->PAD[var_8 + 6] = '\0', var_6 != 0xb && (var_1->PAD[var_8 + 7] = '\0', var_6 != 0xc))
           )) && (var_1->PAD[var_8 + 8] = '\0', var_6 != 0xd)))))) &&
       (((var_1->PAD[var_8 + 9] = '\0', var_6 != 0xe && (var_1->PAD[var_8 + 10] = '\0', var_6 != 0xf))
        && ((var_1->PAD[var_8 + 0xb] = '\0', var_6 != 0x10 &&
            ((var_1->PAD[var_8 + 0xc] = '\0', var_6 != 0x11 &&
             (var_1->PAD[var_8 + 0xd] = '\0', var_6 != 0x12)))))))) {
      var_1->PAD[var_8 + 0xe] = '\0';
    }
    var_7 = var_6 - 4;
    var_8 = var_8 + var_7;
  }
  else {
    var_1->PAD[1] = *var_3;
    if ((((1 < var_4) && (var_1->PAD[2] = var_3[1], var_4 != 2)) &&
        (var_1->PAD[3] = var_3[2], var_4 != 3)) &&
       (((((var_1->PAD[4] = var_3[3], var_4 != 4 && (var_1->PAD[5] = var_3[4], var_4 != 5)) &&
          ((var_1->PAD[6] = var_3[5], var_4 != 6 &&
           ((var_1->PAD[7] = var_3[6], var_4 != 7 && (var_1->PAD[8] = var_3[7], var_4 != 8))))))
         && (var_1->PAD[9] = var_3[8], var_4 != 9)) &&
        ((((var_1->PAD[10] = var_3[9], var_4 != 10 && (var_1->PAD[0xb] = var_3[10], var_4 != 0xb))
          && (var_1->PAD[0xc] = var_3[0xb], var_4 != 0xc)) &&
         ((var_1->PAD[0xd] = var_3[0xc], var_4 != 0xd &&
          (var_1->PAD[0xe] = var_3[0xd], var_4 != 0xe)))))))) {
      var_1->PAD[0xf] = var_3[0xe];
    }
    var_8 = var_4 + 1;
    if (3 < var_6) goto LAB_00133225;
    var_9 = 8;
    if ((var_6 == 3) || (var_9 = 0x10, var_6 == 2)) {
      var_5 = var_5 << var_9;
    }
    else {
      var_7 = var_5 << 0x18;
      var_5 = 0;
      if (var_6 != 0) {
        var_5 = var_7;
      }
    }
LAB_00132d92:
    var_7 = 0;
  }
  if (((((var_7 < var_6) && (var_1->PAD[var_8] = (type_2)(var_5 >> 0x18), var_7 + 1 < var_6)) &&
       (var_1->PAD[var_8 + 1] = (type_2)(var_5 >> 0x10), var_7 + 2 < var_6)) &&
      (((var_1->PAD[var_8 + 2] = (type_2)(var_5 >> 8), var_7 + 3 < var_6 &&
        (var_1->PAD[var_8 + 3] = (type_2)var_5, var_7 + 4 < var_6)) &&
       ((var_1->PAD[var_8 + 4] = '\0', var_7 + 5 < var_6 &&
        ((var_1->PAD[var_8 + 5] = '\0', var_7 + 6 < var_6 &&
         (var_1->PAD[var_8 + 6] = '\0', var_7 + 7 < var_6)))))))) &&
     (((var_1->PAD[var_8 + 7] = '\0', var_7 + 8 < var_6 &&
       (((var_1->PAD[var_8 + 8] = '\0', var_7 + 9 < var_6 &&
         (var_1->PAD[var_8 + 9] = '\0', var_7 + 10 < var_6)) &&
        (var_1->PAD[var_8 + 10] = '\0', var_7 + 0xb < var_6)))) &&
      ((var_1->PAD[var_8 + 0xb] = '\0', var_7 + 0xc < var_6 &&
       (var_1->PAD[var_8 + 0xc] = '\0', var_7 + 0xd < var_6)))))) {
    var_1->PAD[var_8 + 0xd] = '\0';
    if (var_7 + 0xe < var_6) {
      var_1->PAD[var_8 + 0xe] = '\0';
      if (var_7 + 0xf < var_6) {
        var_1->PAD[var_8 + 0xf] = '\0';
      }
    }
  }
  var_9 = (**(type_5 **)(var_10 + (long)var_1->cipher * 0xc0 + 0x28))
                    (var_1->PAD,var_1->PAD,var_1);
  if (var_9 != 0) {
    return var_9;
  }
  var_5 = var_1->aadlen;
  var_1->x = 0;
  if (var_5 != 0) {
    var_12 = var_1->PAD[1];
    var_11 = (type_4)(var_5 >> 8);
    if (var_5 < 0xff00) {
      var_1->x = 2;
      var_1->PAD[0] = var_1->PAD[0] ^ var_11;
      var_1->PAD[1] = (type_4)var_5 ^ var_12;
    }
    else {
      var_1->PAD[0] = ~var_1->PAD[0];
      var_1->PAD[1] = var_12 ^ 0xfe;
      var_1->PAD[2] = var_1->PAD[2] ^ (type_4)(var_5 >> 0x18);
      var_1->PAD[3] = var_1->PAD[3] ^ (type_4)(var_5 >> 0x10);
      var_1->PAD[4] = var_1->PAD[4] ^ var_11;
      var_1->x = 6;
      var_1->PAD[5] = var_1->PAD[5] ^ (type_4)var_5;
    }
  }
  var_5 = var_1->L;
  var_1->ctr[0] = (char)var_5 + 0xff;
  if (var_5 == 0xf) {
    var_8 = 3;
    var_1->ctr[1] = '\0';
    var_1->ctr[2] = '\0';
  }
  else {
    var_1->ctr[1] = *var_3;
    if (((((var_5 != 0xe) && (var_1->ctr[2] = var_3[1], var_5 != 0xd)) &&
         ((var_1->ctr[3] = var_3[2], var_5 != 0xc &&
          ((((var_1->ctr[4] = var_3[3], var_5 != 0xb && (var_1->ctr[5] = var_3[4], var_5 != 10)) &&
            (var_1->ctr[6] = var_3[5], var_5 != 9)) &&
           ((var_1->ctr[7] = var_3[6], var_5 != 8 && (var_1->ctr[8] = var_3[7], var_5 != 7)))))))) &&
        (var_1->ctr[9] = var_3[8], var_5 != 6)) &&
       (((var_1->ctr[10] = var_3[9], var_5 != 5 && (var_1->ctr[0xb] = var_3[10], var_5 != 4)) &&
        ((var_1->ctr[0xc] = var_3[0xb], var_5 != 3 &&
         ((var_1->ctr[0xd] = var_3[0xc], var_5 != 2 && (var_1->ctr[0xe] = var_3[0xd], var_5 != 1))))))))
    {
      var_1->ctr[0xf] = var_3[0xe];
    }
    if (0xf < -var_5 + 0x10) goto LAB_001331f8;
    *(type_6 *)((long)var_1 + -var_5 + 0x1100) = 0;
    if (-var_5 == -1) goto LAB_001331f8;
    *(type_6 *)((long)var_1 + -var_5 + 0x1101) = 0;
    var_8 = 0x12 - var_5;
    if (var_8 == 0x10) goto LAB_001331f8;
  }
  var_1->ctr[var_8] = '\0';
  if (((((var_8 != 0xf) && (var_1->ctr[var_8 + 1] = '\0', var_8 != 0xe)) &&
       (var_1->ctr[var_8 + 2] = '\0', var_8 != 0xd)) &&
      (((var_1->ctr[var_8 + 3] = '\0', var_8 != 0xc && (var_1->ctr[var_8 + 4] = '\0', var_8 != 0xb)) &&
       ((var_1->ctr[var_8 + 5] = '\0', var_8 != 10 &&
        ((var_1->ctr[var_8 + 6] = '\0', var_8 != 9 && (var_1->ctr[var_8 + 7] = '\0', var_8 != 8))))))))
     && ((var_1->ctr[var_8 + 8] = '\0', var_8 != 7 &&
         (((var_1->ctr[var_8 + 9] = '\0', var_8 != 6 && (var_1->ctr[var_8 + 10] = '\0', var_8 != 5)) &&
          (var_1->ctr[var_8 + 0xb] = '\0', var_8 == 3)))))) {
    var_1->ctr[0xf] = '\0';
  }
LAB_001331f8:
  var_1->CTRlen = '\x10';
  return 0;
}


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

void MASKED(long param_1,undefined1 *param_2,ulong param_3)

{
  ulong uVar1;
  byte bVar2;
  int iVar3;
  ulong uVar4;
  ulong uVar5;
  long lVar6;
  long lVar7;
  long lVar8;
  
  if (param_1 == 0) {
                    /* WARNING: Subroutine does not return */
    crypt_argchk("ccm != NULL","src/encauth/ccm/MASKED.c",0x1a);
  }
  if (param_2 == (undefined1 *)0x0) {
                    /* WARNING: Subroutine does not return */
    crypt_argchk("nonce != NULL","src/encauth/ccm/MASKED.c",0x1b);
  }
  if (0xd < param_3) {
    param_3 = 0xd;
  }
  uVar4 = *(ulong *)(param_1 + 0x10b0);
  uVar5 = 0xf - param_3;
  *(ulong *)(param_1 + 0x10d8) = param_3;
  if (uVar4 < uVar5) {
    *(ulong *)(param_1 + 0x10b0) = uVar5;
  }
  else {
    uVar1 = param_3 + uVar4;
    param_3 = 0xf - uVar4;
    uVar5 = uVar4;
    if (0xf < uVar1) {
      *(ulong *)(param_1 + 0x10d8) = param_3;
    }
  }
  lVar7 = *(long *)(param_1 + 0x10b8);
  *(byte *)(param_1 + 0x10e0) =
       (*(long *)(param_1 + 0x10c8) != 0) << 6 | (byte)((*(int *)(param_1 + 0x10a4) + -2 >> 1) << 3)
       | (char)uVar5 - 1U;
  if (param_3 == 0) {
    lVar6 = 1;
LAB_00133225:
    if (uVar5 < 5) goto LAB_00132d92;
    *(undefined1 *)(param_1 + 0x10e0 + lVar6) = 0;
    if ((((uVar5 != 5) && (*(undefined1 *)(param_1 + 0x10e1 + lVar6) = 0, uVar5 != 6)) &&
        ((*(undefined1 *)(param_1 + 0x10e2 + lVar6) = 0, uVar5 != 7 &&
         (((((*(undefined1 *)(param_1 + 0x10e3 + lVar6) = 0, uVar5 != 8 &&
             (*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar5 != 9)) &&
            (*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar5 != 10)) &&
           ((*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar5 != 0xb &&
            (*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar5 != 0xc)))) &&
          (*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar5 != 0xd)))))) &&
       (((*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar5 != 0xe &&
         (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar5 != 0xf)) &&
        ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar5 != 0x10 &&
         ((*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar5 != 0x11 &&
          (*(undefined1 *)(param_1 + 0x10ed + lVar6) = 0, uVar5 != 0x12)))))))) {
      *(undefined1 *)(param_1 + 0x10ee + lVar6) = 0;
    }
    uVar4 = uVar5 - 4;
    lVar6 = lVar6 + uVar4;
  }
  else {
    *(undefined1 *)(param_1 + 0x10e1) = *param_2;
    if ((((1 < param_3) && (*(undefined1 *)(param_1 + 0x10e2) = param_2[1], param_3 != 2)) &&
        (*(undefined1 *)(param_1 + 0x10e3) = param_2[2], param_3 != 3)) &&
       (((((*(undefined1 *)(param_1 + 0x10e4) = param_2[3], param_3 != 4 &&
           (*(undefined1 *)(param_1 + 0x10e5) = param_2[4], param_3 != 5)) &&
          ((*(undefined1 *)(param_1 + 0x10e6) = param_2[5], param_3 != 6 &&
           ((*(undefined1 *)(param_1 + 0x10e7) = param_2[6], param_3 != 7 &&
            (*(undefined1 *)(param_1 + 0x10e8) = param_2[7], param_3 != 8)))))) &&
         (*(undefined1 *)(param_1 + 0x10e9) = param_2[8], param_3 != 9)) &&
        ((((*(undefined1 *)(param_1 + 0x10ea) = param_2[9], param_3 != 10 &&
           (*(undefined1 *)(param_1 + 0x10eb) = param_2[10], param_3 != 0xb)) &&
          (*(undefined1 *)(param_1 + 0x10ec) = param_2[0xb], param_3 != 0xc)) &&
         ((*(undefined1 *)(param_1 + 0x10ed) = param_2[0xc], param_3 != 0xd &&
          (*(undefined1 *)(param_1 + 0x10ee) = param_2[0xd], param_3 != 0xe)))))))) {
      *(undefined1 *)(param_1 + 0x10ef) = param_2[0xe];
    }
    lVar6 = param_3 + 1;
    if (3 < uVar5) goto LAB_00133225;
    iVar3 = 8;
    if ((uVar5 == 3) || (iVar3 = 0x10, uVar5 == 2)) {
      lVar7 = lVar7 << iVar3;
    }
    else {
      lVar8 = lVar7 << 0x18;
      lVar7 = 0;
      if (uVar5 != 0) {
        lVar7 = lVar8;
      }
    }
LAB_00132d92:
    uVar4 = 0;
  }
  if (((((uVar4 < uVar5) &&
        (*(char *)(param_1 + 0x10e0 + lVar6) = (char)((ulong)lVar7 >> 0x18), uVar4 + 1 < uVar5)) &&
       (*(char *)(param_1 + 0x10e1 + lVar6) = (char)((ulong)lVar7 >> 0x10), uVar4 + 2 < uVar5)) &&
      (((*(char *)(param_1 + 0x10e2 + lVar6) = (char)((ulong)lVar7 >> 8), uVar4 + 3 < uVar5 &&
        (*(char *)(param_1 + 0x10e3 + lVar6) = (char)lVar7, uVar4 + 4 < uVar5)) &&
       ((*(undefined1 *)(param_1 + 0x10e4 + lVar6) = 0, uVar4 + 5 < uVar5 &&
        ((*(undefined1 *)(param_1 + 0x10e5 + lVar6) = 0, uVar4 + 6 < uVar5 &&
         (*(undefined1 *)(param_1 + 0x10e6 + lVar6) = 0, uVar4 + 7 < uVar5)))))))) &&
     (((*(undefined1 *)(param_1 + 0x10e7 + lVar6) = 0, uVar4 + 8 < uVar5 &&
       (((*(undefined1 *)(param_1 + 0x10e8 + lVar6) = 0, uVar4 + 9 < uVar5 &&
         (*(undefined1 *)(param_1 + 0x10e9 + lVar6) = 0, uVar4 + 10 < uVar5)) &&
        (*(undefined1 *)(param_1 + 0x10ea + lVar6) = 0, uVar4 + 0xb < uVar5)))) &&
      ((*(undefined1 *)(param_1 + 0x10eb + lVar6) = 0, uVar4 + 0xc < uVar5 &&
       (*(undefined1 *)(param_1 + 0x10ec + lVar6) = 0, uVar4 + 0xd < uVar5)))))) {
    *(undefined1 *)(param_1 + 0x10ed + lVar6) = 0;
    if (uVar4 + 0xe < uVar5) {
      *(undefined1 *)(param_1 + lVar6 + 0x10ee) = 0;
      if (uVar4 + 0xf < uVar5) {
        *(undefined1 *)(param_1 + lVar6 + 0x10ef) = 0;
      }
    }
  }
  iVar3 = (**(code **)(PTR_cipher_descriptor_001dded0 +
                      (long)*(int *)(param_1 + 0x10a0) * 0xc0 + 0x28))
                    (param_1 + 0x10e0,param_1 + 0x10e0,param_1);
  if (iVar3 != 0) {
    return;
  }
  uVar4 = *(ulong *)(param_1 + 0x10c8);
  *(undefined4 *)(param_1 + 0x10a8) = 0;
  if (uVar4 != 0) {
    bVar2 = (byte)(uVar4 >> 8);
    if (uVar4 < 0xff00) {
      *(undefined4 *)(param_1 + 0x10a8) = 2;
      *(byte *)(param_1 + 0x10e0) = *(byte *)(param_1 + 0x10e0) ^ bVar2;
      *(byte *)(param_1 + 0x10e1) = (byte)uVar4 ^ *(byte *)(param_1 + 0x10e1);
    }
    else {
      *(byte *)(param_1 + 0x10e0) = ~*(byte *)(param_1 + 0x10e0);
      *(byte *)(param_1 + 0x10e1) = *(byte *)(param_1 + 0x10e1) ^ 0xfe;
      *(byte *)(param_1 + 0x10e2) = *(byte *)(param_1 + 0x10e2) ^ (byte)(uVar4 >> 0x18);
      *(byte *)(param_1 + 0x10e3) = *(byte *)(param_1 + 0x10e3) ^ (byte)(uVar4 >> 0x10);
      *(byte *)(param_1 + 0x10e4) = *(byte *)(param_1 + 0x10e4) ^ bVar2;
      *(undefined4 *)(param_1 + 0x10a8) = 6;
      *(byte *)(param_1 + 0x10e5) = *(byte *)(param_1 + 0x10e5) ^ (byte)uVar4;
    }
  }
  lVar7 = *(long *)(param_1 + 0x10b0);
  *(char *)(param_1 + 0x10f0) = (char)lVar7 + -1;
  if (lVar7 == 0xf) {
    lVar7 = 3;
    *(undefined2 *)(param_1 + 0x10f1) = 0;
  }
  else {
    *(undefined1 *)(param_1 + 0x10f1) = *param_2;
    if (((((lVar7 != 0xe) && (*(undefined1 *)(param_1 + 0x10f2) = param_2[1], lVar7 != 0xd)) &&
         ((*(undefined1 *)(param_1 + 0x10f3) = param_2[2], lVar7 != 0xc &&
          ((((*(undefined1 *)(param_1 + 0x10f4) = param_2[3], lVar7 != 0xb &&
             (*(undefined1 *)(param_1 + 0x10f5) = param_2[4], lVar7 != 10)) &&
            (*(undefined1 *)(param_1 + 0x10f6) = param_2[5], lVar7 != 9)) &&
           ((*(undefined1 *)(param_1 + 0x10f7) = param_2[6], lVar7 != 8 &&
            (*(undefined1 *)(param_1 + 0x10f8) = param_2[7], lVar7 != 7)))))))) &&
        (*(undefined1 *)(param_1 + 0x10f9) = param_2[8], lVar7 != 6)) &&
       (((*(undefined1 *)(param_1 + 0x10fa) = param_2[9], lVar7 != 5 &&
         (*(undefined1 *)(param_1 + 0x10fb) = param_2[10], lVar7 != 4)) &&
        ((*(undefined1 *)(param_1 + 0x10fc) = param_2[0xb], lVar7 != 3 &&
         ((*(undefined1 *)(param_1 + 0x10fd) = param_2[0xc], lVar7 != 2 &&
          (*(undefined1 *)(param_1 + 0x10fe) = param_2[0xd], lVar7 != 1)))))))) {
      *(undefined1 *)(param_1 + 0x10ff) = param_2[0xe];
    }
    if (0xf < 0x10U - lVar7) goto LAB_001331f8;
    *(undefined1 *)(param_1 + 0x10f0 + (0x10U - lVar7)) = 0;
    if (0x11 - lVar7 == 0x10) goto LAB_001331f8;
    *(undefined1 *)(param_1 + 0x10f0 + (0x11 - lVar7)) = 0;
    lVar7 = 0x12 - lVar7;
    if (lVar7 == 0x10) goto LAB_001331f8;
  }
  *(undefined1 *)(param_1 + 0x10f0 + lVar7) = 0;
  if (((((lVar7 != 0xf) && (*(undefined1 *)(param_1 + 0x10f1 + lVar7) = 0, lVar7 != 0xe)) &&
       (*(undefined1 *)(param_1 + 0x10f2 + lVar7) = 0, lVar7 != 0xd)) &&
      (((*(undefined1 *)(param_1 + 0x10f3 + lVar7) = 0, lVar7 != 0xc &&
        (*(undefined1 *)(param_1 + 0x10f4 + lVar7) = 0, lVar7 != 0xb)) &&
       ((*(undefined1 *)(param_1 + 0x10f5 + lVar7) = 0, lVar7 != 10 &&
        ((*(undefined1 *)(param_1 + 0x10f6 + lVar7) = 0, lVar7 != 9 &&
         (*(undefined1 *)(param_1 + 0x10f7 + lVar7) = 0, lVar7 != 8)))))))) &&
     ((*(undefined1 *)(param_1 + 0x10f8 + lVar7) = 0, lVar7 != 7 &&
      (((*(undefined1 *)(param_1 + 0x10f9 + lVar7) = 0, lVar7 != 6 &&
        (*(undefined1 *)(param_1 + 0x10fa + lVar7) = 0, lVar7 != 5)) &&
       (*(undefined1 *)(param_1 + 0x10fb + lVar7) = 0, lVar7 == 3)))))) {
    *(undefined1 *)(param_1 + 0x10ff) = 0;
  }
LAB_001331f8:
  *(undefined1 *)(param_1 + 0x1110) = 0x10;
  return;
}

