
/* WARNING: Removing unreachable block (ram,0x0007d54c) */
/* WARNING: Removing unreachable block (ram,0x0007d59c) */
/* WARNING: Removing unreachable block (ram,0x0007d554) */
/* WARNING: Removing unreachable block (ram,0x0007d650) */
/* WARNING: Removing unreachable block (ram,0x0007d658) */
/* WARNING: Removing unreachable block (ram,0x0007d5ac) */
/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */

EVP_PKEY * load_pubkey(char *file,int format,int maybe_stdin,char *pass,ENGINE *e,char *key_descrip)

{
  undefined *puVar1;
  BIO *pBVar2;
  undefined4 uVar3;
  int iVar4;
  int *piVar5;
  char *pcVar6;
  char *pcVar7;
  stack_st_X509 **pcerts;
  PW_CB_DATA *pass_00;
  PW_CB_DATA *format_00;
  PW_CB_DATA *pPVar8;
  EVP_PKEY *pEVar9;
  int iVar10;
  undefined4 *puVar11;
  BIO *unaff_s2;
  char *unaff_s4;
  int *piVar12;
  undefined *puVar13;
  code *pcVar14;
  PW_CB_DATA PStack_6c;
  char *pcStack_64;
  EVP_PKEY *pEStack_5c;
  undefined *puStack_58;
  BIO *pBStack_54;
  char *pcStack_50;
  char *pcStack_4c;
  int *piStack_2c;
  PW_CB_DATA cb_data;
  
  puVar1 = PTR___stack_chk_guard_000c008c;
  puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;
  pcVar6 = *(char **)PTR___stack_chk_guard_000c008c;
  cb_data.password = pass;
  cb_data.prompt_info = file;
  if (file == (char *)0x0) {
    if ((maybe_stdin == 0) || (format == 8)) {
      (*(code *)PTR_BIO_printf_000c0b94)
                (*(undefined4 *)PTR_bio_err_000bf3b0,
                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);
      pass_00 = (PW_CB_DATA *)pass;
      goto LAB_0007d24c;
    }
    pcVar7 = (char *)format;
    unbuffer(*(FILE **)PTR_stdin_000bfcc8);
    unaff_s2 = dup_bio_in(format);
    file = pcVar7;
    pass_00 = (PW_CB_DATA *)pass;
LAB_0007d018:
    puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;
    if (unaff_s2 == (BIO *)0x0) {
      (*(code *)PTR_BIO_free_000bf96c)(0);
    }
    else {
      if (format == 4) {
        file = (char *)0x0;
        pEVar9 = (EVP_PKEY *)(*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);
        goto LAB_0007d17c;
      }
      if (format == 10) {
        file = (char *)0x0;
        unaff_s4 = (char *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);
joined_r0x0007d138:
        if (unaff_s4 != (char *)0x0) {
          pEVar9 = (EVP_PKEY *)(*(code *)PTR_EVP_PKEY_new_000c0864)();
          if (pEVar9 != (EVP_PKEY *)0x0) {
            file = unaff_s4;
            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(pEVar9);
          }
          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);
LAB_0007d17c:
          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);
          puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;
          if (pEVar9 != (EVP_PKEY *)0x0) goto LAB_0007d07c;
          goto LAB_0007d05c;
        }
      }
      else {
        if (format == 0x8009) {
          pass_00 = &cb_data;
          file = (char *)0x0;
          maybe_stdin = (int)PTR_password_callback_000bf534;
          unaff_s4 = (char *)(*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)(unaff_s2);
          goto joined_r0x0007d138;
        }
        if (format == 0x8005) {
          pass_00 = &cb_data;
          file = (char *)0x0;
          maybe_stdin = (int)PTR_password_callback_000bf534;
          pEVar9 = (EVP_PKEY *)(*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)(unaff_s2);
          goto LAB_0007d17c;
        }
        if (format == 0xb) {
          pEVar9 = (EVP_PKEY *)(*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);
          goto LAB_0007d17c;
        }
      }
      puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;
      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);
    }
LAB_0007d05c:
    pEVar9 = (EVP_PKEY *)0x0;
    file = PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428;
    maybe_stdin = (int)key_descrip;
    (*(code *)PTR_BIO_printf_000c0b94)(*puVar11);
  }
  else {
    if (format != 8) {
      pcVar7 = (char *)0x72;
      maybe_stdin = format;
      unaff_s2 = bio_open_default(file,'r',format);
      file = pcVar7;
      pass_00 = (PW_CB_DATA *)pass;
      goto LAB_0007d018;
    }
    if (e == (ENGINE *)0x0) {
      (*(code *)PTR_BIO_printf_000c0b94)
                (*(undefined4 *)PTR_bio_err_000bf3b0,
                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);
      pass_00 = (PW_CB_DATA *)pass;
LAB_0007d24c:
      (*(code *)PTR_BIO_free_000bf96c)(0);
      goto LAB_0007d05c;
    }
    pass_00 = &cb_data;
    maybe_stdin = *(int *)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118);
    pEVar9 = (EVP_PKEY *)(*(code *)PTR_ENGINE_load_public_key_000bfd2c)(e);
    puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;
    if (pEVar9 == (EVP_PKEY *)0x0) {
      (*(code *)PTR_BIO_printf_000c0b94)
                (*(undefined4 *)PTR_bio_err_000bf3b0,
                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,key_descrip);
      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar11);
      goto LAB_0007d24c;
    }
    (*(code *)PTR_BIO_free_000bf96c)(0);
  }
LAB_0007d07c:
  if (pcVar6 == *(char **)puVar1) {
    return pEVar9;
  }
  puVar13 = PTR___stack_chk_fail_000bfdf8;
  (*(code *)PTR___stack_chk_fail_000bfdf8)();
  piVar12 = *(int **)(puVar13 + 0x42dcc);
  pcStack_50 = key_descrip;
  puStack_58 = puVar1;
  pcStack_64 = (char *)*piVar12;
  PStack_6c.password = (void *)maybe_stdin;
  PStack_6c.prompt_info = pcVar6;
  pEStack_5c = pEVar9;
  pBStack_54 = unaff_s2;
  pcStack_4c = unaff_s4;
  if (file != (char *)0x8005) {
    pcerts = (stack_st_X509 **)(*(int *)(puVar13 + 0x420ec) + -0x514);
    pPVar8 = pass_00;
    (**(code **)(puVar13 + 0x438d4))(**(undefined4 **)(puVar13 + 0x420f0));
    pEVar9 = (EVP_PKEY *)0x0;
    format_00 = pass_00;
    pass_00 = pPVar8;
    goto LAB_0007d33c;
  }
  format_00 = (PW_CB_DATA *)0x8005;
  pcerts = (stack_st_X509 **)0x72;
  pBVar2 = bio_open_default(pcVar6,'r',0x8005);
  if (pBVar2 == (BIO *)0x0) {
    pEVar9 = (EVP_PKEY *)0x0;
    goto LAB_0007d33c;
  }
  pass_00 = &PStack_6c;
  format_00 = *(PW_CB_DATA **)(puVar13 + 0x42274);
  uVar3 = (**(code **)(puVar13 + 0x43538))(pBVar2,0);
  (**(code **)(puVar13 + 0x426ac))(pBVar2);
  if ((__gp == 0) && (__gp = (**(code **)(puVar13 + 0x4325c))(), __gp == 0)) {
    (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));
LAB_0007d4dc:
    (**(code **)(puVar13 + 0x42714))(__gp,*(undefined4 *)(puVar13 + 0x425e4));
    if (piStack_2c != (int *)0x0) goto LAB_0007d4f8;
LAB_0007d63c:
    __gp = 0;
    puVar11 = *(undefined4 **)(puVar13 + 0x420f0);
    iVar4 = *(int *)(puVar13 + 0x420ec);
    uVar3 = *puVar11;
  }
  else {
    pcVar14 = *(code **)(puVar13 + 0x4267c);
    if (piStack_2c == (int *)0x0) {
LAB_0007d3dc:
      iVar10 = 0;
      iVar4 = (*pcVar14)(uVar3);
      if (0 < iVar4) {
        do {
          piVar5 = (int *)(**(code **)(puVar13 + 0x43914))(uVar3,iVar10);
          if (*piVar5 != 0) {
            iVar4 = (**(code **)(puVar13 + 0x42a8c))(__gp);
            if (iVar4 != 0) {
              *piVar5 = 0;
              goto LAB_0007d430;
            }
LAB_0007d4c4:
            (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));
            goto LAB_0007d4dc;
          }
LAB_0007d430:
          pcVar14 = *(code **)(puVar13 + 0x4267c);
          if (piVar5[1] != 0) {
            if (piStack_2c != (int *)0x0) {
              iVar4 = (**(code **)(puVar13 + 0x42a8c))(*piStack_2c);
              if (iVar4 == 0) goto LAB_0007d4c4;
              piVar5[1] = 0;
            }
            pcVar14 = *(code **)(puVar13 + 0x4267c);
          }
          iVar10 = iVar10 + 1;
          iVar4 = (*pcVar14)(uVar3);
        } while (iVar10 < iVar4);
      }
      iVar4 = (**(code **)(puVar13 + 0x4267c))(__gp);
      if (iVar4 < 1) {
        if (piStack_2c == (int *)0x0) {
          (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));
          (**(code **)(puVar13 + 0x42714))(__gp,*(undefined4 *)(puVar13 + 0x425e4));
          goto LAB_0007d63c;
        }
        iVar4 = (**(code **)(puVar13 + 0x4267c))(*piStack_2c);
        if (iVar4 < 1) {
          pcVar14 = *(code **)(puVar13 + 0x42714);
          goto LAB_0007d5d8;
        }
      }
      else if (piStack_2c != (int *)0x0) {
        (**(code **)(puVar13 + 0x4267c))(*piStack_2c);
      }
      pcerts = *(stack_st_X509 ***)(puVar13 + 0x434fc);
      (**(code **)(puVar13 + 0x42714))(uVar3);
      pEVar9 = (EVP_PKEY *)&DAT_00000001;
      goto LAB_0007d33c;
    }
    if (*piStack_2c != 0) {
LAB_0007d3d8:
      pcVar14 = *(code **)(puVar13 + 0x4267c);
      goto LAB_0007d3dc;
    }
    iVar4 = (**(code **)(puVar13 + 0x4325c))();
    *piStack_2c = iVar4;
    if (iVar4 != 0) goto LAB_0007d3d8;
    pcVar14 = *(code **)(puVar13 + 0x42714);
LAB_0007d5d8:
    (*pcVar14)(uVar3,*(undefined4 *)(puVar13 + 0x434fc));
    (**(code **)(puVar13 + 0x42714))(__gp,*(undefined4 *)(puVar13 + 0x425e4));
LAB_0007d4f8:
    __gp = 0;
    puVar11 = *(undefined4 **)(puVar13 + 0x420f0);
    (**(code **)(puVar13 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar13 + 0x42a64));
    uVar3 = *puVar11;
    *piStack_2c = 0;
    iVar4 = *(int *)(puVar13 + 0x420ec);
  }
  format_00 = (PW_CB_DATA *)(iVar4 + -0x1db4);
  pcerts = (stack_st_X509 **)(*(int *)(puVar13 + 0x420ec) + -0x428);
  (**(code **)(puVar13 + 0x438d4))(uVar3);
  (**(code **)(puVar13 + 0x42484))(*puVar11);
  pEVar9 = (EVP_PKEY *)0x0;
LAB_0007d33c:
  if (pcStack_64 != (char *)*piVar12) {
    pcVar6 = pcStack_64;
    (**(code **)(puVar13 + 0x42b38))();
    pEVar9 = (EVP_PKEY *)
             load_certs_crls(pcVar6,(int)format_00,(char *)pass_00,puVar13 + 0x4a0a0,pcerts,
                             (stack_st_X509_CRL **)0x0);
    return pEVar9;
  }
  return pEVar9;
}



/* WARNING: Removing unreachable block (ram,0x0007d54c) */
/* WARNING: Removing unreachable block (ram,0x0007d59c) */
/* WARNING: Removing unreachable block (ram,0x0007d554) */
/* WARNING: Removing unreachable block (ram,0x0007d650) */
/* WARNING: Removing unreachable block (ram,0x0007d658) */
/* WARNING: Removing unreachable block (ram,0x0007d5ac) */
/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */

int load_pubkey(undefined *param_1,undefined *param_2,undefined *param_3,undefined4 *****param_4,
               int param_5,undefined *param_6)

{
  undefined *puVar1;
  undefined4 uVar2;
  int *piVar3;
  int iVar4;
  int iVar5;
  undefined4 *puVar6;
  int unaff_s2;
  undefined *unaff_s4;
  int *piVar7;
  undefined *puVar8;
  code *pcVar9;
  undefined *puStack_6c;
  int iStack_68;
  int iStack_64;
  int iStack_5c;
  undefined *puStack_58;
  int iStack_54;
  undefined *puStack_50;
  undefined *puStack_4c;
  int *piStack_2c;
  undefined4 ****local_24;
  undefined *local_20;
  int local_1c;
  
  puVar1 = PTR___stack_chk_guard_000c008c;
  puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;
  local_1c = *(int *)PTR___stack_chk_guard_000c008c;
  local_24 = param_4;
  local_20 = param_1;
  if (param_1 == (undefined *)0x0) {
    if ((param_3 == (undefined *)0x0) || (param_2 == (undefined *)0x8)) {
      (*(code *)PTR_BIO_printf_000c0b94)
                (*(undefined4 *)PTR_bio_err_000bf3b0,
                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);
      goto LAB_0007d24c;
    }
    param_1 = param_2;
    unbuffer(*(undefined4 *)PTR_stdin_000bfcc8);
    unaff_s2 = dup_bio_in(param_2);
LAB_0007d018:
    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;
    if (unaff_s2 == 0) {
      (*(code *)PTR_BIO_free_000bf96c)(0);
    }
    else {
      if (param_2 == (undefined *)0x4) {
        param_1 = (undefined *)0x0;
        iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);
        goto LAB_0007d17c;
      }
      if (param_2 == (undefined *)0xa) {
        param_1 = (undefined *)0x0;
        unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);
joined_r0x0007d138:
        if (unaff_s4 != (undefined *)0x0) {
          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();
          if (iVar4 != 0) {
            param_1 = unaff_s4;
            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);
          }
          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);
LAB_0007d17c:
          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);
          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;
          if (iVar4 != 0) goto LAB_0007d07c;
          goto LAB_0007d05c;
        }
      }
      else {
        if (param_2 == (undefined *)0x8009) {
          param_4 = &local_24;
          param_1 = (undefined *)0x0;
          param_3 = PTR_password_callback_000bf534;
          unaff_s4 = (undefined *)
                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)
                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);
          goto joined_r0x0007d138;
        }
        if (param_2 == (undefined *)0x8005) {
          param_4 = &local_24;
          param_1 = (undefined *)0x0;
          param_3 = PTR_password_callback_000bf534;
          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)
                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);
          goto LAB_0007d17c;
        }
        if (param_2 == (undefined *)0xb) {
          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);
          goto LAB_0007d17c;
        }
      }
      puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;
      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);
    }
LAB_0007d05c:
    iVar4 = 0;
    param_1 = PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428;
    param_3 = param_6;
    (*(code *)PTR_BIO_printf_000c0b94)(*puVar6);
  }
  else {
    if (param_2 != (undefined *)0x8) {
      param_1 = (undefined *)0x72;
      param_3 = param_2;
      unaff_s2 = bio_open_default();
      goto LAB_0007d018;
    }
    if (param_5 == 0) {
      (*(code *)PTR_BIO_printf_000c0b94)
                (*(undefined4 *)PTR_bio_err_000bf3b0,
                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);
LAB_0007d24c:
      (*(code *)PTR_BIO_free_000bf96c)(0);
      goto LAB_0007d05c;
    }
    param_4 = &local_24;
    param_3 = *(undefined **)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118);
    iVar4 = (*(code *)PTR_ENGINE_load_public_key_000bfd2c)(param_5,param_1,param_3,param_4);
    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;
    if (iVar4 == 0) {
      (*(code *)PTR_BIO_printf_000c0b94)
                (*(undefined4 *)PTR_bio_err_000bf3b0,
                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6);
      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar6);
      goto LAB_0007d24c;
    }
    (*(code *)PTR_BIO_free_000bf96c)(0);
  }
LAB_0007d07c:
  if (local_1c == *(int *)puVar1) {
    return iVar4;
  }
  iVar5 = local_1c;
  puVar8 = PTR___stack_chk_fail_000bfdf8;
  (*(code *)PTR___stack_chk_fail_000bfdf8)();
  piVar7 = *(int **)(puVar8 + 0x42dcc);
  puStack_50 = param_6;
  puStack_58 = puVar1;
  iStack_64 = *piVar7;
  puStack_6c = param_3;
  iStack_68 = iVar5;
  iStack_5c = iVar4;
  iStack_54 = unaff_s2;
  puStack_4c = unaff_s4;
  if (param_1 != (undefined *)0x8005) {
    (**(code **)(puVar8 + 0x438d4))
              (**(undefined4 **)(puVar8 + 0x420f0),*(int *)(puVar8 + 0x420ec) + -0x514,param_4);
    iVar4 = 0;
    goto LAB_0007d33c;
  }
  iVar4 = bio_open_default();
  if (iVar4 == 0) {
    iVar4 = 0;
    goto LAB_0007d33c;
  }
  uVar2 = (**(code **)(puVar8 + 0x43538))(iVar4,0,*(undefined4 *)(puVar8 + 0x42274),&puStack_6c);
  (**(code **)(puVar8 + 0x426ac))(iVar4);
  if ((__gp_1 == 0) && (__gp_1 = (**(code **)(puVar8 + 0x4325c))(), __gp_1 == 0)) {
    (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));
LAB_0007d4dc:
    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));
    if (piStack_2c != (int *)0x0) goto LAB_0007d4f8;
LAB_0007d63c:
    __gp_1 = 0;
    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);
    iVar4 = *(int *)(puVar8 + 0x420ec);
    uVar2 = *puVar6;
  }
  else {
    pcVar9 = *(code **)(puVar8 + 0x4267c);
    if (piStack_2c == (int *)0x0) {
LAB_0007d3dc:
      iVar5 = 0;
      iVar4 = (*pcVar9)(uVar2);
      if (0 < iVar4) {
        do {
          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);
          if (*piVar3 != 0) {
            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);
            if (iVar4 != 0) {
              *piVar3 = 0;
              goto LAB_0007d430;
            }
LAB_0007d4c4:
            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));
            goto LAB_0007d4dc;
          }
LAB_0007d430:
          pcVar9 = *(code **)(puVar8 + 0x4267c);
          if (piVar3[1] != 0) {
            if (piStack_2c != (int *)0x0) {
              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);
              if (iVar4 == 0) goto LAB_0007d4c4;
              piVar3[1] = 0;
            }
            pcVar9 = *(code **)(puVar8 + 0x4267c);
          }
          iVar5 = iVar5 + 1;
          iVar4 = (*pcVar9)(uVar2);
        } while (iVar5 < iVar4);
      }
      iVar4 = (**(code **)(puVar8 + 0x4267c))(__gp_1);
      if (iVar4 < 1) {
        if (piStack_2c == (int *)0x0) {
          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));
          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));
          goto LAB_0007d63c;
        }
        iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);
        if (iVar4 < 1) {
          pcVar9 = *(code **)(puVar8 + 0x42714);
          goto LAB_0007d5d8;
        }
      }
      else if (piStack_2c != (int *)0x0) {
        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);
      }
      (**(code **)(puVar8 + 0x42714))(uVar2);
      iVar4 = 1;
      goto LAB_0007d33c;
    }
    if (*piStack_2c != 0) {
LAB_0007d3d8:
      pcVar9 = *(code **)(puVar8 + 0x4267c);
      goto LAB_0007d3dc;
    }
    iVar4 = (**(code **)(puVar8 + 0x4325c))();
    *piStack_2c = iVar4;
    if (iVar4 != 0) goto LAB_0007d3d8;
    pcVar9 = *(code **)(puVar8 + 0x42714);
LAB_0007d5d8:
    (*pcVar9)(uVar2,*(undefined4 *)(puVar8 + 0x434fc));
    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));
LAB_0007d4f8:
    __gp_1 = 0;
    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);
    (**(code **)(puVar8 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar8 + 0x42a64));
    uVar2 = *puVar6;
    *piStack_2c = 0;
    iVar4 = *(int *)(puVar8 + 0x420ec);
  }
  (**(code **)(puVar8 + 0x438d4))(uVar2,*(int *)(puVar8 + 0x420ec) + -0x428,iVar4 + -0x1db4);
  (**(code **)(puVar8 + 0x42484))(*puVar6);
  iVar4 = 0;
LAB_0007d33c:
  if (iStack_64 != *piVar7) {
    (**(code **)(puVar8 + 0x42b38))();
    iVar4 = FUN_0007d2c0();
    return iVar4;
  }
  return iVar4;
}


lui gp,0x5
addiu gp,gp,-0x5c48
addu gp,gp,t9
addiu sp,sp,-0x40
sw s1,0x2c(sp)
lw s1,-0x72d4(gp)
lw t0,0x50(sp)
sw gp,0x10(sp)
sw s3,0x34(sp)
sw s0,0x28(sp)
or s0,a1,zero
sw ra,0x3c(sp)
sw s4,0x38(sp)
sw s2,0x30(sp)
sw a3,0x1c(sp)
sw a0,0x20(sp)
lw v1,0x0(s1)
lw s3,0x54(sp)
sw v1,0x24(sp)
beq a0,zero,0x0007d0ac
_li v1,0x8
beq a1,v1,0x0007d0e4
_lw t9,-0x7f44(gp)
li a1,0x72
bal 0x0007c580
_or a2,s0,zero
lw gp,0x10(sp)
or s2,v0,zero
beq s2,zero,0x0007d218
_li v0,0x4
beq s0,v0,0x0007d1ac
_li v0,0xa
beq s0,v0,0x0007d124
_ori v0,zero,0x8009
beq s0,v0,0x0007d1c8
_ori v0,zero,0x8005
beq s0,v0,0x0007d1f4
_li v0,0xb
beq s0,v0,0x0007d198
_lw t9,-0x7118(gp)
lw t9,-0x79f4(gp)
lw s0,-0x7fb0(gp)
jalr t9
_or a0,s2,zero
lw gp,0x10(sp)
lw a1,-0x7fb4(gp)
or a2,s3,zero
lw t9,-0x67cc(gp)
lw a0,0x0(s0)
or s0,zero,zero
jalr t9
_addiu a1,a1,-0x428
lw gp,0x10(sp)
lw a0,0x24(sp)
or v0,s0,zero
lw v1,0x0(s1)
bne a0,v1,0x0007d2b4
_lw ra,0x3c(sp)
lw s4,0x38(sp)
lw s3,0x34(sp)
lw s2,0x30(sp)
lw s1,0x2c(sp)
lw s0,0x28(sp)
jr ra
_addiu sp,sp,0x40
beq a2,zero,0x0007d260
_li v0,0x8
beq a1,v0,0x0007d260
_lw v0,-0x7698(gp)
lw t9,-0x7cb4(gp)
bal 0x0007c568
_lw a0,0x0(v0)
lw gp,0x10(sp)
lw t9,-0x7f78(gp)
bal 0x0007bc34
_or a0,s0,zero
lw gp,0x10(sp)
b 0x0007d018
_or s2,v0,zero
beq t0,zero,0x0007d230
_lw v0,-0x7fd8(gp)
addiu a3,sp,0x1c
lw t9,-0x7634(gp)
or a1,a0,zero
or a0,t0,zero
jalr t9
_lw a2,0x2118(v0)
lw gp,0x10(sp)
beq v0,zero,0x0007d280
_or s0,v0,zero
lw t9,-0x79f4(gp)
jalr t9
_or a0,zero,zero
b 0x0007d07c
_lw gp,0x10(sp)
lw t9,-0x7954(gp)
or a1,zero,zero
jalr t9
_or a0,s2,zero
lw gp,0x10(sp)
beq v0,zero,0x0007d048
_or s4,v0,zero
lw t9,-0x6afc(gp)
jalr t9
_nop
lw gp,0x10(sp)
beq v0,zero,0x0007d16c
_or s0,v0,zero
lw t9,-0x6f18(gp)
or a1,s4,zero
jalr t9
_or a0,v0,zero
lw gp,0x10(sp)
lw t9,-0x7980(gp)
jalr t9
_or a0,s4,zero
lw gp,0x10(sp)
lw t9,-0x79f4(gp)
jalr t9
_or a0,s2,zero
bne s0,zero,0x0007d07c
_lw gp,0x10(sp)
b 0x0007d05c
_lw s0,-0x7fb0(gp)
jalr t9
_or a0,s2,zero
lw gp,0x10(sp)
b 0x0007d17c
_or s0,v0,zero
lw t9,-0x6a70(gp)
or a1,zero,zero
jalr t9
_or a0,s2,zero
lw gp,0x10(sp)
b 0x0007d17c
_or s0,v0,zero
lw t9,-0x6818(gp)
addiu a3,sp,0x1c
lw a2,-0x7e2c(gp)
or a1,zero,zero
jalr t9
_or a0,s2,zero
lw gp,0x10(sp)
bne v0,zero,0x0007d140
_or s4,v0,zero
b 0x0007d04c
_lw t9,-0x79f4(gp)
lw t9,-0x7c44(gp)
addiu a3,sp,0x1c
lw a2,-0x7e2c(gp)
or a1,zero,zero
jalr t9
_or a0,s2,zero
lw gp,0x10(sp)
b 0x0007d17c
_or s0,v0,zero
lw t9,-0x79f4(gp)
lw s0,-0x7fb0(gp)
jalr t9
_or a0,zero,zero
b 0x0007d05c
_lw gp,0x10(sp)
lw s0,-0x7fb0(gp)
lw a1,-0x7fb4(gp)
lw t9,-0x67cc(gp)
lw a0,0x0(s0)
jalr t9
_addiu a1,a1,-0x488
lw gp,0x10(sp)
lw t9,-0x79f4(gp)
jalr t9
_or a0,zero,zero
b 0x0007d05c
_lw gp,0x10(sp)
lw s0,-0x7fb0(gp)
lw a1,-0x7fb4(gp)
lw t9,-0x67cc(gp)
lw a0,0x0(s0)
jalr t9
_addiu a1,a1,-0x4a0
b 0x0007d24c
_lw gp,0x10(sp)
lw s0,-0x7fb0(gp)
or a2,s3,zero
lw a1,-0x7fb4(gp)
lw t9,-0x67cc(gp)
lw a0,0x0(s0)
jalr t9
_addiu a1,a1,-0x470
lw gp,0x10(sp)
lw t9,-0x7c1c(gp)
jalr t9
_lw a0,0x0(s0)
b 0x0007d24c
_lw gp,0x10(sp)
lw t9,-0x7568(gp)
jalr t9
_nop
(translation_unit "/* WARNING: Removing unreachable block (ram,0x0007d54c) */\n/* WARNING: Removing unreachable block (ram,0x0007d59c) */\n/* WARNING: Removing unreachable block (ram,0x0007d554) */\n/* WARNING: Removing unreachable block (ram,0x0007d650) */\n/* WARNING: Removing unreachable block (ram,0x0007d658) */\n/* WARNING: Removing unreachable block (ram,0x0007d5ac) */\n/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */\n\nint load_pubkey(undefined *param_1,undefined *param_2,undefined *param_3,undefined4 *****param_4,\n               int param_5,undefined *param_6)\n\n{\n  undefined *puVar1;\n  undefined4 uVar2;\n  int *piVar3;\n  int iVar4;\n  int iVar5;\n  undefined4 *puVar6;\n  int unaff_s2;\n  undefined *unaff_s4;\n  int *piVar7;\n  undefined *puVar8;\n  code *pcVar9;\n  undefined *puStack_6c;\n  int iStack_68;\n  int iStack_64;\n  int iStack_5c;\n  undefined *puStack_58;\n  int iStack_54;\n  undefined *puStack_50;\n  undefined *puStack_4c;\n  int *piStack_2c;\n  undefined4 ****local_24;\n  undefined *local_20;\n  int local_1c;\n  \n  puVar1 = PTR___stack_chk_guard_000c008c;\n  puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n  local_1c = *(int *)PTR___stack_chk_guard_000c008c;\n  local_24 = param_4;\n  local_20 = param_1;\n  if (param_1 == (undefined *)0x0) {\n    if ((param_3 == (undefined *)0x0) || (param_2 == (undefined *)0x8)) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);\n      goto LAB_0007d24c;\n    }\n    param_1 = param_2;\n    unbuffer(*(undefined4 *)PTR_stdin_000bfcc8);\n    unaff_s2 = dup_bio_in(param_2);\nLAB_0007d018:\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (unaff_s2 == 0) {\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n    }\n    else {\n      if (param_2 == (undefined *)0x4) {\n        param_1 = (undefined *)0x0;\n        iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }\n      if (param_2 == (undefined *)0xa) {\n        param_1 = (undefined *)0x0;\n        unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }\n        if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }\n        if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }\n      puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n    }\nLAB_0007d05c:\n    iVar4 = 0;\n    param_1 = PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428;\n    param_3 = param_6;\n    (*(code *)PTR_BIO_printf_000c0b94)(*puVar6);\n  }\n  else {\n    if (param_2 != (undefined *)0x8) {\n      param_1 = (undefined *)0x72;\n      param_3 = param_2;\n      unaff_s2 = bio_open_default();\n      goto LAB_0007d018;\n    }\n    if (param_5 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);\nLAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n      goto LAB_0007d05c;\n    }\n    param_4 = &local_24;\n    param_3 = *(undefined **)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118);\n    iVar4 = (*(code *)PTR_ENGINE_load_public_key_000bfd2c)(param_5,param_1,param_3,param_4);\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (iVar4 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6);\n      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar6);\n      goto LAB_0007d24c;\n    }\n    (*(code *)PTR_BIO_free_000bf96c)(0);\n  }\nLAB_0007d07c:\n  if (local_1c == *(int *)puVar1) {\n    return iVar4;\n  }\n  iVar5 = local_1c;\n  puVar8 = PTR___stack_chk_fail_000bfdf8;\n  (*(code *)PTR___stack_chk_fail_000bfdf8)();\n  piVar7 = *(int **)(puVar8 + 0x42dcc);\n  puStack_50 = param_6;\n  puStack_58 = puVar1;\n  iStack_64 = *piVar7;\n  puStack_6c = param_3;\n  iStack_68 = iVar5;\n  iStack_5c = iVar4;\n  iStack_54 = unaff_s2;\n  puStack_4c = unaff_s4;\n  if (param_1 != (undefined *)0x8005) {\n    (**(code **)(puVar8 + 0x438d4))\n              (**(undefined4 **)(puVar8 + 0x420f0),*(int *)(puVar8 + 0x420ec) + -0x514,param_4);\n    iVar4 = 0;\n    goto LAB_0007d33c;\n  }\n  iVar4 = bio_open_default();\n  if (iVar4 == 0) {\n    iVar4 = 0;\n    goto LAB_0007d33c;\n  }\n  uVar2 = (**(code **)(puVar8 + 0x43538))(iVar4,0,*(undefined4 *)(puVar8 + 0x42274),&puStack_6c);\n  (**(code **)(puVar8 + 0x426ac))(iVar4);\n  if ((__gp_1 == 0) && (__gp_1 = (**(code **)(puVar8 + 0x4325c))(), __gp_1 == 0)) {\n    (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\nLAB_0007d4dc:\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n    if (piStack_2c != (int *)0x0) goto LAB_0007d4f8;\nLAB_0007d63c:\n    __gp_1 = 0;\n    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);\n    iVar4 = *(int *)(puVar8 + 0x420ec);\n    uVar2 = *puVar6;\n  }\n  else {\n    pcVar9 = *(code **)(puVar8 + 0x4267c);\n    if (piStack_2c == (int *)0x0) {\nLAB_0007d3dc:\n      iVar5 = 0;\n      iVar4 = (*pcVar9)(uVar2);\n      if (0 < iVar4) {\n        do {\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        } while (iVar5 < iVar4);\n      }\n      iVar4 = (**(code **)(puVar8 + 0x4267c))(__gp_1);\n      if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }\n      (**(code **)(puVar8 + 0x42714))(uVar2);\n      iVar4 = 1;\n      goto LAB_0007d33c;\n    }\n    if (*piStack_2c != 0) {\nLAB_0007d3d8:\n      pcVar9 = *(code **)(puVar8 + 0x4267c);\n      goto LAB_0007d3dc;\n    }\n    iVar4 = (**(code **)(puVar8 + 0x4325c))();\n    *piStack_2c = iVar4;\n    if (iVar4 != 0) goto LAB_0007d3d8;\n    pcVar9 = *(code **)(puVar8 + 0x42714);\nLAB_0007d5d8:\n    (*pcVar9)(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\nLAB_0007d4f8:\n    __gp_1 = 0;\n    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);\n    (**(code **)(puVar8 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar8 + 0x42a64));\n    uVar2 = *puVar6;\n    *piStack_2c = 0;\n    iVar4 = *(int *)(puVar8 + 0x420ec);\n  }\n  (**(code **)(puVar8 + 0x438d4))(uVar2,*(int *)(puVar8 + 0x420ec) + -0x428,iVar4 + -0x1db4);\n  (**(code **)(puVar8 + 0x42484))(*puVar6);\n  iVar4 = 0;\nLAB_0007d33c:\n  if (iStack_64 != *piVar7) {\n    (**(code **)(puVar8 + 0x42b38))();\n    iVar4 = FUN_0007d2c0();\n    return iVar4;\n  }\n  return iVar4;\n}\n\n" comment comment comment comment comment comment comment (function_definition "int load_pubkey(undefined *param_1,undefined *param_2,undefined *param_3,undefined4 *****param_4,\n               int param_5,undefined *param_6)\n\n{\n  undefined *puVar1;\n  undefined4 uVar2;\n  int *piVar3;\n  int iVar4;\n  int iVar5;\n  undefined4 *puVar6;\n  int unaff_s2;\n  undefined *unaff_s4;\n  int *piVar7;\n  undefined *puVar8;\n  code *pcVar9;\n  undefined *puStack_6c;\n  int iStack_68;\n  int iStack_64;\n  int iStack_5c;\n  undefined *puStack_58;\n  int iStack_54;\n  undefined *puStack_50;\n  undefined *puStack_4c;\n  int *piStack_2c;\n  undefined4 ****local_24;\n  undefined *local_20;\n  int local_1c;\n  \n  puVar1 = PTR___stack_chk_guard_000c008c;\n  puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n  local_1c = *(int *)PTR___stack_chk_guard_000c008c;\n  local_24 = param_4;\n  local_20 = param_1;\n  if (param_1 == (undefined *)0x0) {\n    if ((param_3 == (undefined *)0x0) || (param_2 == (undefined *)0x8)) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);\n      goto LAB_0007d24c;\n    }\n    param_1 = param_2;\n    unbuffer(*(undefined4 *)PTR_stdin_000bfcc8);\n    unaff_s2 = dup_bio_in(param_2);\nLAB_0007d018:\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (unaff_s2 == 0) {\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n    }\n    else {\n      if (param_2 == (undefined *)0x4) {\n        param_1 = (undefined *)0x0;\n        iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }\n      if (param_2 == (undefined *)0xa) {\n        param_1 = (undefined *)0x0;\n        unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }\n        if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }\n        if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }\n      puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n    }\nLAB_0007d05c:\n    iVar4 = 0;\n    param_1 = PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428;\n    param_3 = param_6;\n    (*(code *)PTR_BIO_printf_000c0b94)(*puVar6);\n  }\n  else {\n    if (param_2 != (undefined *)0x8) {\n      param_1 = (undefined *)0x72;\n      param_3 = param_2;\n      unaff_s2 = bio_open_default();\n      goto LAB_0007d018;\n    }\n    if (param_5 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);\nLAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n      goto LAB_0007d05c;\n    }\n    param_4 = &local_24;\n    param_3 = *(undefined **)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118);\n    iVar4 = (*(code *)PTR_ENGINE_load_public_key_000bfd2c)(param_5,param_1,param_3,param_4);\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (iVar4 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6);\n      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar6);\n      goto LAB_0007d24c;\n    }\n    (*(code *)PTR_BIO_free_000bf96c)(0);\n  }\nLAB_0007d07c:\n  if (local_1c == *(int *)puVar1) {\n    return iVar4;\n  }\n  iVar5 = local_1c;\n  puVar8 = PTR___stack_chk_fail_000bfdf8;\n  (*(code *)PTR___stack_chk_fail_000bfdf8)();\n  piVar7 = *(int **)(puVar8 + 0x42dcc);\n  puStack_50 = param_6;\n  puStack_58 = puVar1;\n  iStack_64 = *piVar7;\n  puStack_6c = param_3;\n  iStack_68 = iVar5;\n  iStack_5c = iVar4;\n  iStack_54 = unaff_s2;\n  puStack_4c = unaff_s4;\n  if (param_1 != (undefined *)0x8005) {\n    (**(code **)(puVar8 + 0x438d4))\n              (**(undefined4 **)(puVar8 + 0x420f0),*(int *)(puVar8 + 0x420ec) + -0x514,param_4);\n    iVar4 = 0;\n    goto LAB_0007d33c;\n  }\n  iVar4 = bio_open_default();\n  if (iVar4 == 0) {\n    iVar4 = 0;\n    goto LAB_0007d33c;\n  }\n  uVar2 = (**(code **)(puVar8 + 0x43538))(iVar4,0,*(undefined4 *)(puVar8 + 0x42274),&puStack_6c);\n  (**(code **)(puVar8 + 0x426ac))(iVar4);\n  if ((__gp_1 == 0) && (__gp_1 = (**(code **)(puVar8 + 0x4325c))(), __gp_1 == 0)) {\n    (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\nLAB_0007d4dc:\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n    if (piStack_2c != (int *)0x0) goto LAB_0007d4f8;\nLAB_0007d63c:\n    __gp_1 = 0;\n    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);\n    iVar4 = *(int *)(puVar8 + 0x420ec);\n    uVar2 = *puVar6;\n  }\n  else {\n    pcVar9 = *(code **)(puVar8 + 0x4267c);\n    if (piStack_2c == (int *)0x0) {\nLAB_0007d3dc:\n      iVar5 = 0;\n      iVar4 = (*pcVar9)(uVar2);\n      if (0 < iVar4) {\n        do {\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        } while (iVar5 < iVar4);\n      }\n      iVar4 = (**(code **)(puVar8 + 0x4267c))(__gp_1);\n      if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }\n      (**(code **)(puVar8 + 0x42714))(uVar2);\n      iVar4 = 1;\n      goto LAB_0007d33c;\n    }\n    if (*piStack_2c != 0) {\nLAB_0007d3d8:\n      pcVar9 = *(code **)(puVar8 + 0x4267c);\n      goto LAB_0007d3dc;\n    }\n    iVar4 = (**(code **)(puVar8 + 0x4325c))();\n    *piStack_2c = iVar4;\n    if (iVar4 != 0) goto LAB_0007d3d8;\n    pcVar9 = *(code **)(puVar8 + 0x42714);\nLAB_0007d5d8:\n    (*pcVar9)(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\nLAB_0007d4f8:\n    __gp_1 = 0;\n    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);\n    (**(code **)(puVar8 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar8 + 0x42a64));\n    uVar2 = *puVar6;\n    *piStack_2c = 0;\n    iVar4 = *(int *)(puVar8 + 0x420ec);\n  }\n  (**(code **)(puVar8 + 0x438d4))(uVar2,*(int *)(puVar8 + 0x420ec) + -0x428,iVar4 + -0x1db4);\n  (**(code **)(puVar8 + 0x42484))(*puVar6);\n  iVar4 = 0;\nLAB_0007d33c:\n  if (iStack_64 != *piVar7) {\n    (**(code **)(puVar8 + 0x42b38))();\n    iVar4 = FUN_0007d2c0();\n    return iVar4;\n  }\n  return iVar4;\n}" primitive_type (function_declarator "load_pubkey(undefined *param_1,undefined *param_2,undefined *param_3,undefined4 *****param_4,\n               int param_5,undefined *param_6)" identifier (parameter_list "(undefined *param_1,undefined *param_2,undefined *param_3,undefined4 *****param_4,\n               int param_5,undefined *param_6)" ( (parameter_declaration "undefined *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "undefined *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) , (parameter_declaration "undefined *param_3" type_identifier (pointer_declarator "*param_3" * identifier)) , (parameter_declaration "undefined4 *****param_4" type_identifier (pointer_declarator "*****param_4" * (pointer_declarator "****param_4" * (pointer_declarator "***param_4" * (pointer_declarator "**param_4" * (pointer_declarator "*param_4" * identifier)))))) , (parameter_declaration "int param_5" primitive_type identifier) , (parameter_declaration "undefined *param_6" type_identifier (pointer_declarator "*param_6" * identifier)) ))) (compound_statement "{\n  undefined *puVar1;\n  undefined4 uVar2;\n  int *piVar3;\n  int iVar4;\n  int iVar5;\n  undefined4 *puVar6;\n  int unaff_s2;\n  undefined *unaff_s4;\n  int *piVar7;\n  undefined *puVar8;\n  code *pcVar9;\n  undefined *puStack_6c;\n  int iStack_68;\n  int iStack_64;\n  int iStack_5c;\n  undefined *puStack_58;\n  int iStack_54;\n  undefined *puStack_50;\n  undefined *puStack_4c;\n  int *piStack_2c;\n  undefined4 ****local_24;\n  undefined *local_20;\n  int local_1c;\n  \n  puVar1 = PTR___stack_chk_guard_000c008c;\n  puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n  local_1c = *(int *)PTR___stack_chk_guard_000c008c;\n  local_24 = param_4;\n  local_20 = param_1;\n  if (param_1 == (undefined *)0x0) {\n    if ((param_3 == (undefined *)0x0) || (param_2 == (undefined *)0x8)) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);\n      goto LAB_0007d24c;\n    }\n    param_1 = param_2;\n    unbuffer(*(undefined4 *)PTR_stdin_000bfcc8);\n    unaff_s2 = dup_bio_in(param_2);\nLAB_0007d018:\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (unaff_s2 == 0) {\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n    }\n    else {\n      if (param_2 == (undefined *)0x4) {\n        param_1 = (undefined *)0x0;\n        iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }\n      if (param_2 == (undefined *)0xa) {\n        param_1 = (undefined *)0x0;\n        unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }\n        if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }\n        if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }\n      puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n    }\nLAB_0007d05c:\n    iVar4 = 0;\n    param_1 = PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428;\n    param_3 = param_6;\n    (*(code *)PTR_BIO_printf_000c0b94)(*puVar6);\n  }\n  else {\n    if (param_2 != (undefined *)0x8) {\n      param_1 = (undefined *)0x72;\n      param_3 = param_2;\n      unaff_s2 = bio_open_default();\n      goto LAB_0007d018;\n    }\n    if (param_5 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);\nLAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n      goto LAB_0007d05c;\n    }\n    param_4 = &local_24;\n    param_3 = *(undefined **)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118);\n    iVar4 = (*(code *)PTR_ENGINE_load_public_key_000bfd2c)(param_5,param_1,param_3,param_4);\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (iVar4 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6);\n      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar6);\n      goto LAB_0007d24c;\n    }\n    (*(code *)PTR_BIO_free_000bf96c)(0);\n  }\nLAB_0007d07c:\n  if (local_1c == *(int *)puVar1) {\n    return iVar4;\n  }\n  iVar5 = local_1c;\n  puVar8 = PTR___stack_chk_fail_000bfdf8;\n  (*(code *)PTR___stack_chk_fail_000bfdf8)();\n  piVar7 = *(int **)(puVar8 + 0x42dcc);\n  puStack_50 = param_6;\n  puStack_58 = puVar1;\n  iStack_64 = *piVar7;\n  puStack_6c = param_3;\n  iStack_68 = iVar5;\n  iStack_5c = iVar4;\n  iStack_54 = unaff_s2;\n  puStack_4c = unaff_s4;\n  if (param_1 != (undefined *)0x8005) {\n    (**(code **)(puVar8 + 0x438d4))\n              (**(undefined4 **)(puVar8 + 0x420f0),*(int *)(puVar8 + 0x420ec) + -0x514,param_4);\n    iVar4 = 0;\n    goto LAB_0007d33c;\n  }\n  iVar4 = bio_open_default();\n  if (iVar4 == 0) {\n    iVar4 = 0;\n    goto LAB_0007d33c;\n  }\n  uVar2 = (**(code **)(puVar8 + 0x43538))(iVar4,0,*(undefined4 *)(puVar8 + 0x42274),&puStack_6c);\n  (**(code **)(puVar8 + 0x426ac))(iVar4);\n  if ((__gp_1 == 0) && (__gp_1 = (**(code **)(puVar8 + 0x4325c))(), __gp_1 == 0)) {\n    (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\nLAB_0007d4dc:\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n    if (piStack_2c != (int *)0x0) goto LAB_0007d4f8;\nLAB_0007d63c:\n    __gp_1 = 0;\n    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);\n    iVar4 = *(int *)(puVar8 + 0x420ec);\n    uVar2 = *puVar6;\n  }\n  else {\n    pcVar9 = *(code **)(puVar8 + 0x4267c);\n    if (piStack_2c == (int *)0x0) {\nLAB_0007d3dc:\n      iVar5 = 0;\n      iVar4 = (*pcVar9)(uVar2);\n      if (0 < iVar4) {\n        do {\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        } while (iVar5 < iVar4);\n      }\n      iVar4 = (**(code **)(puVar8 + 0x4267c))(__gp_1);\n      if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }\n      (**(code **)(puVar8 + 0x42714))(uVar2);\n      iVar4 = 1;\n      goto LAB_0007d33c;\n    }\n    if (*piStack_2c != 0) {\nLAB_0007d3d8:\n      pcVar9 = *(code **)(puVar8 + 0x4267c);\n      goto LAB_0007d3dc;\n    }\n    iVar4 = (**(code **)(puVar8 + 0x4325c))();\n    *piStack_2c = iVar4;\n    if (iVar4 != 0) goto LAB_0007d3d8;\n    pcVar9 = *(code **)(puVar8 + 0x42714);\nLAB_0007d5d8:\n    (*pcVar9)(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\nLAB_0007d4f8:\n    __gp_1 = 0;\n    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);\n    (**(code **)(puVar8 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar8 + 0x42a64));\n    uVar2 = *puVar6;\n    *piStack_2c = 0;\n    iVar4 = *(int *)(puVar8 + 0x420ec);\n  }\n  (**(code **)(puVar8 + 0x438d4))(uVar2,*(int *)(puVar8 + 0x420ec) + -0x428,iVar4 + -0x1db4);\n  (**(code **)(puVar8 + 0x42484))(*puVar6);\n  iVar4 = 0;\nLAB_0007d33c:\n  if (iStack_64 != *piVar7) {\n    (**(code **)(puVar8 + 0x42b38))();\n    iVar4 = FUN_0007d2c0();\n    return iVar4;\n  }\n  return iVar4;\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "undefined4 uVar2;" type_identifier identifier ;) (declaration "int *piVar3;" primitive_type (pointer_declarator "*piVar3" * identifier) ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "int iVar5;" primitive_type identifier ;) (declaration "undefined4 *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "int unaff_s2;" primitive_type identifier ;) (declaration "undefined *unaff_s4;" type_identifier (pointer_declarator "*unaff_s4" * identifier) ;) (declaration "int *piVar7;" primitive_type (pointer_declarator "*piVar7" * identifier) ;) (declaration "undefined *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (declaration "code *pcVar9;" type_identifier (pointer_declarator "*pcVar9" * identifier) ;) (declaration "undefined *puStack_6c;" type_identifier (pointer_declarator "*puStack_6c" * identifier) ;) (declaration "int iStack_68;" primitive_type identifier ;) (declaration "int iStack_64;" primitive_type identifier ;) (declaration "int iStack_5c;" primitive_type identifier ;) (declaration "undefined *puStack_58;" type_identifier (pointer_declarator "*puStack_58" * identifier) ;) (declaration "int iStack_54;" primitive_type identifier ;) (declaration "undefined *puStack_50;" type_identifier (pointer_declarator "*puStack_50" * identifier) ;) (declaration "undefined *puStack_4c;" type_identifier (pointer_declarator "*puStack_4c" * identifier) ;) (declaration "int *piStack_2c;" primitive_type (pointer_declarator "*piStack_2c" * identifier) ;) (declaration "undefined4 ****local_24;" type_identifier (pointer_declarator "****local_24" * (pointer_declarator "***local_24" * (pointer_declarator "**local_24" * (pointer_declarator "*local_24" * identifier)))) ;) (declaration "undefined *local_20;" type_identifier (pointer_declarator "*local_20" * identifier) ;) (declaration "int local_1c;" primitive_type identifier ;) (expression_statement "puVar1 = PTR___stack_chk_guard_000c008c;" (assignment_expression "puVar1 = PTR___stack_chk_guard_000c008c" identifier = identifier) ;) (expression_statement "puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;" (assignment_expression "puVar6 = (undefined4 *)PTR_bio_err_000bf3b0" identifier = (cast_expression "(undefined4 *)PTR_bio_err_000bf3b0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "local_1c = *(int *)PTR___stack_chk_guard_000c008c;" (assignment_expression "local_1c = *(int *)PTR___stack_chk_guard_000c008c" identifier = (pointer_expression "*(int *)PTR___stack_chk_guard_000c008c" * (cast_expression "(int *)PTR___stack_chk_guard_000c008c" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "local_24 = param_4;" (assignment_expression "local_24 = param_4" identifier = identifier) ;) (expression_statement "local_20 = param_1;" (assignment_expression "local_20 = param_1" identifier = identifier) ;) (if_statement "if (param_1 == (undefined *)0x0) {\n    if ((param_3 == (undefined *)0x0) || (param_2 == (undefined *)0x8)) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);\n      goto LAB_0007d24c;\n    }\n    param_1 = param_2;\n    unbuffer(*(undefined4 *)PTR_stdin_000bfcc8);\n    unaff_s2 = dup_bio_in(param_2);\nLAB_0007d018:\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (unaff_s2 == 0) {\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n    }\n    else {\n      if (param_2 == (undefined *)0x4) {\n        param_1 = (undefined *)0x0;\n        iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }\n      if (param_2 == (undefined *)0xa) {\n        param_1 = (undefined *)0x0;\n        unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }\n        if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }\n        if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }\n      puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n    }\nLAB_0007d05c:\n    iVar4 = 0;\n    param_1 = PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428;\n    param_3 = param_6;\n    (*(code *)PTR_BIO_printf_000c0b94)(*puVar6);\n  }\n  else {\n    if (param_2 != (undefined *)0x8) {\n      param_1 = (undefined *)0x72;\n      param_3 = param_2;\n      unaff_s2 = bio_open_default();\n      goto LAB_0007d018;\n    }\n    if (param_5 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);\nLAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n      goto LAB_0007d05c;\n    }\n    param_4 = &local_24;\n    param_3 = *(undefined **)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118);\n    iVar4 = (*(code *)PTR_ENGINE_load_public_key_000bfd2c)(param_5,param_1,param_3,param_4);\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (iVar4 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6);\n      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar6);\n      goto LAB_0007d24c;\n    }\n    (*(code *)PTR_BIO_free_000bf96c)(0);\n  }" if (parenthesized_expression "(param_1 == (undefined *)0x0)" ( (binary_expression "param_1 == (undefined *)0x0" identifier == (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if ((param_3 == (undefined *)0x0) || (param_2 == (undefined *)0x8)) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);\n      goto LAB_0007d24c;\n    }\n    param_1 = param_2;\n    unbuffer(*(undefined4 *)PTR_stdin_000bfcc8);\n    unaff_s2 = dup_bio_in(param_2);\nLAB_0007d018:\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (unaff_s2 == 0) {\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n    }\n    else {\n      if (param_2 == (undefined *)0x4) {\n        param_1 = (undefined *)0x0;\n        iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }\n      if (param_2 == (undefined *)0xa) {\n        param_1 = (undefined *)0x0;\n        unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }\n        if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }\n        if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }\n      puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n    }\nLAB_0007d05c:\n    iVar4 = 0;\n    param_1 = PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428;\n    param_3 = param_6;\n    (*(code *)PTR_BIO_printf_000c0b94)(*puVar6);\n  }" { (if_statement "if ((param_3 == (undefined *)0x0) || (param_2 == (undefined *)0x8)) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);\n      goto LAB_0007d24c;\n    }" if (parenthesized_expression "((param_3 == (undefined *)0x0) || (param_2 == (undefined *)0x8))" ( (binary_expression "(param_3 == (undefined *)0x0) || (param_2 == (undefined *)0x8)" (parenthesized_expression "(param_3 == (undefined *)0x0)" ( (binary_expression "param_3 == (undefined *)0x0" identifier == (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(param_2 == (undefined *)0x8)" ( (binary_expression "param_2 == (undefined *)0x8" identifier == (cast_expression "(undefined *)0x8" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (compound_statement "{\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);\n      goto LAB_0007d24c;\n    }" { (expression_statement "(*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);" (call_expression "(*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0)" (parenthesized_expression "(*(code *)PTR_BIO_printf_000c0b94)" ( (pointer_expression "*(code *)PTR_BIO_printf_000c0b94" * (cast_expression "(code *)PTR_BIO_printf_000c0b94" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0)" ( (pointer_expression "*(undefined4 *)PTR_bio_err_000bf3b0" * (cast_expression "(undefined4 *)PTR_bio_err_000bf3b0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0" identifier + number_literal) ))) ;) (goto_statement "goto LAB_0007d24c;" goto statement_identifier ;) })) (expression_statement "param_1 = param_2;" (assignment_expression "param_1 = param_2" identifier = identifier) ;) (expression_statement "unbuffer(*(undefined4 *)PTR_stdin_000bfcc8);" (call_expression "unbuffer(*(undefined4 *)PTR_stdin_000bfcc8)" identifier (argument_list "(*(undefined4 *)PTR_stdin_000bfcc8)" ( (pointer_expression "*(undefined4 *)PTR_stdin_000bfcc8" * (cast_expression "(undefined4 *)PTR_stdin_000bfcc8" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ))) ;) (expression_statement "unaff_s2 = dup_bio_in(param_2);" (assignment_expression "unaff_s2 = dup_bio_in(param_2)" identifier = (call_expression "dup_bio_in(param_2)" identifier (argument_list "(param_2)" ( identifier )))) ;) (labeled_statement "LAB_0007d018:\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;" statement_identifier : (expression_statement "puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;" (assignment_expression "puVar6 = (undefined4 *)PTR_bio_err_000bf3b0" identifier = (cast_expression "(undefined4 *)PTR_bio_err_000bf3b0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;)) (if_statement "if (unaff_s2 == 0) {\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n    }\n    else {\n      if (param_2 == (undefined *)0x4) {\n        param_1 = (undefined *)0x0;\n        iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }\n      if (param_2 == (undefined *)0xa) {\n        param_1 = (undefined *)0x0;\n        unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }\n        if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }\n        if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }\n      puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n    }" if (parenthesized_expression "(unaff_s2 == 0)" ( (binary_expression "unaff_s2 == 0" identifier == number_literal) )) (compound_statement "{\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n    }" { (expression_statement "(*(code *)PTR_BIO_free_000bf96c)(0);" (call_expression "(*(code *)PTR_BIO_free_000bf96c)(0)" (parenthesized_expression "(*(code *)PTR_BIO_free_000bf96c)" ( (pointer_expression "*(code *)PTR_BIO_free_000bf96c" * (cast_expression "(code *)PTR_BIO_free_000bf96c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(0)" ( number_literal ))) ;) }) (else_clause "else {\n      if (param_2 == (undefined *)0x4) {\n        param_1 = (undefined *)0x0;\n        iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }\n      if (param_2 == (undefined *)0xa) {\n        param_1 = (undefined *)0x0;\n        unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }\n        if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }\n        if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }\n      puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n    }" else (compound_statement "{\n      if (param_2 == (undefined *)0x4) {\n        param_1 = (undefined *)0x0;\n        iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }\n      if (param_2 == (undefined *)0xa) {\n        param_1 = (undefined *)0x0;\n        unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }\n        if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }\n        if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }\n      puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n    }" { (if_statement "if (param_2 == (undefined *)0x4) {\n        param_1 = (undefined *)0x0;\n        iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }" if (parenthesized_expression "(param_2 == (undefined *)0x4)" ( (binary_expression "param_2 == (undefined *)0x4" identifier == (cast_expression "(undefined *)0x4" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        param_1 = (undefined *)0x0;\n        iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }" { (expression_statement "param_1 = (undefined *)0x0;" (assignment_expression "param_1 = (undefined *)0x0" identifier = (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);" (assignment_expression "iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2)" identifier = (call_expression "(*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_d2i_PUBKEY_bio_000c08f0)" ( (pointer_expression "*(code *)PTR_d2i_PUBKEY_bio_000c08f0" * (cast_expression "(code *)PTR_d2i_PUBKEY_bio_000c08f0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2)" ( identifier )))) ;) (goto_statement "goto LAB_0007d17c;" goto statement_identifier ;) })) (if_statement "if (param_2 == (undefined *)0xa) {\n        param_1 = (undefined *)0x0;\n        unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }\n        if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }\n        if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }" if (parenthesized_expression "(param_2 == (undefined *)0xa)" ( (binary_expression "param_2 == (undefined *)0xa" identifier == (cast_expression "(undefined *)0xa" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        param_1 = (undefined *)0x0;\n        unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }" { (expression_statement "param_1 = (undefined *)0x0;" (assignment_expression "param_1 = (undefined *)0x0" identifier = (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);" (assignment_expression "unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2)" identifier = (cast_expression "(undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)" ( (pointer_expression "*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c" * (cast_expression "(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2)" ( identifier ))))) ;) (labeled_statement "joined_r0x0007d138:\n        if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }" statement_identifier : (if_statement "if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }" if (parenthesized_expression "(unaff_s4 != (undefined *)0x0)" ( (binary_expression "unaff_s4 != (undefined *)0x0" identifier != (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }" { (expression_statement "iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();" (assignment_expression "iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)()" identifier = (call_expression "(*(code *)PTR_EVP_PKEY_new_000c0864)()" (parenthesized_expression "(*(code *)PTR_EVP_PKEY_new_000c0864)" ( (pointer_expression "*(code *)PTR_EVP_PKEY_new_000c0864" * (cast_expression "(code *)PTR_EVP_PKEY_new_000c0864" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( )))) ;) (if_statement "if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }" if (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) (compound_statement "{\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }" { (expression_statement "param_1 = unaff_s4;" (assignment_expression "param_1 = unaff_s4" identifier = identifier) ;) (expression_statement "(*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);" (call_expression "(*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4)" (parenthesized_expression "(*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)" ( (pointer_expression "*(code *)PTR_EVP_PKEY_set1_RSA_000c0448" * (cast_expression "(code *)PTR_EVP_PKEY_set1_RSA_000c0448" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar4)" ( identifier ))) ;) })) (expression_statement "(*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);" (call_expression "(*(code *)PTR_RSA_free_000bf9e0)(unaff_s4)" (parenthesized_expression "(*(code *)PTR_RSA_free_000bf9e0)" ( (pointer_expression "*(code *)PTR_RSA_free_000bf9e0" * (cast_expression "(code *)PTR_RSA_free_000bf9e0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s4)" ( identifier ))) ;) (labeled_statement "LAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);" statement_identifier : (expression_statement "(*(code *)PTR_BIO_free_000bf96c)(unaff_s2);" (call_expression "(*(code *)PTR_BIO_free_000bf96c)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_BIO_free_000bf96c)" ( (pointer_expression "*(code *)PTR_BIO_free_000bf96c" * (cast_expression "(code *)PTR_BIO_free_000bf96c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2)" ( identifier ))) ;)) (expression_statement "puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;" (assignment_expression "puVar6 = (undefined4 *)PTR_bio_err_000bf3b0" identifier = (cast_expression "(undefined4 *)PTR_bio_err_000bf3b0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (iVar4 != 0) goto LAB_0007d07c;" if (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) (goto_statement "goto LAB_0007d07c;" goto statement_identifier ;)) (goto_statement "goto LAB_0007d05c;" goto statement_identifier ;) }))) }) (else_clause "else {\n        if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }\n        if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }\n        if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }" else (compound_statement "{\n        if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }\n        if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }\n        if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }" { (if_statement "if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }" if (parenthesized_expression "(param_2 == (undefined *)0x8009)" ( (binary_expression "param_2 == (undefined *)0x8009" identifier == (cast_expression "(undefined *)0x8009" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }" { (expression_statement "param_4 = &local_24;" (assignment_expression "param_4 = &local_24" identifier = (pointer_expression "&local_24" & identifier)) ;) (expression_statement "param_1 = (undefined *)0x0;" (assignment_expression "param_1 = (undefined *)0x0" identifier = (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "param_3 = PTR_password_callback_000bf534;" (assignment_expression "param_3 = PTR_password_callback_000bf534" identifier = identifier) ;) (expression_statement "unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);" (assignment_expression "unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4)" identifier = (cast_expression "(undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4)" (parenthesized_expression "(*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)" ( (pointer_expression "*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48" * (cast_expression "(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2,0,PTR_password_callback_000bf534,param_4)" ( identifier , number_literal , identifier , identifier ))))) ;) (goto_statement "goto joined_r0x0007d138;" goto statement_identifier ;) })) (if_statement "if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }" if (parenthesized_expression "(param_2 == (undefined *)0x8005)" ( (binary_expression "param_2 == (undefined *)0x8005" identifier == (cast_expression "(undefined *)0x8005" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }" { (expression_statement "param_4 = &local_24;" (assignment_expression "param_4 = &local_24" identifier = (pointer_expression "&local_24" & identifier)) ;) (expression_statement "param_1 = (undefined *)0x0;" (assignment_expression "param_1 = (undefined *)0x0" identifier = (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "param_3 = PTR_password_callback_000bf534;" (assignment_expression "param_3 = PTR_password_callback_000bf534" identifier = identifier) ;) (expression_statement "iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);" (assignment_expression "iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4)" identifier = (call_expression "(*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4)" (parenthesized_expression "(*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)" ( (pointer_expression "*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c" * (cast_expression "(code *)PTR_PEM_read_bio_PUBKEY_000bf71c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2,0,PTR_password_callback_000bf534,param_4)" ( identifier , number_literal , identifier , identifier )))) ;) (goto_statement "goto LAB_0007d17c;" goto statement_identifier ;) })) (if_statement "if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }" if (parenthesized_expression "(param_2 == (undefined *)0xb)" ( (binary_expression "param_2 == (undefined *)0xb" identifier == (cast_expression "(undefined *)0xb" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }" { (expression_statement "iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);" (assignment_expression "iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2)" identifier = (call_expression "(*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_b2i_PublicKey_bio_000c0248)" ( (pointer_expression "*(code *)PTR_b2i_PublicKey_bio_000c0248" * (cast_expression "(code *)PTR_b2i_PublicKey_bio_000c0248" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2)" ( identifier )))) ;) (goto_statement "goto LAB_0007d17c;" goto statement_identifier ;) })) }))) (expression_statement "puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;" (assignment_expression "puVar6 = (undefined4 *)PTR_bio_err_000bf3b0" identifier = (cast_expression "(undefined4 *)PTR_bio_err_000bf3b0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "(*(code *)PTR_BIO_free_000bf96c)(unaff_s2);" (call_expression "(*(code *)PTR_BIO_free_000bf96c)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_BIO_free_000bf96c)" ( (pointer_expression "*(code *)PTR_BIO_free_000bf96c" * (cast_expression "(code *)PTR_BIO_free_000bf96c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2)" ( identifier ))) ;) }))) (labeled_statement "LAB_0007d05c:\n    iVar4 = 0;" statement_identifier : (expression_statement "iVar4 = 0;" (assignment_expression "iVar4 = 0" identifier = number_literal) ;)) (expression_statement "param_1 = PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428;" (assignment_expression "param_1 = PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428" identifier = (binary_expression "PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428" identifier + number_literal)) ;) (expression_statement "param_3 = param_6;" (assignment_expression "param_3 = param_6" identifier = identifier) ;) (expression_statement "(*(code *)PTR_BIO_printf_000c0b94)(*puVar6);" (call_expression "(*(code *)PTR_BIO_printf_000c0b94)(*puVar6)" (parenthesized_expression "(*(code *)PTR_BIO_printf_000c0b94)" ( (pointer_expression "*(code *)PTR_BIO_printf_000c0b94" * (cast_expression "(code *)PTR_BIO_printf_000c0b94" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*puVar6)" ( (pointer_expression "*puVar6" * identifier) ))) ;) }) (else_clause "else {\n    if (param_2 != (undefined *)0x8) {\n      param_1 = (undefined *)0x72;\n      param_3 = param_2;\n      unaff_s2 = bio_open_default();\n      goto LAB_0007d018;\n    }\n    if (param_5 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);\nLAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n      goto LAB_0007d05c;\n    }\n    param_4 = &local_24;\n    param_3 = *(undefined **)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118);\n    iVar4 = (*(code *)PTR_ENGINE_load_public_key_000bfd2c)(param_5,param_1,param_3,param_4);\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (iVar4 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6);\n      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar6);\n      goto LAB_0007d24c;\n    }\n    (*(code *)PTR_BIO_free_000bf96c)(0);\n  }" else (compound_statement "{\n    if (param_2 != (undefined *)0x8) {\n      param_1 = (undefined *)0x72;\n      param_3 = param_2;\n      unaff_s2 = bio_open_default();\n      goto LAB_0007d018;\n    }\n    if (param_5 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);\nLAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n      goto LAB_0007d05c;\n    }\n    param_4 = &local_24;\n    param_3 = *(undefined **)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118);\n    iVar4 = (*(code *)PTR_ENGINE_load_public_key_000bfd2c)(param_5,param_1,param_3,param_4);\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (iVar4 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6);\n      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar6);\n      goto LAB_0007d24c;\n    }\n    (*(code *)PTR_BIO_free_000bf96c)(0);\n  }" { (if_statement "if (param_2 != (undefined *)0x8) {\n      param_1 = (undefined *)0x72;\n      param_3 = param_2;\n      unaff_s2 = bio_open_default();\n      goto LAB_0007d018;\n    }" if (parenthesized_expression "(param_2 != (undefined *)0x8)" ( (binary_expression "param_2 != (undefined *)0x8" identifier != (cast_expression "(undefined *)0x8" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      param_1 = (undefined *)0x72;\n      param_3 = param_2;\n      unaff_s2 = bio_open_default();\n      goto LAB_0007d018;\n    }" { (expression_statement "param_1 = (undefined *)0x72;" (assignment_expression "param_1 = (undefined *)0x72" identifier = (cast_expression "(undefined *)0x72" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "param_3 = param_2;" (assignment_expression "param_3 = param_2" identifier = identifier) ;) (expression_statement "unaff_s2 = bio_open_default();" (assignment_expression "unaff_s2 = bio_open_default()" identifier = (call_expression "bio_open_default()" identifier (argument_list "()" ( )))) ;) (goto_statement "goto LAB_0007d018;" goto statement_identifier ;) })) (if_statement "if (param_5 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);\nLAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n      goto LAB_0007d05c;\n    }" if (parenthesized_expression "(param_5 == 0)" ( (binary_expression "param_5 == 0" identifier == number_literal) )) (compound_statement "{\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);\nLAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n      goto LAB_0007d05c;\n    }" { (expression_statement "(*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);" (call_expression "(*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488)" (parenthesized_expression "(*(code *)PTR_BIO_printf_000c0b94)" ( (pointer_expression "*(code *)PTR_BIO_printf_000c0b94" * (cast_expression "(code *)PTR_BIO_printf_000c0b94" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488)" ( (pointer_expression "*(undefined4 *)PTR_bio_err_000bf3b0" * (cast_expression "(undefined4 *)PTR_bio_err_000bf3b0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488" identifier + number_literal) ))) ;) (labeled_statement "LAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);" statement_identifier : (expression_statement "(*(code *)PTR_BIO_free_000bf96c)(0);" (call_expression "(*(code *)PTR_BIO_free_000bf96c)(0)" (parenthesized_expression "(*(code *)PTR_BIO_free_000bf96c)" ( (pointer_expression "*(code *)PTR_BIO_free_000bf96c" * (cast_expression "(code *)PTR_BIO_free_000bf96c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(0)" ( number_literal ))) ;)) (goto_statement "goto LAB_0007d05c;" goto statement_identifier ;) })) (expression_statement "param_4 = &local_24;" (assignment_expression "param_4 = &local_24" identifier = (pointer_expression "&local_24" & identifier)) ;) (expression_statement "param_3 = *(undefined **)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118);" (assignment_expression "param_3 = *(undefined **)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118)" identifier = (pointer_expression "*(undefined **)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118)" * (cast_expression "(undefined **)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118)" ( (binary_expression "PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118" identifier + number_literal) ))))) ;) (expression_statement "iVar4 = (*(code *)PTR_ENGINE_load_public_key_000bfd2c)(param_5,param_1,param_3,param_4);" (assignment_expression "iVar4 = (*(code *)PTR_ENGINE_load_public_key_000bfd2c)(param_5,param_1,param_3,param_4)" identifier = (call_expression "(*(code *)PTR_ENGINE_load_public_key_000bfd2c)(param_5,param_1,param_3,param_4)" (parenthesized_expression "(*(code *)PTR_ENGINE_load_public_key_000bfd2c)" ( (pointer_expression "*(code *)PTR_ENGINE_load_public_key_000bfd2c" * (cast_expression "(code *)PTR_ENGINE_load_public_key_000bfd2c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_5,param_1,param_3,param_4)" ( identifier , identifier , identifier , identifier )))) ;) (expression_statement "puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;" (assignment_expression "puVar6 = (undefined4 *)PTR_bio_err_000bf3b0" identifier = (cast_expression "(undefined4 *)PTR_bio_err_000bf3b0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (iVar4 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6);\n      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar6);\n      goto LAB_0007d24c;\n    }" if (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) (compound_statement "{\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6);\n      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar6);\n      goto LAB_0007d24c;\n    }" { (expression_statement "(*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6);" (call_expression "(*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6)" (parenthesized_expression "(*(code *)PTR_BIO_printf_000c0b94)" ( (pointer_expression "*(code *)PTR_BIO_printf_000c0b94" * (cast_expression "(code *)PTR_BIO_printf_000c0b94" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6)" ( (pointer_expression "*(undefined4 *)PTR_bio_err_000bf3b0" * (cast_expression "(undefined4 *)PTR_bio_err_000bf3b0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470" identifier + number_literal) , identifier ))) ;) (expression_statement "(*(code *)PTR_ERR_print_errors_000bf744)(*puVar6);" (call_expression "(*(code *)PTR_ERR_print_errors_000bf744)(*puVar6)" (parenthesized_expression "(*(code *)PTR_ERR_print_errors_000bf744)" ( (pointer_expression "*(code *)PTR_ERR_print_errors_000bf744" * (cast_expression "(code *)PTR_ERR_print_errors_000bf744" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*puVar6)" ( (pointer_expression "*puVar6" * identifier) ))) ;) (goto_statement "goto LAB_0007d24c;" goto statement_identifier ;) })) (expression_statement "(*(code *)PTR_BIO_free_000bf96c)(0);" (call_expression "(*(code *)PTR_BIO_free_000bf96c)(0)" (parenthesized_expression "(*(code *)PTR_BIO_free_000bf96c)" ( (pointer_expression "*(code *)PTR_BIO_free_000bf96c" * (cast_expression "(code *)PTR_BIO_free_000bf96c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(0)" ( number_literal ))) ;) }))) (labeled_statement "LAB_0007d07c:\n  if (local_1c == *(int *)puVar1) {\n    return iVar4;\n  }" statement_identifier : (if_statement "if (local_1c == *(int *)puVar1) {\n    return iVar4;\n  }" if (parenthesized_expression "(local_1c == *(int *)puVar1)" ( (binary_expression "local_1c == *(int *)puVar1" identifier == (pointer_expression "*(int *)puVar1" * (cast_expression "(int *)puVar1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) )) (compound_statement "{\n    return iVar4;\n  }" { (return_statement "return iVar4;" return identifier ;) }))) (expression_statement "iVar5 = local_1c;" (assignment_expression "iVar5 = local_1c" identifier = identifier) ;) (expression_statement "puVar8 = PTR___stack_chk_fail_000bfdf8;" (assignment_expression "puVar8 = PTR___stack_chk_fail_000bfdf8" identifier = identifier) ;) (expression_statement "(*(code *)PTR___stack_chk_fail_000bfdf8)();" (call_expression "(*(code *)PTR___stack_chk_fail_000bfdf8)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_000bfdf8)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_000bfdf8" * (cast_expression "(code *)PTR___stack_chk_fail_000bfdf8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "piVar7 = *(int **)(puVar8 + 0x42dcc);" (assignment_expression "piVar7 = *(int **)(puVar8 + 0x42dcc)" identifier = (pointer_expression "*(int **)(puVar8 + 0x42dcc)" * (cast_expression "(int **)(puVar8 + 0x42dcc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x42dcc)" ( (binary_expression "puVar8 + 0x42dcc" identifier + number_literal) ))))) ;) (expression_statement "puStack_50 = param_6;" (assignment_expression "puStack_50 = param_6" identifier = identifier) ;) (expression_statement "puStack_58 = puVar1;" (assignment_expression "puStack_58 = puVar1" identifier = identifier) ;) (expression_statement "iStack_64 = *piVar7;" (assignment_expression "iStack_64 = *piVar7" identifier = (pointer_expression "*piVar7" * identifier)) ;) (expression_statement "puStack_6c = param_3;" (assignment_expression "puStack_6c = param_3" identifier = identifier) ;) (expression_statement "iStack_68 = iVar5;" (assignment_expression "iStack_68 = iVar5" identifier = identifier) ;) (expression_statement "iStack_5c = iVar4;" (assignment_expression "iStack_5c = iVar4" identifier = identifier) ;) (expression_statement "iStack_54 = unaff_s2;" (assignment_expression "iStack_54 = unaff_s2" identifier = identifier) ;) (expression_statement "puStack_4c = unaff_s4;" (assignment_expression "puStack_4c = unaff_s4" identifier = identifier) ;) (if_statement "if (param_1 != (undefined *)0x8005) {\n    (**(code **)(puVar8 + 0x438d4))\n              (**(undefined4 **)(puVar8 + 0x420f0),*(int *)(puVar8 + 0x420ec) + -0x514,param_4);\n    iVar4 = 0;\n    goto LAB_0007d33c;\n  }" if (parenthesized_expression "(param_1 != (undefined *)0x8005)" ( (binary_expression "param_1 != (undefined *)0x8005" identifier != (cast_expression "(undefined *)0x8005" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    (**(code **)(puVar8 + 0x438d4))\n              (**(undefined4 **)(puVar8 + 0x420f0),*(int *)(puVar8 + 0x420ec) + -0x514,param_4);\n    iVar4 = 0;\n    goto LAB_0007d33c;\n  }" { (expression_statement "(**(code **)(puVar8 + 0x438d4))\n              (**(undefined4 **)(puVar8 + 0x420f0),*(int *)(puVar8 + 0x420ec) + -0x514,param_4);" (call_expression "(**(code **)(puVar8 + 0x438d4))\n              (**(undefined4 **)(puVar8 + 0x420f0),*(int *)(puVar8 + 0x420ec) + -0x514,param_4)" (parenthesized_expression "(**(code **)(puVar8 + 0x438d4))" ( (pointer_expression "**(code **)(puVar8 + 0x438d4)" * (pointer_expression "*(code **)(puVar8 + 0x438d4)" * (cast_expression "(code **)(puVar8 + 0x438d4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x438d4)" ( (binary_expression "puVar8 + 0x438d4" identifier + number_literal) ))))) )) (argument_list "(**(undefined4 **)(puVar8 + 0x420f0),*(int *)(puVar8 + 0x420ec) + -0x514,param_4)" ( (pointer_expression "**(undefined4 **)(puVar8 + 0x420f0)" * (pointer_expression "*(undefined4 **)(puVar8 + 0x420f0)" * (cast_expression "(undefined4 **)(puVar8 + 0x420f0)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x420f0)" ( (binary_expression "puVar8 + 0x420f0" identifier + number_literal) ))))) , (binary_expression "*(int *)(puVar8 + 0x420ec) + -0x514" (pointer_expression "*(int *)(puVar8 + 0x420ec)" * (cast_expression "(int *)(puVar8 + 0x420ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x420ec)" ( (binary_expression "puVar8 + 0x420ec" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (expression_statement "iVar4 = 0;" (assignment_expression "iVar4 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_0007d33c;" goto statement_identifier ;) })) (expression_statement "iVar4 = bio_open_default();" (assignment_expression "iVar4 = bio_open_default()" identifier = (call_expression "bio_open_default()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar4 == 0) {\n    iVar4 = 0;\n    goto LAB_0007d33c;\n  }" if (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) (compound_statement "{\n    iVar4 = 0;\n    goto LAB_0007d33c;\n  }" { (expression_statement "iVar4 = 0;" (assignment_expression "iVar4 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_0007d33c;" goto statement_identifier ;) })) (expression_statement "uVar2 = (**(code **)(puVar8 + 0x43538))(iVar4,0,*(undefined4 *)(puVar8 + 0x42274),&puStack_6c);" (assignment_expression "uVar2 = (**(code **)(puVar8 + 0x43538))(iVar4,0,*(undefined4 *)(puVar8 + 0x42274),&puStack_6c)" identifier = (call_expression "(**(code **)(puVar8 + 0x43538))(iVar4,0,*(undefined4 *)(puVar8 + 0x42274),&puStack_6c)" (parenthesized_expression "(**(code **)(puVar8 + 0x43538))" ( (pointer_expression "**(code **)(puVar8 + 0x43538)" * (pointer_expression "*(code **)(puVar8 + 0x43538)" * (cast_expression "(code **)(puVar8 + 0x43538)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x43538)" ( (binary_expression "puVar8 + 0x43538" identifier + number_literal) ))))) )) (argument_list "(iVar4,0,*(undefined4 *)(puVar8 + 0x42274),&puStack_6c)" ( identifier , number_literal , (pointer_expression "*(undefined4 *)(puVar8 + 0x42274)" * (cast_expression "(undefined4 *)(puVar8 + 0x42274)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x42274)" ( (binary_expression "puVar8 + 0x42274" identifier + number_literal) )))) , (pointer_expression "&puStack_6c" & identifier) )))) ;) (expression_statement "(**(code **)(puVar8 + 0x426ac))(iVar4);" (call_expression "(**(code **)(puVar8 + 0x426ac))(iVar4)" (parenthesized_expression "(**(code **)(puVar8 + 0x426ac))" ( (pointer_expression "**(code **)(puVar8 + 0x426ac)" * (pointer_expression "*(code **)(puVar8 + 0x426ac)" * (cast_expression "(code **)(puVar8 + 0x426ac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x426ac)" ( (binary_expression "puVar8 + 0x426ac" identifier + number_literal) ))))) )) (argument_list "(iVar4)" ( identifier ))) ;) (if_statement "if ((__gp_1 == 0) && (__gp_1 = (**(code **)(puVar8 + 0x4325c))(), __gp_1 == 0)) {\n    (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\nLAB_0007d4dc:\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n    if (piStack_2c != (int *)0x0) goto LAB_0007d4f8;\nLAB_0007d63c:\n    __gp_1 = 0;\n    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);\n    iVar4 = *(int *)(puVar8 + 0x420ec);\n    uVar2 = *puVar6;\n  }\n  else {\n    pcVar9 = *(code **)(puVar8 + 0x4267c);\n    if (piStack_2c == (int *)0x0) {\nLAB_0007d3dc:\n      iVar5 = 0;\n      iVar4 = (*pcVar9)(uVar2);\n      if (0 < iVar4) {\n        do {\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        } while (iVar5 < iVar4);\n      }\n      iVar4 = (**(code **)(puVar8 + 0x4267c))(__gp_1);\n      if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }\n      (**(code **)(puVar8 + 0x42714))(uVar2);\n      iVar4 = 1;\n      goto LAB_0007d33c;\n    }\n    if (*piStack_2c != 0) {\nLAB_0007d3d8:\n      pcVar9 = *(code **)(puVar8 + 0x4267c);\n      goto LAB_0007d3dc;\n    }\n    iVar4 = (**(code **)(puVar8 + 0x4325c))();\n    *piStack_2c = iVar4;\n    if (iVar4 != 0) goto LAB_0007d3d8;\n    pcVar9 = *(code **)(puVar8 + 0x42714);\nLAB_0007d5d8:\n    (*pcVar9)(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\nLAB_0007d4f8:\n    __gp_1 = 0;\n    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);\n    (**(code **)(puVar8 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar8 + 0x42a64));\n    uVar2 = *puVar6;\n    *piStack_2c = 0;\n    iVar4 = *(int *)(puVar8 + 0x420ec);\n  }" if (parenthesized_expression "((__gp_1 == 0) && (__gp_1 = (**(code **)(puVar8 + 0x4325c))(), __gp_1 == 0))" ( (binary_expression "(__gp_1 == 0) && (__gp_1 = (**(code **)(puVar8 + 0x4325c))(), __gp_1 == 0)" (parenthesized_expression "(__gp_1 == 0)" ( (binary_expression "__gp_1 == 0" identifier == number_literal) )) && (parenthesized_expression "(__gp_1 = (**(code **)(puVar8 + 0x4325c))(), __gp_1 == 0)" ( (comma_expression "__gp_1 = (**(code **)(puVar8 + 0x4325c))(), __gp_1 == 0" (assignment_expression "__gp_1 = (**(code **)(puVar8 + 0x4325c))()" identifier = (call_expression "(**(code **)(puVar8 + 0x4325c))()" (parenthesized_expression "(**(code **)(puVar8 + 0x4325c))" ( (pointer_expression "**(code **)(puVar8 + 0x4325c)" * (pointer_expression "*(code **)(puVar8 + 0x4325c)" * (cast_expression "(code **)(puVar8 + 0x4325c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x4325c)" ( (binary_expression "puVar8 + 0x4325c" identifier + number_literal) ))))) )) (argument_list "()" ( )))) , (binary_expression "__gp_1 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n    (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\nLAB_0007d4dc:\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n    if (piStack_2c != (int *)0x0) goto LAB_0007d4f8;\nLAB_0007d63c:\n    __gp_1 = 0;\n    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);\n    iVar4 = *(int *)(puVar8 + 0x420ec);\n    uVar2 = *puVar6;\n  }" { (expression_statement "(**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));" (call_expression "(**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc))" (parenthesized_expression "(**(code **)(puVar8 + 0x42714))" ( (pointer_expression "**(code **)(puVar8 + 0x42714)" * (pointer_expression "*(code **)(puVar8 + 0x42714)" * (cast_expression "(code **)(puVar8 + 0x42714)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x42714)" ( (binary_expression "puVar8 + 0x42714" identifier + number_literal) ))))) )) (argument_list "(uVar2,*(undefined4 *)(puVar8 + 0x434fc))" ( identifier , (pointer_expression "*(undefined4 *)(puVar8 + 0x434fc)" * (cast_expression "(undefined4 *)(puVar8 + 0x434fc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x434fc)" ( (binary_expression "puVar8 + 0x434fc" identifier + number_literal) )))) ))) ;) (labeled_statement "LAB_0007d4dc:\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));" statement_identifier : (expression_statement "(**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));" (call_expression "(**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4))" (parenthesized_expression "(**(code **)(puVar8 + 0x42714))" ( (pointer_expression "**(code **)(puVar8 + 0x42714)" * (pointer_expression "*(code **)(puVar8 + 0x42714)" * (cast_expression "(code **)(puVar8 + 0x42714)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x42714)" ( (binary_expression "puVar8 + 0x42714" identifier + number_literal) ))))) )) (argument_list "(__gp_1,*(undefined4 *)(puVar8 + 0x425e4))" ( identifier , (pointer_expression "*(undefined4 *)(puVar8 + 0x425e4)" * (cast_expression "(undefined4 *)(puVar8 + 0x425e4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x425e4)" ( (binary_expression "puVar8 + 0x425e4" identifier + number_literal) )))) ))) ;)) (if_statement "if (piStack_2c != (int *)0x0) goto LAB_0007d4f8;" if (parenthesized_expression "(piStack_2c != (int *)0x0)" ( (binary_expression "piStack_2c != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_0007d4f8;" goto statement_identifier ;)) (labeled_statement "LAB_0007d63c:\n    __gp_1 = 0;" statement_identifier : (expression_statement "__gp_1 = 0;" (assignment_expression "__gp_1 = 0" identifier = number_literal) ;)) (expression_statement "puVar6 = *(undefined4 **)(puVar8 + 0x420f0);" (assignment_expression "puVar6 = *(undefined4 **)(puVar8 + 0x420f0)" identifier = (pointer_expression "*(undefined4 **)(puVar8 + 0x420f0)" * (cast_expression "(undefined4 **)(puVar8 + 0x420f0)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x420f0)" ( (binary_expression "puVar8 + 0x420f0" identifier + number_literal) ))))) ;) (expression_statement "iVar4 = *(int *)(puVar8 + 0x420ec);" (assignment_expression "iVar4 = *(int *)(puVar8 + 0x420ec)" identifier = (pointer_expression "*(int *)(puVar8 + 0x420ec)" * (cast_expression "(int *)(puVar8 + 0x420ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x420ec)" ( (binary_expression "puVar8 + 0x420ec" identifier + number_literal) ))))) ;) (expression_statement "uVar2 = *puVar6;" (assignment_expression "uVar2 = *puVar6" identifier = (pointer_expression "*puVar6" * identifier)) ;) }) (else_clause "else {\n    pcVar9 = *(code **)(puVar8 + 0x4267c);\n    if (piStack_2c == (int *)0x0) {\nLAB_0007d3dc:\n      iVar5 = 0;\n      iVar4 = (*pcVar9)(uVar2);\n      if (0 < iVar4) {\n        do {\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        } while (iVar5 < iVar4);\n      }\n      iVar4 = (**(code **)(puVar8 + 0x4267c))(__gp_1);\n      if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }\n      (**(code **)(puVar8 + 0x42714))(uVar2);\n      iVar4 = 1;\n      goto LAB_0007d33c;\n    }\n    if (*piStack_2c != 0) {\nLAB_0007d3d8:\n      pcVar9 = *(code **)(puVar8 + 0x4267c);\n      goto LAB_0007d3dc;\n    }\n    iVar4 = (**(code **)(puVar8 + 0x4325c))();\n    *piStack_2c = iVar4;\n    if (iVar4 != 0) goto LAB_0007d3d8;\n    pcVar9 = *(code **)(puVar8 + 0x42714);\nLAB_0007d5d8:\n    (*pcVar9)(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\nLAB_0007d4f8:\n    __gp_1 = 0;\n    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);\n    (**(code **)(puVar8 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar8 + 0x42a64));\n    uVar2 = *puVar6;\n    *piStack_2c = 0;\n    iVar4 = *(int *)(puVar8 + 0x420ec);\n  }" else (compound_statement "{\n    pcVar9 = *(code **)(puVar8 + 0x4267c);\n    if (piStack_2c == (int *)0x0) {\nLAB_0007d3dc:\n      iVar5 = 0;\n      iVar4 = (*pcVar9)(uVar2);\n      if (0 < iVar4) {\n        do {\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        } while (iVar5 < iVar4);\n      }\n      iVar4 = (**(code **)(puVar8 + 0x4267c))(__gp_1);\n      if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }\n      (**(code **)(puVar8 + 0x42714))(uVar2);\n      iVar4 = 1;\n      goto LAB_0007d33c;\n    }\n    if (*piStack_2c != 0) {\nLAB_0007d3d8:\n      pcVar9 = *(code **)(puVar8 + 0x4267c);\n      goto LAB_0007d3dc;\n    }\n    iVar4 = (**(code **)(puVar8 + 0x4325c))();\n    *piStack_2c = iVar4;\n    if (iVar4 != 0) goto LAB_0007d3d8;\n    pcVar9 = *(code **)(puVar8 + 0x42714);\nLAB_0007d5d8:\n    (*pcVar9)(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\nLAB_0007d4f8:\n    __gp_1 = 0;\n    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);\n    (**(code **)(puVar8 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar8 + 0x42a64));\n    uVar2 = *puVar6;\n    *piStack_2c = 0;\n    iVar4 = *(int *)(puVar8 + 0x420ec);\n  }" { (expression_statement "pcVar9 = *(code **)(puVar8 + 0x4267c);" (assignment_expression "pcVar9 = *(code **)(puVar8 + 0x4267c)" identifier = (pointer_expression "*(code **)(puVar8 + 0x4267c)" * (cast_expression "(code **)(puVar8 + 0x4267c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x4267c)" ( (binary_expression "puVar8 + 0x4267c" identifier + number_literal) ))))) ;) (if_statement "if (piStack_2c == (int *)0x0) {\nLAB_0007d3dc:\n      iVar5 = 0;\n      iVar4 = (*pcVar9)(uVar2);\n      if (0 < iVar4) {\n        do {\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        } while (iVar5 < iVar4);\n      }\n      iVar4 = (**(code **)(puVar8 + 0x4267c))(__gp_1);\n      if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }\n      (**(code **)(puVar8 + 0x42714))(uVar2);\n      iVar4 = 1;\n      goto LAB_0007d33c;\n    }" if (parenthesized_expression "(piStack_2c == (int *)0x0)" ( (binary_expression "piStack_2c == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_0007d3dc:\n      iVar5 = 0;\n      iVar4 = (*pcVar9)(uVar2);\n      if (0 < iVar4) {\n        do {\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        } while (iVar5 < iVar4);\n      }\n      iVar4 = (**(code **)(puVar8 + 0x4267c))(__gp_1);\n      if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }\n      (**(code **)(puVar8 + 0x42714))(uVar2);\n      iVar4 = 1;\n      goto LAB_0007d33c;\n    }" { (labeled_statement "LAB_0007d3dc:\n      iVar5 = 0;" statement_identifier : (expression_statement "iVar5 = 0;" (assignment_expression "iVar5 = 0" identifier = number_literal) ;)) (expression_statement "iVar4 = (*pcVar9)(uVar2);" (assignment_expression "iVar4 = (*pcVar9)(uVar2)" identifier = (call_expression "(*pcVar9)(uVar2)" (parenthesized_expression "(*pcVar9)" ( (pointer_expression "*pcVar9" * identifier) )) (argument_list "(uVar2)" ( identifier )))) ;) (if_statement "if (0 < iVar4) {\n        do {\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        } while (iVar5 < iVar4);\n      }" if (parenthesized_expression "(0 < iVar4)" ( (binary_expression "0 < iVar4" number_literal < identifier) )) (compound_statement "{\n        do {\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        } while (iVar5 < iVar4);\n      }" { (do_statement "do {\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        } while (iVar5 < iVar4);" do (compound_statement "{\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        }" { (expression_statement "piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);" (assignment_expression "piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5)" identifier = (cast_expression "(int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar8 + 0x43914))(uVar2,iVar5)" (parenthesized_expression "(**(code **)(puVar8 + 0x43914))" ( (pointer_expression "**(code **)(puVar8 + 0x43914)" * (pointer_expression "*(code **)(puVar8 + 0x43914)" * (cast_expression "(code **)(puVar8 + 0x43914)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x43914)" ( (binary_expression "puVar8 + 0x43914" identifier + number_literal) ))))) )) (argument_list "(uVar2,iVar5)" ( identifier , identifier ))))) ;) (if_statement "if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }" if (parenthesized_expression "(*piVar3 != 0)" ( (binary_expression "*piVar3 != 0" (pointer_expression "*piVar3" * identifier) != number_literal) )) (compound_statement "{\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }" { (expression_statement "iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);" (assignment_expression "iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1)" identifier = (call_expression "(**(code **)(puVar8 + 0x42a8c))(__gp_1)" (parenthesized_expression "(**(code **)(puVar8 + 0x42a8c))" ( (pointer_expression "**(code **)(puVar8 + 0x42a8c)" * (pointer_expression "*(code **)(puVar8 + 0x42a8c)" * (cast_expression "(code **)(puVar8 + 0x42a8c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x42a8c)" ( (binary_expression "puVar8 + 0x42a8c" identifier + number_literal) ))))) )) (argument_list "(__gp_1)" ( identifier )))) ;) (if_statement "if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }" if (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) (compound_statement "{\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }" { (expression_statement "*piVar3 = 0;" (assignment_expression "*piVar3 = 0" (pointer_expression "*piVar3" * identifier) = number_literal) ;) (goto_statement "goto LAB_0007d430;" goto statement_identifier ;) })) (labeled_statement "LAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));" statement_identifier : (expression_statement "(**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));" (call_expression "(**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc))" (parenthesized_expression "(**(code **)(puVar8 + 0x42714))" ( (pointer_expression "**(code **)(puVar8 + 0x42714)" * (pointer_expression "*(code **)(puVar8 + 0x42714)" * (cast_expression "(code **)(puVar8 + 0x42714)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x42714)" ( (binary_expression "puVar8 + 0x42714" identifier + number_literal) ))))) )) (argument_list "(uVar2,*(undefined4 *)(puVar8 + 0x434fc))" ( identifier , (pointer_expression "*(undefined4 *)(puVar8 + 0x434fc)" * (cast_expression "(undefined4 *)(puVar8 + 0x434fc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x434fc)" ( (binary_expression "puVar8 + 0x434fc" identifier + number_literal) )))) ))) ;)) (goto_statement "goto LAB_0007d4dc;" goto statement_identifier ;) })) (labeled_statement "LAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);" statement_identifier : (expression_statement "pcVar9 = *(code **)(puVar8 + 0x4267c);" (assignment_expression "pcVar9 = *(code **)(puVar8 + 0x4267c)" identifier = (pointer_expression "*(code **)(puVar8 + 0x4267c)" * (cast_expression "(code **)(puVar8 + 0x4267c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x4267c)" ( (binary_expression "puVar8 + 0x4267c" identifier + number_literal) ))))) ;)) (if_statement "if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }" if (parenthesized_expression "(piVar3[1] != 0)" ( (binary_expression "piVar3[1] != 0" (subscript_expression "piVar3[1]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }" { (if_statement "if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }" if (parenthesized_expression "(piStack_2c != (int *)0x0)" ( (binary_expression "piStack_2c != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }" { (expression_statement "iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);" (assignment_expression "iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c)" identifier = (call_expression "(**(code **)(puVar8 + 0x42a8c))(*piStack_2c)" (parenthesized_expression "(**(code **)(puVar8 + 0x42a8c))" ( (pointer_expression "**(code **)(puVar8 + 0x42a8c)" * (pointer_expression "*(code **)(puVar8 + 0x42a8c)" * (cast_expression "(code **)(puVar8 + 0x42a8c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x42a8c)" ( (binary_expression "puVar8 + 0x42a8c" identifier + number_literal) ))))) )) (argument_list "(*piStack_2c)" ( (pointer_expression "*piStack_2c" * identifier) )))) ;) (if_statement "if (iVar4 == 0) goto LAB_0007d4c4;" if (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0007d4c4;" goto statement_identifier ;)) (expression_statement "piVar3[1] = 0;" (assignment_expression "piVar3[1] = 0" (subscript_expression "piVar3[1]" identifier [ number_literal ]) = number_literal) ;) })) (expression_statement "pcVar9 = *(code **)(puVar8 + 0x4267c);" (assignment_expression "pcVar9 = *(code **)(puVar8 + 0x4267c)" identifier = (pointer_expression "*(code **)(puVar8 + 0x4267c)" * (cast_expression "(code **)(puVar8 + 0x4267c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x4267c)" ( (binary_expression "puVar8 + 0x4267c" identifier + number_literal) ))))) ;) })) (expression_statement "iVar5 = iVar5 + 1;" (assignment_expression "iVar5 = iVar5 + 1" identifier = (binary_expression "iVar5 + 1" identifier + number_literal)) ;) (expression_statement "iVar4 = (*pcVar9)(uVar2);" (assignment_expression "iVar4 = (*pcVar9)(uVar2)" identifier = (call_expression "(*pcVar9)(uVar2)" (parenthesized_expression "(*pcVar9)" ( (pointer_expression "*pcVar9" * identifier) )) (argument_list "(uVar2)" ( identifier )))) ;) }) while (parenthesized_expression "(iVar5 < iVar4)" ( (binary_expression "iVar5 < iVar4" identifier < identifier) )) ;) })) (expression_statement "iVar4 = (**(code **)(puVar8 + 0x4267c))(__gp_1);" (assignment_expression "iVar4 = (**(code **)(puVar8 + 0x4267c))(__gp_1)" identifier = (call_expression "(**(code **)(puVar8 + 0x4267c))(__gp_1)" (parenthesized_expression "(**(code **)(puVar8 + 0x4267c))" ( (pointer_expression "**(code **)(puVar8 + 0x4267c)" * (pointer_expression "*(code **)(puVar8 + 0x4267c)" * (cast_expression "(code **)(puVar8 + 0x4267c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x4267c)" ( (binary_expression "puVar8 + 0x4267c" identifier + number_literal) ))))) )) (argument_list "(__gp_1)" ( identifier )))) ;) (if_statement "if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }" if (parenthesized_expression "(iVar4 < 1)" ( (binary_expression "iVar4 < 1" identifier < number_literal) )) (compound_statement "{\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }" { (if_statement "if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }" if (parenthesized_expression "(piStack_2c == (int *)0x0)" ( (binary_expression "piStack_2c == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }" { (expression_statement "(**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));" (call_expression "(**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc))" (parenthesized_expression "(**(code **)(puVar8 + 0x42714))" ( (pointer_expression "**(code **)(puVar8 + 0x42714)" * (pointer_expression "*(code **)(puVar8 + 0x42714)" * (cast_expression "(code **)(puVar8 + 0x42714)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x42714)" ( (binary_expression "puVar8 + 0x42714" identifier + number_literal) ))))) )) (argument_list "(uVar2,*(undefined4 *)(puVar8 + 0x434fc))" ( identifier , (pointer_expression "*(undefined4 *)(puVar8 + 0x434fc)" * (cast_expression "(undefined4 *)(puVar8 + 0x434fc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x434fc)" ( (binary_expression "puVar8 + 0x434fc" identifier + number_literal) )))) ))) ;) (expression_statement "(**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));" (call_expression "(**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4))" (parenthesized_expression "(**(code **)(puVar8 + 0x42714))" ( (pointer_expression "**(code **)(puVar8 + 0x42714)" * (pointer_expression "*(code **)(puVar8 + 0x42714)" * (cast_expression "(code **)(puVar8 + 0x42714)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x42714)" ( (binary_expression "puVar8 + 0x42714" identifier + number_literal) ))))) )) (argument_list "(__gp_1,*(undefined4 *)(puVar8 + 0x425e4))" ( identifier , (pointer_expression "*(undefined4 *)(puVar8 + 0x425e4)" * (cast_expression "(undefined4 *)(puVar8 + 0x425e4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x425e4)" ( (binary_expression "puVar8 + 0x425e4" identifier + number_literal) )))) ))) ;) (goto_statement "goto LAB_0007d63c;" goto statement_identifier ;) })) (expression_statement "iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);" (assignment_expression "iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c)" identifier = (call_expression "(**(code **)(puVar8 + 0x4267c))(*piStack_2c)" (parenthesized_expression "(**(code **)(puVar8 + 0x4267c))" ( (pointer_expression "**(code **)(puVar8 + 0x4267c)" * (pointer_expression "*(code **)(puVar8 + 0x4267c)" * (cast_expression "(code **)(puVar8 + 0x4267c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x4267c)" ( (binary_expression "puVar8 + 0x4267c" identifier + number_literal) ))))) )) (argument_list "(*piStack_2c)" ( (pointer_expression "*piStack_2c" * identifier) )))) ;) (if_statement "if (iVar4 < 1) {\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }" if (parenthesized_expression "(iVar4 < 1)" ( (binary_expression "iVar4 < 1" identifier < number_literal) )) (compound_statement "{\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }" { (expression_statement "pcVar9 = *(code **)(puVar8 + 0x42714);" (assignment_expression "pcVar9 = *(code **)(puVar8 + 0x42714)" identifier = (pointer_expression "*(code **)(puVar8 + 0x42714)" * (cast_expression "(code **)(puVar8 + 0x42714)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x42714)" ( (binary_expression "puVar8 + 0x42714" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_0007d5d8;" goto statement_identifier ;) })) }) (else_clause "else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }" else (if_statement "if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }" if (parenthesized_expression "(piStack_2c != (int *)0x0)" ( (binary_expression "piStack_2c != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }" { (expression_statement "(**(code **)(puVar8 + 0x4267c))(*piStack_2c);" (call_expression "(**(code **)(puVar8 + 0x4267c))(*piStack_2c)" (parenthesized_expression "(**(code **)(puVar8 + 0x4267c))" ( (pointer_expression "**(code **)(puVar8 + 0x4267c)" * (pointer_expression "*(code **)(puVar8 + 0x4267c)" * (cast_expression "(code **)(puVar8 + 0x4267c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x4267c)" ( (binary_expression "puVar8 + 0x4267c" identifier + number_literal) ))))) )) (argument_list "(*piStack_2c)" ( (pointer_expression "*piStack_2c" * identifier) ))) ;) })))) (expression_statement "(**(code **)(puVar8 + 0x42714))(uVar2);" (call_expression "(**(code **)(puVar8 + 0x42714))(uVar2)" (parenthesized_expression "(**(code **)(puVar8 + 0x42714))" ( (pointer_expression "**(code **)(puVar8 + 0x42714)" * (pointer_expression "*(code **)(puVar8 + 0x42714)" * (cast_expression "(code **)(puVar8 + 0x42714)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x42714)" ( (binary_expression "puVar8 + 0x42714" identifier + number_literal) ))))) )) (argument_list "(uVar2)" ( identifier ))) ;) (expression_statement "iVar4 = 1;" (assignment_expression "iVar4 = 1" identifier = number_literal) ;) (goto_statement "goto LAB_0007d33c;" goto statement_identifier ;) })) (if_statement "if (*piStack_2c != 0) {\nLAB_0007d3d8:\n      pcVar9 = *(code **)(puVar8 + 0x4267c);\n      goto LAB_0007d3dc;\n    }" if (parenthesized_expression "(*piStack_2c != 0)" ( (binary_expression "*piStack_2c != 0" (pointer_expression "*piStack_2c" * identifier) != number_literal) )) (compound_statement "{\nLAB_0007d3d8:\n      pcVar9 = *(code **)(puVar8 + 0x4267c);\n      goto LAB_0007d3dc;\n    }" { (labeled_statement "LAB_0007d3d8:\n      pcVar9 = *(code **)(puVar8 + 0x4267c);" statement_identifier : (expression_statement "pcVar9 = *(code **)(puVar8 + 0x4267c);" (assignment_expression "pcVar9 = *(code **)(puVar8 + 0x4267c)" identifier = (pointer_expression "*(code **)(puVar8 + 0x4267c)" * (cast_expression "(code **)(puVar8 + 0x4267c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x4267c)" ( (binary_expression "puVar8 + 0x4267c" identifier + number_literal) ))))) ;)) (goto_statement "goto LAB_0007d3dc;" goto statement_identifier ;) })) (expression_statement "iVar4 = (**(code **)(puVar8 + 0x4325c))();" (assignment_expression "iVar4 = (**(code **)(puVar8 + 0x4325c))()" identifier = (call_expression "(**(code **)(puVar8 + 0x4325c))()" (parenthesized_expression "(**(code **)(puVar8 + 0x4325c))" ( (pointer_expression "**(code **)(puVar8 + 0x4325c)" * (pointer_expression "*(code **)(puVar8 + 0x4325c)" * (cast_expression "(code **)(puVar8 + 0x4325c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x4325c)" ( (binary_expression "puVar8 + 0x4325c" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (expression_statement "*piStack_2c = iVar4;" (assignment_expression "*piStack_2c = iVar4" (pointer_expression "*piStack_2c" * identifier) = identifier) ;) (if_statement "if (iVar4 != 0) goto LAB_0007d3d8;" if (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) (goto_statement "goto LAB_0007d3d8;" goto statement_identifier ;)) (expression_statement "pcVar9 = *(code **)(puVar8 + 0x42714);" (assignment_expression "pcVar9 = *(code **)(puVar8 + 0x42714)" identifier = (pointer_expression "*(code **)(puVar8 + 0x42714)" * (cast_expression "(code **)(puVar8 + 0x42714)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x42714)" ( (binary_expression "puVar8 + 0x42714" identifier + number_literal) ))))) ;) (labeled_statement "LAB_0007d5d8:\n    (*pcVar9)(uVar2,*(undefined4 *)(puVar8 + 0x434fc));" statement_identifier : (expression_statement "(*pcVar9)(uVar2,*(undefined4 *)(puVar8 + 0x434fc));" (call_expression "(*pcVar9)(uVar2,*(undefined4 *)(puVar8 + 0x434fc))" (parenthesized_expression "(*pcVar9)" ( (pointer_expression "*pcVar9" * identifier) )) (argument_list "(uVar2,*(undefined4 *)(puVar8 + 0x434fc))" ( identifier , (pointer_expression "*(undefined4 *)(puVar8 + 0x434fc)" * (cast_expression "(undefined4 *)(puVar8 + 0x434fc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x434fc)" ( (binary_expression "puVar8 + 0x434fc" identifier + number_literal) )))) ))) ;)) (expression_statement "(**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));" (call_expression "(**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4))" (parenthesized_expression "(**(code **)(puVar8 + 0x42714))" ( (pointer_expression "**(code **)(puVar8 + 0x42714)" * (pointer_expression "*(code **)(puVar8 + 0x42714)" * (cast_expression "(code **)(puVar8 + 0x42714)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x42714)" ( (binary_expression "puVar8 + 0x42714" identifier + number_literal) ))))) )) (argument_list "(__gp_1,*(undefined4 *)(puVar8 + 0x425e4))" ( identifier , (pointer_expression "*(undefined4 *)(puVar8 + 0x425e4)" * (cast_expression "(undefined4 *)(puVar8 + 0x425e4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x425e4)" ( (binary_expression "puVar8 + 0x425e4" identifier + number_literal) )))) ))) ;) (labeled_statement "LAB_0007d4f8:\n    __gp_1 = 0;" statement_identifier : (expression_statement "__gp_1 = 0;" (assignment_expression "__gp_1 = 0" identifier = number_literal) ;)) (expression_statement "puVar6 = *(undefined4 **)(puVar8 + 0x420f0);" (assignment_expression "puVar6 = *(undefined4 **)(puVar8 + 0x420f0)" identifier = (pointer_expression "*(undefined4 **)(puVar8 + 0x420f0)" * (cast_expression "(undefined4 **)(puVar8 + 0x420f0)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x420f0)" ( (binary_expression "puVar8 + 0x420f0" identifier + number_literal) ))))) ;) (expression_statement "(**(code **)(puVar8 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar8 + 0x42a64));" (call_expression "(**(code **)(puVar8 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar8 + 0x42a64))" (parenthesized_expression "(**(code **)(puVar8 + 0x42714))" ( (pointer_expression "**(code **)(puVar8 + 0x42714)" * (pointer_expression "*(code **)(puVar8 + 0x42714)" * (cast_expression "(code **)(puVar8 + 0x42714)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x42714)" ( (binary_expression "puVar8 + 0x42714" identifier + number_literal) ))))) )) (argument_list "(*piStack_2c,*(undefined4 *)(puVar8 + 0x42a64))" ( (pointer_expression "*piStack_2c" * identifier) , (pointer_expression "*(undefined4 *)(puVar8 + 0x42a64)" * (cast_expression "(undefined4 *)(puVar8 + 0x42a64)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x42a64)" ( (binary_expression "puVar8 + 0x42a64" identifier + number_literal) )))) ))) ;) (expression_statement "uVar2 = *puVar6;" (assignment_expression "uVar2 = *puVar6" identifier = (pointer_expression "*puVar6" * identifier)) ;) (expression_statement "*piStack_2c = 0;" (assignment_expression "*piStack_2c = 0" (pointer_expression "*piStack_2c" * identifier) = number_literal) ;) (expression_statement "iVar4 = *(int *)(puVar8 + 0x420ec);" (assignment_expression "iVar4 = *(int *)(puVar8 + 0x420ec)" identifier = (pointer_expression "*(int *)(puVar8 + 0x420ec)" * (cast_expression "(int *)(puVar8 + 0x420ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x420ec)" ( (binary_expression "puVar8 + 0x420ec" identifier + number_literal) ))))) ;) }))) (expression_statement "(**(code **)(puVar8 + 0x438d4))(uVar2,*(int *)(puVar8 + 0x420ec) + -0x428,iVar4 + -0x1db4);" (call_expression "(**(code **)(puVar8 + 0x438d4))(uVar2,*(int *)(puVar8 + 0x420ec) + -0x428,iVar4 + -0x1db4)" (parenthesized_expression "(**(code **)(puVar8 + 0x438d4))" ( (pointer_expression "**(code **)(puVar8 + 0x438d4)" * (pointer_expression "*(code **)(puVar8 + 0x438d4)" * (cast_expression "(code **)(puVar8 + 0x438d4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x438d4)" ( (binary_expression "puVar8 + 0x438d4" identifier + number_literal) ))))) )) (argument_list "(uVar2,*(int *)(puVar8 + 0x420ec) + -0x428,iVar4 + -0x1db4)" ( identifier , (binary_expression "*(int *)(puVar8 + 0x420ec) + -0x428" (pointer_expression "*(int *)(puVar8 + 0x420ec)" * (cast_expression "(int *)(puVar8 + 0x420ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x420ec)" ( (binary_expression "puVar8 + 0x420ec" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar4 + -0x1db4" identifier + number_literal) ))) ;) (expression_statement "(**(code **)(puVar8 + 0x42484))(*puVar6);" (call_expression "(**(code **)(puVar8 + 0x42484))(*puVar6)" (parenthesized_expression "(**(code **)(puVar8 + 0x42484))" ( (pointer_expression "**(code **)(puVar8 + 0x42484)" * (pointer_expression "*(code **)(puVar8 + 0x42484)" * (cast_expression "(code **)(puVar8 + 0x42484)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x42484)" ( (binary_expression "puVar8 + 0x42484" identifier + number_literal) ))))) )) (argument_list "(*puVar6)" ( (pointer_expression "*puVar6" * identifier) ))) ;) (expression_statement "iVar4 = 0;" (assignment_expression "iVar4 = 0" identifier = number_literal) ;) (labeled_statement "LAB_0007d33c:\n  if (iStack_64 != *piVar7) {\n    (**(code **)(puVar8 + 0x42b38))();\n    iVar4 = FUN_0007d2c0();\n    return iVar4;\n  }" statement_identifier : (if_statement "if (iStack_64 != *piVar7) {\n    (**(code **)(puVar8 + 0x42b38))();\n    iVar4 = FUN_0007d2c0();\n    return iVar4;\n  }" if (parenthesized_expression "(iStack_64 != *piVar7)" ( (binary_expression "iStack_64 != *piVar7" identifier != (pointer_expression "*piVar7" * identifier)) )) (compound_statement "{\n    (**(code **)(puVar8 + 0x42b38))();\n    iVar4 = FUN_0007d2c0();\n    return iVar4;\n  }" { (expression_statement "(**(code **)(puVar8 + 0x42b38))();" (call_expression "(**(code **)(puVar8 + 0x42b38))()" (parenthesized_expression "(**(code **)(puVar8 + 0x42b38))" ( (pointer_expression "**(code **)(puVar8 + 0x42b38)" * (pointer_expression "*(code **)(puVar8 + 0x42b38)" * (cast_expression "(code **)(puVar8 + 0x42b38)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x42b38)" ( (binary_expression "puVar8 + 0x42b38" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "iVar4 = FUN_0007d2c0();" (assignment_expression "iVar4 = FUN_0007d2c0()" identifier = (call_expression "FUN_0007d2c0()" identifier (argument_list "()" ( )))) ;) (return_statement "return iVar4;" return identifier ;) }))) (return_statement "return iVar4;" return identifier ;) })))
(translation_unit "/* WARNING: Removing unreachable block (ram,0x0007d54c) */\n/* WARNING: Removing unreachable block (ram,0x0007d59c) */\n/* WARNING: Removing unreachable block (ram,0x0007d554) */\n/* WARNING: Removing unreachable block (ram,0x0007d650) */\n/* WARNING: Removing unreachable block (ram,0x0007d658) */\n/* WARNING: Removing unreachable block (ram,0x0007d5ac) */\n/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */\n\nEVP_PKEY * load_pubkey(char *file,int format,int maybe_stdin,char *pass,ENGINE *e,char *key_descrip)\n\n{\n  undefined *puVar1;\n  BIO *pBVar2;\n  undefined4 uVar3;\n  int iVar4;\n  int *piVar5;\n  char *pcVar6;\n  char *pcVar7;\n  stack_st_X509 **pcerts;\n  PW_CB_DATA *pass_00;\n  PW_CB_DATA *format_00;\n  PW_CB_DATA *pPVar8;\n  EVP_PKEY *pEVar9;\n  int iVar10;\n  undefined4 *puVar11;\n  BIO *unaff_s2;\n  char *unaff_s4;\n  int *piVar12;\n  undefined *puVar13;\n  code *pcVar14;\n  PW_CB_DATA PStack_6c;\n  char *pcStack_64;\n  EVP_PKEY *pEStack_5c;\n  undefined *puStack_58;\n  BIO *pBStack_54;\n  char *pcStack_50;\n  char *pcStack_4c;\n  int *piStack_2c;\n  PW_CB_DATA cb_data;\n  \n  puVar1 = PTR___stack_chk_guard_000c008c;\n  puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n  pcVar6 = *(char **)PTR___stack_chk_guard_000c008c;\n  cb_data.password = pass;\n  cb_data.prompt_info = file;\n  if (file == (char *)0x0) {\n    if ((maybe_stdin == 0) || (format == 8)) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);\n      pass_00 = (PW_CB_DATA *)pass;\n      goto LAB_0007d24c;\n    }\n    pcVar7 = (char *)format;\n    unbuffer(*(FILE **)PTR_stdin_000bfcc8);\n    unaff_s2 = dup_bio_in(format);\n    file = pcVar7;\n    pass_00 = (PW_CB_DATA *)pass;\nLAB_0007d018:\n    puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (unaff_s2 == (BIO *)0x0) {\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n    }\n    else {\n      if (format == 4) {\n        file = (char *)0x0;\n        pEVar9 = (EVP_PKEY *)(*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }\n      if (format == 10) {\n        file = (char *)0x0;\n        unaff_s4 = (char *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (char *)0x0) {\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (pEVar9 != (EVP_PKEY *)0x0) {\n            file = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(pEVar9);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (pEVar9 != (EVP_PKEY *)0x0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (format == 0x8009) {\n          pass_00 = &cb_data;\n          file = (char *)0x0;\n          maybe_stdin = (int)PTR_password_callback_000bf534;\n          unaff_s4 = (char *)(*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)(unaff_s2);\n          goto joined_r0x0007d138;\n        }\n        if (format == 0x8005) {\n          pass_00 = &cb_data;\n          file = (char *)0x0;\n          maybe_stdin = (int)PTR_password_callback_000bf534;\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n        if (format == 0xb) {\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }\n      puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n    }\nLAB_0007d05c:\n    pEVar9 = (EVP_PKEY *)0x0;\n    file = PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428;\n    maybe_stdin = (int)key_descrip;\n    (*(code *)PTR_BIO_printf_000c0b94)(*puVar11);\n  }\n  else {\n    if (format != 8) {\n      pcVar7 = (char *)0x72;\n      maybe_stdin = format;\n      unaff_s2 = bio_open_default(file,'r',format);\n      file = pcVar7;\n      pass_00 = (PW_CB_DATA *)pass;\n      goto LAB_0007d018;\n    }\n    if (e == (ENGINE *)0x0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);\n      pass_00 = (PW_CB_DATA *)pass;\nLAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n      goto LAB_0007d05c;\n    }\n    pass_00 = &cb_data;\n    maybe_stdin = *(int *)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118);\n    pEVar9 = (EVP_PKEY *)(*(code *)PTR_ENGINE_load_public_key_000bfd2c)(e);\n    puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (pEVar9 == (EVP_PKEY *)0x0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,key_descrip);\n      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar11);\n      goto LAB_0007d24c;\n    }\n    (*(code *)PTR_BIO_free_000bf96c)(0);\n  }\nLAB_0007d07c:\n  if (pcVar6 == *(char **)puVar1) {\n    return pEVar9;\n  }\n  puVar13 = PTR___stack_chk_fail_000bfdf8;\n  (*(code *)PTR___stack_chk_fail_000bfdf8)();\n  piVar12 = *(int **)(puVar13 + 0x42dcc);\n  pcStack_50 = key_descrip;\n  puStack_58 = puVar1;\n  pcStack_64 = (char *)*piVar12;\n  PStack_6c.password = (void *)maybe_stdin;\n  PStack_6c.prompt_info = pcVar6;\n  pEStack_5c = pEVar9;\n  pBStack_54 = unaff_s2;\n  pcStack_4c = unaff_s4;\n  if (file != (char *)0x8005) {\n    pcerts = (stack_st_X509 **)(*(int *)(puVar13 + 0x420ec) + -0x514);\n    pPVar8 = pass_00;\n    (**(code **)(puVar13 + 0x438d4))(**(undefined4 **)(puVar13 + 0x420f0));\n    pEVar9 = (EVP_PKEY *)0x0;\n    format_00 = pass_00;\n    pass_00 = pPVar8;\n    goto LAB_0007d33c;\n  }\n  format_00 = (PW_CB_DATA *)0x8005;\n  pcerts = (stack_st_X509 **)0x72;\n  pBVar2 = bio_open_default(pcVar6,'r',0x8005);\n  if (pBVar2 == (BIO *)0x0) {\n    pEVar9 = (EVP_PKEY *)0x0;\n    goto LAB_0007d33c;\n  }\n  pass_00 = &PStack_6c;\n  format_00 = *(PW_CB_DATA **)(puVar13 + 0x42274);\n  uVar3 = (**(code **)(puVar13 + 0x43538))(pBVar2,0);\n  (**(code **)(puVar13 + 0x426ac))(pBVar2);\n  if ((__gp == 0) && (__gp = (**(code **)(puVar13 + 0x4325c))(), __gp == 0)) {\n    (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\nLAB_0007d4dc:\n    (**(code **)(puVar13 + 0x42714))(__gp,*(undefined4 *)(puVar13 + 0x425e4));\n    if (piStack_2c != (int *)0x0) goto LAB_0007d4f8;\nLAB_0007d63c:\n    __gp = 0;\n    puVar11 = *(undefined4 **)(puVar13 + 0x420f0);\n    iVar4 = *(int *)(puVar13 + 0x420ec);\n    uVar3 = *puVar11;\n  }\n  else {\n    pcVar14 = *(code **)(puVar13 + 0x4267c);\n    if (piStack_2c == (int *)0x0) {\nLAB_0007d3dc:\n      iVar10 = 0;\n      iVar4 = (*pcVar14)(uVar3);\n      if (0 < iVar4) {\n        do {\n          piVar5 = (int *)(**(code **)(puVar13 + 0x43914))(uVar3,iVar10);\n          if (*piVar5 != 0) {\n            iVar4 = (**(code **)(puVar13 + 0x42a8c))(__gp);\n            if (iVar4 != 0) {\n              *piVar5 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar14 = *(code **)(puVar13 + 0x4267c);\n          if (piVar5[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar13 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar5[1] = 0;\n            }\n            pcVar14 = *(code **)(puVar13 + 0x4267c);\n          }\n          iVar10 = iVar10 + 1;\n          iVar4 = (*pcVar14)(uVar3);\n        } while (iVar10 < iVar4);\n      }\n      iVar4 = (**(code **)(puVar13 + 0x4267c))(__gp);\n      if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\n          (**(code **)(puVar13 + 0x42714))(__gp,*(undefined4 *)(puVar13 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar13 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar14 = *(code **)(puVar13 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar13 + 0x4267c))(*piStack_2c);\n      }\n      pcerts = *(stack_st_X509 ***)(puVar13 + 0x434fc);\n      (**(code **)(puVar13 + 0x42714))(uVar3);\n      pEVar9 = (EVP_PKEY *)&DAT_00000001;\n      goto LAB_0007d33c;\n    }\n    if (*piStack_2c != 0) {\nLAB_0007d3d8:\n      pcVar14 = *(code **)(puVar13 + 0x4267c);\n      goto LAB_0007d3dc;\n    }\n    iVar4 = (**(code **)(puVar13 + 0x4325c))();\n    *piStack_2c = iVar4;\n    if (iVar4 != 0) goto LAB_0007d3d8;\n    pcVar14 = *(code **)(puVar13 + 0x42714);\nLAB_0007d5d8:\n    (*pcVar14)(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\n    (**(code **)(puVar13 + 0x42714))(__gp,*(undefined4 *)(puVar13 + 0x425e4));\nLAB_0007d4f8:\n    __gp = 0;\n    puVar11 = *(undefined4 **)(puVar13 + 0x420f0);\n    (**(code **)(puVar13 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar13 + 0x42a64));\n    uVar3 = *puVar11;\n    *piStack_2c = 0;\n    iVar4 = *(int *)(puVar13 + 0x420ec);\n  }\n  format_00 = (PW_CB_DATA *)(iVar4 + -0x1db4);\n  pcerts = (stack_st_X509 **)(*(int *)(puVar13 + 0x420ec) + -0x428);\n  (**(code **)(puVar13 + 0x438d4))(uVar3);\n  (**(code **)(puVar13 + 0x42484))(*puVar11);\n  pEVar9 = (EVP_PKEY *)0x0;\nLAB_0007d33c:\n  if (pcStack_64 != (char *)*piVar12) {\n    pcVar6 = pcStack_64;\n    (**(code **)(puVar13 + 0x42b38))();\n    pEVar9 = (EVP_PKEY *)\n             load_certs_crls(pcVar6,(int)format_00,(char *)pass_00,puVar13 + 0x4a0a0,pcerts,\n                             (stack_st_X509_CRL **)0x0);\n    return pEVar9;\n  }\n  return pEVar9;\n}\n\n" comment comment comment comment comment comment comment (function_definition "EVP_PKEY * load_pubkey(char *file,int format,int maybe_stdin,char *pass,ENGINE *e,char *key_descrip)\n\n{\n  undefined *puVar1;\n  BIO *pBVar2;\n  undefined4 uVar3;\n  int iVar4;\n  int *piVar5;\n  char *pcVar6;\n  char *pcVar7;\n  stack_st_X509 **pcerts;\n  PW_CB_DATA *pass_00;\n  PW_CB_DATA *format_00;\n  PW_CB_DATA *pPVar8;\n  EVP_PKEY *pEVar9;\n  int iVar10;\n  undefined4 *puVar11;\n  BIO *unaff_s2;\n  char *unaff_s4;\n  int *piVar12;\n  undefined *puVar13;\n  code *pcVar14;\n  PW_CB_DATA PStack_6c;\n  char *pcStack_64;\n  EVP_PKEY *pEStack_5c;\n  undefined *puStack_58;\n  BIO *pBStack_54;\n  char *pcStack_50;\n  char *pcStack_4c;\n  int *piStack_2c;\n  PW_CB_DATA cb_data;\n  \n  puVar1 = PTR___stack_chk_guard_000c008c;\n  puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n  pcVar6 = *(char **)PTR___stack_chk_guard_000c008c;\n  cb_data.password = pass;\n  cb_data.prompt_info = file;\n  if (file == (char *)0x0) {\n    if ((maybe_stdin == 0) || (format == 8)) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);\n      pass_00 = (PW_CB_DATA *)pass;\n      goto LAB_0007d24c;\n    }\n    pcVar7 = (char *)format;\n    unbuffer(*(FILE **)PTR_stdin_000bfcc8);\n    unaff_s2 = dup_bio_in(format);\n    file = pcVar7;\n    pass_00 = (PW_CB_DATA *)pass;\nLAB_0007d018:\n    puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (unaff_s2 == (BIO *)0x0) {\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n    }\n    else {\n      if (format == 4) {\n        file = (char *)0x0;\n        pEVar9 = (EVP_PKEY *)(*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }\n      if (format == 10) {\n        file = (char *)0x0;\n        unaff_s4 = (char *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (char *)0x0) {\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (pEVar9 != (EVP_PKEY *)0x0) {\n            file = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(pEVar9);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (pEVar9 != (EVP_PKEY *)0x0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (format == 0x8009) {\n          pass_00 = &cb_data;\n          file = (char *)0x0;\n          maybe_stdin = (int)PTR_password_callback_000bf534;\n          unaff_s4 = (char *)(*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)(unaff_s2);\n          goto joined_r0x0007d138;\n        }\n        if (format == 0x8005) {\n          pass_00 = &cb_data;\n          file = (char *)0x0;\n          maybe_stdin = (int)PTR_password_callback_000bf534;\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n        if (format == 0xb) {\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }\n      puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n    }\nLAB_0007d05c:\n    pEVar9 = (EVP_PKEY *)0x0;\n    file = PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428;\n    maybe_stdin = (int)key_descrip;\n    (*(code *)PTR_BIO_printf_000c0b94)(*puVar11);\n  }\n  else {\n    if (format != 8) {\n      pcVar7 = (char *)0x72;\n      maybe_stdin = format;\n      unaff_s2 = bio_open_default(file,'r',format);\n      file = pcVar7;\n      pass_00 = (PW_CB_DATA *)pass;\n      goto LAB_0007d018;\n    }\n    if (e == (ENGINE *)0x0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);\n      pass_00 = (PW_CB_DATA *)pass;\nLAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n      goto LAB_0007d05c;\n    }\n    pass_00 = &cb_data;\n    maybe_stdin = *(int *)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118);\n    pEVar9 = (EVP_PKEY *)(*(code *)PTR_ENGINE_load_public_key_000bfd2c)(e);\n    puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (pEVar9 == (EVP_PKEY *)0x0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,key_descrip);\n      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar11);\n      goto LAB_0007d24c;\n    }\n    (*(code *)PTR_BIO_free_000bf96c)(0);\n  }\nLAB_0007d07c:\n  if (pcVar6 == *(char **)puVar1) {\n    return pEVar9;\n  }\n  puVar13 = PTR___stack_chk_fail_000bfdf8;\n  (*(code *)PTR___stack_chk_fail_000bfdf8)();\n  piVar12 = *(int **)(puVar13 + 0x42dcc);\n  pcStack_50 = key_descrip;\n  puStack_58 = puVar1;\n  pcStack_64 = (char *)*piVar12;\n  PStack_6c.password = (void *)maybe_stdin;\n  PStack_6c.prompt_info = pcVar6;\n  pEStack_5c = pEVar9;\n  pBStack_54 = unaff_s2;\n  pcStack_4c = unaff_s4;\n  if (file != (char *)0x8005) {\n    pcerts = (stack_st_X509 **)(*(int *)(puVar13 + 0x420ec) + -0x514);\n    pPVar8 = pass_00;\n    (**(code **)(puVar13 + 0x438d4))(**(undefined4 **)(puVar13 + 0x420f0));\n    pEVar9 = (EVP_PKEY *)0x0;\n    format_00 = pass_00;\n    pass_00 = pPVar8;\n    goto LAB_0007d33c;\n  }\n  format_00 = (PW_CB_DATA *)0x8005;\n  pcerts = (stack_st_X509 **)0x72;\n  pBVar2 = bio_open_default(pcVar6,'r',0x8005);\n  if (pBVar2 == (BIO *)0x0) {\n    pEVar9 = (EVP_PKEY *)0x0;\n    goto LAB_0007d33c;\n  }\n  pass_00 = &PStack_6c;\n  format_00 = *(PW_CB_DATA **)(puVar13 + 0x42274);\n  uVar3 = (**(code **)(puVar13 + 0x43538))(pBVar2,0);\n  (**(code **)(puVar13 + 0x426ac))(pBVar2);\n  if ((__gp == 0) && (__gp = (**(code **)(puVar13 + 0x4325c))(), __gp == 0)) {\n    (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\nLAB_0007d4dc:\n    (**(code **)(puVar13 + 0x42714))(__gp,*(undefined4 *)(puVar13 + 0x425e4));\n    if (piStack_2c != (int *)0x0) goto LAB_0007d4f8;\nLAB_0007d63c:\n    __gp = 0;\n    puVar11 = *(undefined4 **)(puVar13 + 0x420f0);\n    iVar4 = *(int *)(puVar13 + 0x420ec);\n    uVar3 = *puVar11;\n  }\n  else {\n    pcVar14 = *(code **)(puVar13 + 0x4267c);\n    if (piStack_2c == (int *)0x0) {\nLAB_0007d3dc:\n      iVar10 = 0;\n      iVar4 = (*pcVar14)(uVar3);\n      if (0 < iVar4) {\n        do {\n          piVar5 = (int *)(**(code **)(puVar13 + 0x43914))(uVar3,iVar10);\n          if (*piVar5 != 0) {\n            iVar4 = (**(code **)(puVar13 + 0x42a8c))(__gp);\n            if (iVar4 != 0) {\n              *piVar5 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar14 = *(code **)(puVar13 + 0x4267c);\n          if (piVar5[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar13 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar5[1] = 0;\n            }\n            pcVar14 = *(code **)(puVar13 + 0x4267c);\n          }\n          iVar10 = iVar10 + 1;\n          iVar4 = (*pcVar14)(uVar3);\n        } while (iVar10 < iVar4);\n      }\n      iVar4 = (**(code **)(puVar13 + 0x4267c))(__gp);\n      if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\n          (**(code **)(puVar13 + 0x42714))(__gp,*(undefined4 *)(puVar13 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar13 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar14 = *(code **)(puVar13 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar13 + 0x4267c))(*piStack_2c);\n      }\n      pcerts = *(stack_st_X509 ***)(puVar13 + 0x434fc);\n      (**(code **)(puVar13 + 0x42714))(uVar3);\n      pEVar9 = (EVP_PKEY *)&DAT_00000001;\n      goto LAB_0007d33c;\n    }\n    if (*piStack_2c != 0) {\nLAB_0007d3d8:\n      pcVar14 = *(code **)(puVar13 + 0x4267c);\n      goto LAB_0007d3dc;\n    }\n    iVar4 = (**(code **)(puVar13 + 0x4325c))();\n    *piStack_2c = iVar4;\n    if (iVar4 != 0) goto LAB_0007d3d8;\n    pcVar14 = *(code **)(puVar13 + 0x42714);\nLAB_0007d5d8:\n    (*pcVar14)(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\n    (**(code **)(puVar13 + 0x42714))(__gp,*(undefined4 *)(puVar13 + 0x425e4));\nLAB_0007d4f8:\n    __gp = 0;\n    puVar11 = *(undefined4 **)(puVar13 + 0x420f0);\n    (**(code **)(puVar13 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar13 + 0x42a64));\n    uVar3 = *puVar11;\n    *piStack_2c = 0;\n    iVar4 = *(int *)(puVar13 + 0x420ec);\n  }\n  format_00 = (PW_CB_DATA *)(iVar4 + -0x1db4);\n  pcerts = (stack_st_X509 **)(*(int *)(puVar13 + 0x420ec) + -0x428);\n  (**(code **)(puVar13 + 0x438d4))(uVar3);\n  (**(code **)(puVar13 + 0x42484))(*puVar11);\n  pEVar9 = (EVP_PKEY *)0x0;\nLAB_0007d33c:\n  if (pcStack_64 != (char *)*piVar12) {\n    pcVar6 = pcStack_64;\n    (**(code **)(puVar13 + 0x42b38))();\n    pEVar9 = (EVP_PKEY *)\n             load_certs_crls(pcVar6,(int)format_00,(char *)pass_00,puVar13 + 0x4a0a0,pcerts,\n                             (stack_st_X509_CRL **)0x0);\n    return pEVar9;\n  }\n  return pEVar9;\n}" type_identifier (pointer_declarator "* load_pubkey(char *file,int format,int maybe_stdin,char *pass,ENGINE *e,char *key_descrip)" * (function_declarator "load_pubkey(char *file,int format,int maybe_stdin,char *pass,ENGINE *e,char *key_descrip)" identifier (parameter_list "(char *file,int format,int maybe_stdin,char *pass,ENGINE *e,char *key_descrip)" ( (parameter_declaration "char *file" primitive_type (pointer_declarator "*file" * identifier)) , (parameter_declaration "int format" primitive_type identifier) , (parameter_declaration "int maybe_stdin" primitive_type identifier) , (parameter_declaration "char *pass" primitive_type (pointer_declarator "*pass" * identifier)) , (parameter_declaration "ENGINE *e" type_identifier (pointer_declarator "*e" * identifier)) , (parameter_declaration "char *key_descrip" primitive_type (pointer_declarator "*key_descrip" * identifier)) )))) (compound_statement "{\n  undefined *puVar1;\n  BIO *pBVar2;\n  undefined4 uVar3;\n  int iVar4;\n  int *piVar5;\n  char *pcVar6;\n  char *pcVar7;\n  stack_st_X509 **pcerts;\n  PW_CB_DATA *pass_00;\n  PW_CB_DATA *format_00;\n  PW_CB_DATA *pPVar8;\n  EVP_PKEY *pEVar9;\n  int iVar10;\n  undefined4 *puVar11;\n  BIO *unaff_s2;\n  char *unaff_s4;\n  int *piVar12;\n  undefined *puVar13;\n  code *pcVar14;\n  PW_CB_DATA PStack_6c;\n  char *pcStack_64;\n  EVP_PKEY *pEStack_5c;\n  undefined *puStack_58;\n  BIO *pBStack_54;\n  char *pcStack_50;\n  char *pcStack_4c;\n  int *piStack_2c;\n  PW_CB_DATA cb_data;\n  \n  puVar1 = PTR___stack_chk_guard_000c008c;\n  puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n  pcVar6 = *(char **)PTR___stack_chk_guard_000c008c;\n  cb_data.password = pass;\n  cb_data.prompt_info = file;\n  if (file == (char *)0x0) {\n    if ((maybe_stdin == 0) || (format == 8)) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);\n      pass_00 = (PW_CB_DATA *)pass;\n      goto LAB_0007d24c;\n    }\n    pcVar7 = (char *)format;\n    unbuffer(*(FILE **)PTR_stdin_000bfcc8);\n    unaff_s2 = dup_bio_in(format);\n    file = pcVar7;\n    pass_00 = (PW_CB_DATA *)pass;\nLAB_0007d018:\n    puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (unaff_s2 == (BIO *)0x0) {\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n    }\n    else {\n      if (format == 4) {\n        file = (char *)0x0;\n        pEVar9 = (EVP_PKEY *)(*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }\n      if (format == 10) {\n        file = (char *)0x0;\n        unaff_s4 = (char *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (char *)0x0) {\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (pEVar9 != (EVP_PKEY *)0x0) {\n            file = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(pEVar9);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (pEVar9 != (EVP_PKEY *)0x0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (format == 0x8009) {\n          pass_00 = &cb_data;\n          file = (char *)0x0;\n          maybe_stdin = (int)PTR_password_callback_000bf534;\n          unaff_s4 = (char *)(*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)(unaff_s2);\n          goto joined_r0x0007d138;\n        }\n        if (format == 0x8005) {\n          pass_00 = &cb_data;\n          file = (char *)0x0;\n          maybe_stdin = (int)PTR_password_callback_000bf534;\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n        if (format == 0xb) {\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }\n      puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n    }\nLAB_0007d05c:\n    pEVar9 = (EVP_PKEY *)0x0;\n    file = PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428;\n    maybe_stdin = (int)key_descrip;\n    (*(code *)PTR_BIO_printf_000c0b94)(*puVar11);\n  }\n  else {\n    if (format != 8) {\n      pcVar7 = (char *)0x72;\n      maybe_stdin = format;\n      unaff_s2 = bio_open_default(file,'r',format);\n      file = pcVar7;\n      pass_00 = (PW_CB_DATA *)pass;\n      goto LAB_0007d018;\n    }\n    if (e == (ENGINE *)0x0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);\n      pass_00 = (PW_CB_DATA *)pass;\nLAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n      goto LAB_0007d05c;\n    }\n    pass_00 = &cb_data;\n    maybe_stdin = *(int *)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118);\n    pEVar9 = (EVP_PKEY *)(*(code *)PTR_ENGINE_load_public_key_000bfd2c)(e);\n    puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (pEVar9 == (EVP_PKEY *)0x0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,key_descrip);\n      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar11);\n      goto LAB_0007d24c;\n    }\n    (*(code *)PTR_BIO_free_000bf96c)(0);\n  }\nLAB_0007d07c:\n  if (pcVar6 == *(char **)puVar1) {\n    return pEVar9;\n  }\n  puVar13 = PTR___stack_chk_fail_000bfdf8;\n  (*(code *)PTR___stack_chk_fail_000bfdf8)();\n  piVar12 = *(int **)(puVar13 + 0x42dcc);\n  pcStack_50 = key_descrip;\n  puStack_58 = puVar1;\n  pcStack_64 = (char *)*piVar12;\n  PStack_6c.password = (void *)maybe_stdin;\n  PStack_6c.prompt_info = pcVar6;\n  pEStack_5c = pEVar9;\n  pBStack_54 = unaff_s2;\n  pcStack_4c = unaff_s4;\n  if (file != (char *)0x8005) {\n    pcerts = (stack_st_X509 **)(*(int *)(puVar13 + 0x420ec) + -0x514);\n    pPVar8 = pass_00;\n    (**(code **)(puVar13 + 0x438d4))(**(undefined4 **)(puVar13 + 0x420f0));\n    pEVar9 = (EVP_PKEY *)0x0;\n    format_00 = pass_00;\n    pass_00 = pPVar8;\n    goto LAB_0007d33c;\n  }\n  format_00 = (PW_CB_DATA *)0x8005;\n  pcerts = (stack_st_X509 **)0x72;\n  pBVar2 = bio_open_default(pcVar6,'r',0x8005);\n  if (pBVar2 == (BIO *)0x0) {\n    pEVar9 = (EVP_PKEY *)0x0;\n    goto LAB_0007d33c;\n  }\n  pass_00 = &PStack_6c;\n  format_00 = *(PW_CB_DATA **)(puVar13 + 0x42274);\n  uVar3 = (**(code **)(puVar13 + 0x43538))(pBVar2,0);\n  (**(code **)(puVar13 + 0x426ac))(pBVar2);\n  if ((__gp == 0) && (__gp = (**(code **)(puVar13 + 0x4325c))(), __gp == 0)) {\n    (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\nLAB_0007d4dc:\n    (**(code **)(puVar13 + 0x42714))(__gp,*(undefined4 *)(puVar13 + 0x425e4));\n    if (piStack_2c != (int *)0x0) goto LAB_0007d4f8;\nLAB_0007d63c:\n    __gp = 0;\n    puVar11 = *(undefined4 **)(puVar13 + 0x420f0);\n    iVar4 = *(int *)(puVar13 + 0x420ec);\n    uVar3 = *puVar11;\n  }\n  else {\n    pcVar14 = *(code **)(puVar13 + 0x4267c);\n    if (piStack_2c == (int *)0x0) {\nLAB_0007d3dc:\n      iVar10 = 0;\n      iVar4 = (*pcVar14)(uVar3);\n      if (0 < iVar4) {\n        do {\n          piVar5 = (int *)(**(code **)(puVar13 + 0x43914))(uVar3,iVar10);\n          if (*piVar5 != 0) {\n            iVar4 = (**(code **)(puVar13 + 0x42a8c))(__gp);\n            if (iVar4 != 0) {\n              *piVar5 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar14 = *(code **)(puVar13 + 0x4267c);\n          if (piVar5[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar13 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar5[1] = 0;\n            }\n            pcVar14 = *(code **)(puVar13 + 0x4267c);\n          }\n          iVar10 = iVar10 + 1;\n          iVar4 = (*pcVar14)(uVar3);\n        } while (iVar10 < iVar4);\n      }\n      iVar4 = (**(code **)(puVar13 + 0x4267c))(__gp);\n      if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\n          (**(code **)(puVar13 + 0x42714))(__gp,*(undefined4 *)(puVar13 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar13 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar14 = *(code **)(puVar13 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar13 + 0x4267c))(*piStack_2c);\n      }\n      pcerts = *(stack_st_X509 ***)(puVar13 + 0x434fc);\n      (**(code **)(puVar13 + 0x42714))(uVar3);\n      pEVar9 = (EVP_PKEY *)&DAT_00000001;\n      goto LAB_0007d33c;\n    }\n    if (*piStack_2c != 0) {\nLAB_0007d3d8:\n      pcVar14 = *(code **)(puVar13 + 0x4267c);\n      goto LAB_0007d3dc;\n    }\n    iVar4 = (**(code **)(puVar13 + 0x4325c))();\n    *piStack_2c = iVar4;\n    if (iVar4 != 0) goto LAB_0007d3d8;\n    pcVar14 = *(code **)(puVar13 + 0x42714);\nLAB_0007d5d8:\n    (*pcVar14)(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\n    (**(code **)(puVar13 + 0x42714))(__gp,*(undefined4 *)(puVar13 + 0x425e4));\nLAB_0007d4f8:\n    __gp = 0;\n    puVar11 = *(undefined4 **)(puVar13 + 0x420f0);\n    (**(code **)(puVar13 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar13 + 0x42a64));\n    uVar3 = *puVar11;\n    *piStack_2c = 0;\n    iVar4 = *(int *)(puVar13 + 0x420ec);\n  }\n  format_00 = (PW_CB_DATA *)(iVar4 + -0x1db4);\n  pcerts = (stack_st_X509 **)(*(int *)(puVar13 + 0x420ec) + -0x428);\n  (**(code **)(puVar13 + 0x438d4))(uVar3);\n  (**(code **)(puVar13 + 0x42484))(*puVar11);\n  pEVar9 = (EVP_PKEY *)0x0;\nLAB_0007d33c:\n  if (pcStack_64 != (char *)*piVar12) {\n    pcVar6 = pcStack_64;\n    (**(code **)(puVar13 + 0x42b38))();\n    pEVar9 = (EVP_PKEY *)\n             load_certs_crls(pcVar6,(int)format_00,(char *)pass_00,puVar13 + 0x4a0a0,pcerts,\n                             (stack_st_X509_CRL **)0x0);\n    return pEVar9;\n  }\n  return pEVar9;\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "BIO *pBVar2;" type_identifier (pointer_declarator "*pBVar2" * identifier) ;) (declaration "undefined4 uVar3;" type_identifier identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "int *piVar5;" primitive_type (pointer_declarator "*piVar5" * identifier) ;) (declaration "char *pcVar6;" primitive_type (pointer_declarator "*pcVar6" * identifier) ;) (declaration "char *pcVar7;" primitive_type (pointer_declarator "*pcVar7" * identifier) ;) (declaration "stack_st_X509 **pcerts;" type_identifier (pointer_declarator "**pcerts" * (pointer_declarator "*pcerts" * identifier)) ;) (declaration "PW_CB_DATA *pass_00;" type_identifier (pointer_declarator "*pass_00" * identifier) ;) (declaration "PW_CB_DATA *format_00;" type_identifier (pointer_declarator "*format_00" * identifier) ;) (declaration "PW_CB_DATA *pPVar8;" type_identifier (pointer_declarator "*pPVar8" * identifier) ;) (declaration "EVP_PKEY *pEVar9;" type_identifier (pointer_declarator "*pEVar9" * identifier) ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "undefined4 *puVar11;" type_identifier (pointer_declarator "*puVar11" * identifier) ;) (declaration "BIO *unaff_s2;" type_identifier (pointer_declarator "*unaff_s2" * identifier) ;) (declaration "char *unaff_s4;" primitive_type (pointer_declarator "*unaff_s4" * identifier) ;) (declaration "int *piVar12;" primitive_type (pointer_declarator "*piVar12" * identifier) ;) (declaration "undefined *puVar13;" type_identifier (pointer_declarator "*puVar13" * identifier) ;) (declaration "code *pcVar14;" type_identifier (pointer_declarator "*pcVar14" * identifier) ;) (declaration "PW_CB_DATA PStack_6c;" type_identifier identifier ;) (declaration "char *pcStack_64;" primitive_type (pointer_declarator "*pcStack_64" * identifier) ;) (declaration "EVP_PKEY *pEStack_5c;" type_identifier (pointer_declarator "*pEStack_5c" * identifier) ;) (declaration "undefined *puStack_58;" type_identifier (pointer_declarator "*puStack_58" * identifier) ;) (declaration "BIO *pBStack_54;" type_identifier (pointer_declarator "*pBStack_54" * identifier) ;) (declaration "char *pcStack_50;" primitive_type (pointer_declarator "*pcStack_50" * identifier) ;) (declaration "char *pcStack_4c;" primitive_type (pointer_declarator "*pcStack_4c" * identifier) ;) (declaration "int *piStack_2c;" primitive_type (pointer_declarator "*piStack_2c" * identifier) ;) (declaration "PW_CB_DATA cb_data;" type_identifier identifier ;) (expression_statement "puVar1 = PTR___stack_chk_guard_000c008c;" (assignment_expression "puVar1 = PTR___stack_chk_guard_000c008c" identifier = identifier) ;) (expression_statement "puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;" (assignment_expression "puVar11 = (undefined4 *)PTR_bio_err_000bf3b0" identifier = (cast_expression "(undefined4 *)PTR_bio_err_000bf3b0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "pcVar6 = *(char **)PTR___stack_chk_guard_000c008c;" (assignment_expression "pcVar6 = *(char **)PTR___stack_chk_guard_000c008c" identifier = (pointer_expression "*(char **)PTR___stack_chk_guard_000c008c" * (cast_expression "(char **)PTR___stack_chk_guard_000c008c" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "cb_data.password = pass;" (assignment_expression "cb_data.password = pass" (field_expression "cb_data.password" identifier . field_identifier) = identifier) ;) (expression_statement "cb_data.prompt_info = file;" (assignment_expression "cb_data.prompt_info = file" (field_expression "cb_data.prompt_info" identifier . field_identifier) = identifier) ;) (if_statement "if (file == (char *)0x0) {\n    if ((maybe_stdin == 0) || (format == 8)) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);\n      pass_00 = (PW_CB_DATA *)pass;\n      goto LAB_0007d24c;\n    }\n    pcVar7 = (char *)format;\n    unbuffer(*(FILE **)PTR_stdin_000bfcc8);\n    unaff_s2 = dup_bio_in(format);\n    file = pcVar7;\n    pass_00 = (PW_CB_DATA *)pass;\nLAB_0007d018:\n    puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (unaff_s2 == (BIO *)0x0) {\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n    }\n    else {\n      if (format == 4) {\n        file = (char *)0x0;\n        pEVar9 = (EVP_PKEY *)(*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }\n      if (format == 10) {\n        file = (char *)0x0;\n        unaff_s4 = (char *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (char *)0x0) {\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (pEVar9 != (EVP_PKEY *)0x0) {\n            file = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(pEVar9);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (pEVar9 != (EVP_PKEY *)0x0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (format == 0x8009) {\n          pass_00 = &cb_data;\n          file = (char *)0x0;\n          maybe_stdin = (int)PTR_password_callback_000bf534;\n          unaff_s4 = (char *)(*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)(unaff_s2);\n          goto joined_r0x0007d138;\n        }\n        if (format == 0x8005) {\n          pass_00 = &cb_data;\n          file = (char *)0x0;\n          maybe_stdin = (int)PTR_password_callback_000bf534;\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n        if (format == 0xb) {\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }\n      puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n    }\nLAB_0007d05c:\n    pEVar9 = (EVP_PKEY *)0x0;\n    file = PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428;\n    maybe_stdin = (int)key_descrip;\n    (*(code *)PTR_BIO_printf_000c0b94)(*puVar11);\n  }\n  else {\n    if (format != 8) {\n      pcVar7 = (char *)0x72;\n      maybe_stdin = format;\n      unaff_s2 = bio_open_default(file,'r',format);\n      file = pcVar7;\n      pass_00 = (PW_CB_DATA *)pass;\n      goto LAB_0007d018;\n    }\n    if (e == (ENGINE *)0x0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);\n      pass_00 = (PW_CB_DATA *)pass;\nLAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n      goto LAB_0007d05c;\n    }\n    pass_00 = &cb_data;\n    maybe_stdin = *(int *)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118);\n    pEVar9 = (EVP_PKEY *)(*(code *)PTR_ENGINE_load_public_key_000bfd2c)(e);\n    puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (pEVar9 == (EVP_PKEY *)0x0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,key_descrip);\n      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar11);\n      goto LAB_0007d24c;\n    }\n    (*(code *)PTR_BIO_free_000bf96c)(0);\n  }" if (parenthesized_expression "(file == (char *)0x0)" ( (binary_expression "file == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if ((maybe_stdin == 0) || (format == 8)) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);\n      pass_00 = (PW_CB_DATA *)pass;\n      goto LAB_0007d24c;\n    }\n    pcVar7 = (char *)format;\n    unbuffer(*(FILE **)PTR_stdin_000bfcc8);\n    unaff_s2 = dup_bio_in(format);\n    file = pcVar7;\n    pass_00 = (PW_CB_DATA *)pass;\nLAB_0007d018:\n    puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (unaff_s2 == (BIO *)0x0) {\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n    }\n    else {\n      if (format == 4) {\n        file = (char *)0x0;\n        pEVar9 = (EVP_PKEY *)(*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }\n      if (format == 10) {\n        file = (char *)0x0;\n        unaff_s4 = (char *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (char *)0x0) {\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (pEVar9 != (EVP_PKEY *)0x0) {\n            file = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(pEVar9);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (pEVar9 != (EVP_PKEY *)0x0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (format == 0x8009) {\n          pass_00 = &cb_data;\n          file = (char *)0x0;\n          maybe_stdin = (int)PTR_password_callback_000bf534;\n          unaff_s4 = (char *)(*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)(unaff_s2);\n          goto joined_r0x0007d138;\n        }\n        if (format == 0x8005) {\n          pass_00 = &cb_data;\n          file = (char *)0x0;\n          maybe_stdin = (int)PTR_password_callback_000bf534;\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n        if (format == 0xb) {\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }\n      puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n    }\nLAB_0007d05c:\n    pEVar9 = (EVP_PKEY *)0x0;\n    file = PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428;\n    maybe_stdin = (int)key_descrip;\n    (*(code *)PTR_BIO_printf_000c0b94)(*puVar11);\n  }" { (if_statement "if ((maybe_stdin == 0) || (format == 8)) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);\n      pass_00 = (PW_CB_DATA *)pass;\n      goto LAB_0007d24c;\n    }" if (parenthesized_expression "((maybe_stdin == 0) || (format == 8))" ( (binary_expression "(maybe_stdin == 0) || (format == 8)" (parenthesized_expression "(maybe_stdin == 0)" ( (binary_expression "maybe_stdin == 0" identifier == number_literal) )) || (parenthesized_expression "(format == 8)" ( (binary_expression "format == 8" identifier == number_literal) ))) )) (compound_statement "{\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);\n      pass_00 = (PW_CB_DATA *)pass;\n      goto LAB_0007d24c;\n    }" { (expression_statement "(*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);" (call_expression "(*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0)" (parenthesized_expression "(*(code *)PTR_BIO_printf_000c0b94)" ( (pointer_expression "*(code *)PTR_BIO_printf_000c0b94" * (cast_expression "(code *)PTR_BIO_printf_000c0b94" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0)" ( (pointer_expression "*(undefined4 *)PTR_bio_err_000bf3b0" * (cast_expression "(undefined4 *)PTR_bio_err_000bf3b0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0" identifier + number_literal) ))) ;) (expression_statement "pass_00 = (PW_CB_DATA *)pass;" (assignment_expression "pass_00 = (PW_CB_DATA *)pass" identifier = (cast_expression "(PW_CB_DATA *)pass" ( (type_descriptor "PW_CB_DATA *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (goto_statement "goto LAB_0007d24c;" goto statement_identifier ;) })) (expression_statement "pcVar7 = (char *)format;" (assignment_expression "pcVar7 = (char *)format" identifier = (cast_expression "(char *)format" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "unbuffer(*(FILE **)PTR_stdin_000bfcc8);" (call_expression "unbuffer(*(FILE **)PTR_stdin_000bfcc8)" identifier (argument_list "(*(FILE **)PTR_stdin_000bfcc8)" ( (pointer_expression "*(FILE **)PTR_stdin_000bfcc8" * (cast_expression "(FILE **)PTR_stdin_000bfcc8" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) (expression_statement "unaff_s2 = dup_bio_in(format);" (assignment_expression "unaff_s2 = dup_bio_in(format)" identifier = (call_expression "dup_bio_in(format)" identifier (argument_list "(format)" ( identifier )))) ;) (expression_statement "file = pcVar7;" (assignment_expression "file = pcVar7" identifier = identifier) ;) (expression_statement "pass_00 = (PW_CB_DATA *)pass;" (assignment_expression "pass_00 = (PW_CB_DATA *)pass" identifier = (cast_expression "(PW_CB_DATA *)pass" ( (type_descriptor "PW_CB_DATA *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (labeled_statement "LAB_0007d018:\n    puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;" statement_identifier : (expression_statement "puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;" (assignment_expression "puVar11 = (undefined4 *)PTR_bio_err_000bf3b0" identifier = (cast_expression "(undefined4 *)PTR_bio_err_000bf3b0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;)) (if_statement "if (unaff_s2 == (BIO *)0x0) {\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n    }\n    else {\n      if (format == 4) {\n        file = (char *)0x0;\n        pEVar9 = (EVP_PKEY *)(*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }\n      if (format == 10) {\n        file = (char *)0x0;\n        unaff_s4 = (char *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (char *)0x0) {\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (pEVar9 != (EVP_PKEY *)0x0) {\n            file = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(pEVar9);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (pEVar9 != (EVP_PKEY *)0x0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (format == 0x8009) {\n          pass_00 = &cb_data;\n          file = (char *)0x0;\n          maybe_stdin = (int)PTR_password_callback_000bf534;\n          unaff_s4 = (char *)(*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)(unaff_s2);\n          goto joined_r0x0007d138;\n        }\n        if (format == 0x8005) {\n          pass_00 = &cb_data;\n          file = (char *)0x0;\n          maybe_stdin = (int)PTR_password_callback_000bf534;\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n        if (format == 0xb) {\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }\n      puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n    }" if (parenthesized_expression "(unaff_s2 == (BIO *)0x0)" ( (binary_expression "unaff_s2 == (BIO *)0x0" identifier == (cast_expression "(BIO *)0x0" ( (type_descriptor "BIO *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n    }" { (expression_statement "(*(code *)PTR_BIO_free_000bf96c)(0);" (call_expression "(*(code *)PTR_BIO_free_000bf96c)(0)" (parenthesized_expression "(*(code *)PTR_BIO_free_000bf96c)" ( (pointer_expression "*(code *)PTR_BIO_free_000bf96c" * (cast_expression "(code *)PTR_BIO_free_000bf96c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(0)" ( number_literal ))) ;) }) (else_clause "else {\n      if (format == 4) {\n        file = (char *)0x0;\n        pEVar9 = (EVP_PKEY *)(*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }\n      if (format == 10) {\n        file = (char *)0x0;\n        unaff_s4 = (char *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (char *)0x0) {\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (pEVar9 != (EVP_PKEY *)0x0) {\n            file = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(pEVar9);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (pEVar9 != (EVP_PKEY *)0x0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (format == 0x8009) {\n          pass_00 = &cb_data;\n          file = (char *)0x0;\n          maybe_stdin = (int)PTR_password_callback_000bf534;\n          unaff_s4 = (char *)(*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)(unaff_s2);\n          goto joined_r0x0007d138;\n        }\n        if (format == 0x8005) {\n          pass_00 = &cb_data;\n          file = (char *)0x0;\n          maybe_stdin = (int)PTR_password_callback_000bf534;\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n        if (format == 0xb) {\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }\n      puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n    }" else (compound_statement "{\n      if (format == 4) {\n        file = (char *)0x0;\n        pEVar9 = (EVP_PKEY *)(*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }\n      if (format == 10) {\n        file = (char *)0x0;\n        unaff_s4 = (char *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (char *)0x0) {\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (pEVar9 != (EVP_PKEY *)0x0) {\n            file = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(pEVar9);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (pEVar9 != (EVP_PKEY *)0x0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (format == 0x8009) {\n          pass_00 = &cb_data;\n          file = (char *)0x0;\n          maybe_stdin = (int)PTR_password_callback_000bf534;\n          unaff_s4 = (char *)(*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)(unaff_s2);\n          goto joined_r0x0007d138;\n        }\n        if (format == 0x8005) {\n          pass_00 = &cb_data;\n          file = (char *)0x0;\n          maybe_stdin = (int)PTR_password_callback_000bf534;\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n        if (format == 0xb) {\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }\n      puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n    }" { (if_statement "if (format == 4) {\n        file = (char *)0x0;\n        pEVar9 = (EVP_PKEY *)(*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }" if (parenthesized_expression "(format == 4)" ( (binary_expression "format == 4" identifier == number_literal) )) (compound_statement "{\n        file = (char *)0x0;\n        pEVar9 = (EVP_PKEY *)(*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }" { (expression_statement "file = (char *)0x0;" (assignment_expression "file = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pEVar9 = (EVP_PKEY *)(*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);" (assignment_expression "pEVar9 = (EVP_PKEY *)(*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2)" identifier = (cast_expression "(EVP_PKEY *)(*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2)" ( (type_descriptor "EVP_PKEY *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_d2i_PUBKEY_bio_000c08f0)" ( (pointer_expression "*(code *)PTR_d2i_PUBKEY_bio_000c08f0" * (cast_expression "(code *)PTR_d2i_PUBKEY_bio_000c08f0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2)" ( identifier ))))) ;) (goto_statement "goto LAB_0007d17c;" goto statement_identifier ;) })) (if_statement "if (format == 10) {\n        file = (char *)0x0;\n        unaff_s4 = (char *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (char *)0x0) {\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (pEVar9 != (EVP_PKEY *)0x0) {\n            file = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(pEVar9);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (pEVar9 != (EVP_PKEY *)0x0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (format == 0x8009) {\n          pass_00 = &cb_data;\n          file = (char *)0x0;\n          maybe_stdin = (int)PTR_password_callback_000bf534;\n          unaff_s4 = (char *)(*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)(unaff_s2);\n          goto joined_r0x0007d138;\n        }\n        if (format == 0x8005) {\n          pass_00 = &cb_data;\n          file = (char *)0x0;\n          maybe_stdin = (int)PTR_password_callback_000bf534;\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n        if (format == 0xb) {\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }" if (parenthesized_expression "(format == 10)" ( (binary_expression "format == 10" identifier == number_literal) )) (compound_statement "{\n        file = (char *)0x0;\n        unaff_s4 = (char *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (char *)0x0) {\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (pEVar9 != (EVP_PKEY *)0x0) {\n            file = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(pEVar9);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (pEVar9 != (EVP_PKEY *)0x0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }" { (expression_statement "file = (char *)0x0;" (assignment_expression "file = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "unaff_s4 = (char *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);" (assignment_expression "unaff_s4 = (char *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2)" identifier = (cast_expression "(char *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)" ( (pointer_expression "*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c" * (cast_expression "(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2)" ( identifier ))))) ;) (labeled_statement "joined_r0x0007d138:\n        if (unaff_s4 != (char *)0x0) {\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (pEVar9 != (EVP_PKEY *)0x0) {\n            file = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(pEVar9);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (pEVar9 != (EVP_PKEY *)0x0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }" statement_identifier : (if_statement "if (unaff_s4 != (char *)0x0) {\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (pEVar9 != (EVP_PKEY *)0x0) {\n            file = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(pEVar9);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (pEVar9 != (EVP_PKEY *)0x0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }" if (parenthesized_expression "(unaff_s4 != (char *)0x0)" ( (binary_expression "unaff_s4 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (pEVar9 != (EVP_PKEY *)0x0) {\n            file = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(pEVar9);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (pEVar9 != (EVP_PKEY *)0x0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }" { (expression_statement "pEVar9 = (EVP_PKEY *)(*(code *)PTR_EVP_PKEY_new_000c0864)();" (assignment_expression "pEVar9 = (EVP_PKEY *)(*(code *)PTR_EVP_PKEY_new_000c0864)()" identifier = (cast_expression "(EVP_PKEY *)(*(code *)PTR_EVP_PKEY_new_000c0864)()" ( (type_descriptor "EVP_PKEY *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_EVP_PKEY_new_000c0864)()" (parenthesized_expression "(*(code *)PTR_EVP_PKEY_new_000c0864)" ( (pointer_expression "*(code *)PTR_EVP_PKEY_new_000c0864" * (cast_expression "(code *)PTR_EVP_PKEY_new_000c0864" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (if_statement "if (pEVar9 != (EVP_PKEY *)0x0) {\n            file = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(pEVar9);\n          }" if (parenthesized_expression "(pEVar9 != (EVP_PKEY *)0x0)" ( (binary_expression "pEVar9 != (EVP_PKEY *)0x0" identifier != (cast_expression "(EVP_PKEY *)0x0" ( (type_descriptor "EVP_PKEY *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            file = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(pEVar9);\n          }" { (expression_statement "file = unaff_s4;" (assignment_expression "file = unaff_s4" identifier = identifier) ;) (expression_statement "(*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(pEVar9);" (call_expression "(*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(pEVar9)" (parenthesized_expression "(*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)" ( (pointer_expression "*(code *)PTR_EVP_PKEY_set1_RSA_000c0448" * (cast_expression "(code *)PTR_EVP_PKEY_set1_RSA_000c0448" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pEVar9)" ( identifier ))) ;) })) (expression_statement "(*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);" (call_expression "(*(code *)PTR_RSA_free_000bf9e0)(unaff_s4)" (parenthesized_expression "(*(code *)PTR_RSA_free_000bf9e0)" ( (pointer_expression "*(code *)PTR_RSA_free_000bf9e0" * (cast_expression "(code *)PTR_RSA_free_000bf9e0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s4)" ( identifier ))) ;) (labeled_statement "LAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);" statement_identifier : (expression_statement "(*(code *)PTR_BIO_free_000bf96c)(unaff_s2);" (call_expression "(*(code *)PTR_BIO_free_000bf96c)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_BIO_free_000bf96c)" ( (pointer_expression "*(code *)PTR_BIO_free_000bf96c" * (cast_expression "(code *)PTR_BIO_free_000bf96c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2)" ( identifier ))) ;)) (expression_statement "puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;" (assignment_expression "puVar11 = (undefined4 *)PTR_bio_err_000bf3b0" identifier = (cast_expression "(undefined4 *)PTR_bio_err_000bf3b0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (pEVar9 != (EVP_PKEY *)0x0) goto LAB_0007d07c;" if (parenthesized_expression "(pEVar9 != (EVP_PKEY *)0x0)" ( (binary_expression "pEVar9 != (EVP_PKEY *)0x0" identifier != (cast_expression "(EVP_PKEY *)0x0" ( (type_descriptor "EVP_PKEY *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_0007d07c;" goto statement_identifier ;)) (goto_statement "goto LAB_0007d05c;" goto statement_identifier ;) }))) }) (else_clause "else {\n        if (format == 0x8009) {\n          pass_00 = &cb_data;\n          file = (char *)0x0;\n          maybe_stdin = (int)PTR_password_callback_000bf534;\n          unaff_s4 = (char *)(*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)(unaff_s2);\n          goto joined_r0x0007d138;\n        }\n        if (format == 0x8005) {\n          pass_00 = &cb_data;\n          file = (char *)0x0;\n          maybe_stdin = (int)PTR_password_callback_000bf534;\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n        if (format == 0xb) {\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }" else (compound_statement "{\n        if (format == 0x8009) {\n          pass_00 = &cb_data;\n          file = (char *)0x0;\n          maybe_stdin = (int)PTR_password_callback_000bf534;\n          unaff_s4 = (char *)(*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)(unaff_s2);\n          goto joined_r0x0007d138;\n        }\n        if (format == 0x8005) {\n          pass_00 = &cb_data;\n          file = (char *)0x0;\n          maybe_stdin = (int)PTR_password_callback_000bf534;\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n        if (format == 0xb) {\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }" { (if_statement "if (format == 0x8009) {\n          pass_00 = &cb_data;\n          file = (char *)0x0;\n          maybe_stdin = (int)PTR_password_callback_000bf534;\n          unaff_s4 = (char *)(*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)(unaff_s2);\n          goto joined_r0x0007d138;\n        }" if (parenthesized_expression "(format == 0x8009)" ( (binary_expression "format == 0x8009" identifier == number_literal) )) (compound_statement "{\n          pass_00 = &cb_data;\n          file = (char *)0x0;\n          maybe_stdin = (int)PTR_password_callback_000bf534;\n          unaff_s4 = (char *)(*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)(unaff_s2);\n          goto joined_r0x0007d138;\n        }" { (expression_statement "pass_00 = &cb_data;" (assignment_expression "pass_00 = &cb_data" identifier = (pointer_expression "&cb_data" & identifier)) ;) (expression_statement "file = (char *)0x0;" (assignment_expression "file = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "maybe_stdin = (int)PTR_password_callback_000bf534;" (assignment_expression "maybe_stdin = (int)PTR_password_callback_000bf534" identifier = (cast_expression "(int)PTR_password_callback_000bf534" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "unaff_s4 = (char *)(*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)(unaff_s2);" (assignment_expression "unaff_s4 = (char *)(*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)(unaff_s2)" identifier = (cast_expression "(char *)(*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)(unaff_s2)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)" ( (pointer_expression "*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48" * (cast_expression "(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2)" ( identifier ))))) ;) (goto_statement "goto joined_r0x0007d138;" goto statement_identifier ;) })) (if_statement "if (format == 0x8005) {\n          pass_00 = &cb_data;\n          file = (char *)0x0;\n          maybe_stdin = (int)PTR_password_callback_000bf534;\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)(unaff_s2);\n          goto LAB_0007d17c;\n        }" if (parenthesized_expression "(format == 0x8005)" ( (binary_expression "format == 0x8005" identifier == number_literal) )) (compound_statement "{\n          pass_00 = &cb_data;\n          file = (char *)0x0;\n          maybe_stdin = (int)PTR_password_callback_000bf534;\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)(unaff_s2);\n          goto LAB_0007d17c;\n        }" { (expression_statement "pass_00 = &cb_data;" (assignment_expression "pass_00 = &cb_data" identifier = (pointer_expression "&cb_data" & identifier)) ;) (expression_statement "file = (char *)0x0;" (assignment_expression "file = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "maybe_stdin = (int)PTR_password_callback_000bf534;" (assignment_expression "maybe_stdin = (int)PTR_password_callback_000bf534" identifier = (cast_expression "(int)PTR_password_callback_000bf534" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "pEVar9 = (EVP_PKEY *)(*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)(unaff_s2);" (assignment_expression "pEVar9 = (EVP_PKEY *)(*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)(unaff_s2)" identifier = (cast_expression "(EVP_PKEY *)(*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)(unaff_s2)" ( (type_descriptor "EVP_PKEY *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)" ( (pointer_expression "*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c" * (cast_expression "(code *)PTR_PEM_read_bio_PUBKEY_000bf71c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2)" ( identifier ))))) ;) (goto_statement "goto LAB_0007d17c;" goto statement_identifier ;) })) (if_statement "if (format == 0xb) {\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }" if (parenthesized_expression "(format == 0xb)" ( (binary_expression "format == 0xb" identifier == number_literal) )) (compound_statement "{\n          pEVar9 = (EVP_PKEY *)(*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }" { (expression_statement "pEVar9 = (EVP_PKEY *)(*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);" (assignment_expression "pEVar9 = (EVP_PKEY *)(*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2)" identifier = (cast_expression "(EVP_PKEY *)(*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2)" ( (type_descriptor "EVP_PKEY *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_b2i_PublicKey_bio_000c0248)" ( (pointer_expression "*(code *)PTR_b2i_PublicKey_bio_000c0248" * (cast_expression "(code *)PTR_b2i_PublicKey_bio_000c0248" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2)" ( identifier ))))) ;) (goto_statement "goto LAB_0007d17c;" goto statement_identifier ;) })) }))) (expression_statement "puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;" (assignment_expression "puVar11 = (undefined4 *)PTR_bio_err_000bf3b0" identifier = (cast_expression "(undefined4 *)PTR_bio_err_000bf3b0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "(*(code *)PTR_BIO_free_000bf96c)(unaff_s2);" (call_expression "(*(code *)PTR_BIO_free_000bf96c)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_BIO_free_000bf96c)" ( (pointer_expression "*(code *)PTR_BIO_free_000bf96c" * (cast_expression "(code *)PTR_BIO_free_000bf96c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2)" ( identifier ))) ;) }))) (labeled_statement "LAB_0007d05c:\n    pEVar9 = (EVP_PKEY *)0x0;" statement_identifier : (expression_statement "pEVar9 = (EVP_PKEY *)0x0;" (assignment_expression "pEVar9 = (EVP_PKEY *)0x0" identifier = (cast_expression "(EVP_PKEY *)0x0" ( (type_descriptor "EVP_PKEY *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "file = PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428;" (assignment_expression "file = PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428" identifier = (binary_expression "PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428" identifier + number_literal)) ;) (expression_statement "maybe_stdin = (int)key_descrip;" (assignment_expression "maybe_stdin = (int)key_descrip" identifier = (cast_expression "(int)key_descrip" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "(*(code *)PTR_BIO_printf_000c0b94)(*puVar11);" (call_expression "(*(code *)PTR_BIO_printf_000c0b94)(*puVar11)" (parenthesized_expression "(*(code *)PTR_BIO_printf_000c0b94)" ( (pointer_expression "*(code *)PTR_BIO_printf_000c0b94" * (cast_expression "(code *)PTR_BIO_printf_000c0b94" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*puVar11)" ( (pointer_expression "*puVar11" * identifier) ))) ;) }) (else_clause "else {\n    if (format != 8) {\n      pcVar7 = (char *)0x72;\n      maybe_stdin = format;\n      unaff_s2 = bio_open_default(file,'r',format);\n      file = pcVar7;\n      pass_00 = (PW_CB_DATA *)pass;\n      goto LAB_0007d018;\n    }\n    if (e == (ENGINE *)0x0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);\n      pass_00 = (PW_CB_DATA *)pass;\nLAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n      goto LAB_0007d05c;\n    }\n    pass_00 = &cb_data;\n    maybe_stdin = *(int *)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118);\n    pEVar9 = (EVP_PKEY *)(*(code *)PTR_ENGINE_load_public_key_000bfd2c)(e);\n    puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (pEVar9 == (EVP_PKEY *)0x0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,key_descrip);\n      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar11);\n      goto LAB_0007d24c;\n    }\n    (*(code *)PTR_BIO_free_000bf96c)(0);\n  }" else (compound_statement "{\n    if (format != 8) {\n      pcVar7 = (char *)0x72;\n      maybe_stdin = format;\n      unaff_s2 = bio_open_default(file,'r',format);\n      file = pcVar7;\n      pass_00 = (PW_CB_DATA *)pass;\n      goto LAB_0007d018;\n    }\n    if (e == (ENGINE *)0x0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);\n      pass_00 = (PW_CB_DATA *)pass;\nLAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n      goto LAB_0007d05c;\n    }\n    pass_00 = &cb_data;\n    maybe_stdin = *(int *)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118);\n    pEVar9 = (EVP_PKEY *)(*(code *)PTR_ENGINE_load_public_key_000bfd2c)(e);\n    puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (pEVar9 == (EVP_PKEY *)0x0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,key_descrip);\n      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar11);\n      goto LAB_0007d24c;\n    }\n    (*(code *)PTR_BIO_free_000bf96c)(0);\n  }" { (if_statement "if (format != 8) {\n      pcVar7 = (char *)0x72;\n      maybe_stdin = format;\n      unaff_s2 = bio_open_default(file,'r',format);\n      file = pcVar7;\n      pass_00 = (PW_CB_DATA *)pass;\n      goto LAB_0007d018;\n    }" if (parenthesized_expression "(format != 8)" ( (binary_expression "format != 8" identifier != number_literal) )) (compound_statement "{\n      pcVar7 = (char *)0x72;\n      maybe_stdin = format;\n      unaff_s2 = bio_open_default(file,'r',format);\n      file = pcVar7;\n      pass_00 = (PW_CB_DATA *)pass;\n      goto LAB_0007d018;\n    }" { (expression_statement "pcVar7 = (char *)0x72;" (assignment_expression "pcVar7 = (char *)0x72" identifier = (cast_expression "(char *)0x72" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "maybe_stdin = format;" (assignment_expression "maybe_stdin = format" identifier = identifier) ;) (expression_statement "unaff_s2 = bio_open_default(file,'r',format);" (assignment_expression "unaff_s2 = bio_open_default(file,'r',format)" identifier = (call_expression "bio_open_default(file,'r',format)" identifier (argument_list "(file,'r',format)" ( identifier , (char_literal "'r'" ' character ') , identifier )))) ;) (expression_statement "file = pcVar7;" (assignment_expression "file = pcVar7" identifier = identifier) ;) (expression_statement "pass_00 = (PW_CB_DATA *)pass;" (assignment_expression "pass_00 = (PW_CB_DATA *)pass" identifier = (cast_expression "(PW_CB_DATA *)pass" ( (type_descriptor "PW_CB_DATA *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (goto_statement "goto LAB_0007d018;" goto statement_identifier ;) })) (if_statement "if (e == (ENGINE *)0x0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);\n      pass_00 = (PW_CB_DATA *)pass;\nLAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n      goto LAB_0007d05c;\n    }" if (parenthesized_expression "(e == (ENGINE *)0x0)" ( (binary_expression "e == (ENGINE *)0x0" identifier == (cast_expression "(ENGINE *)0x0" ( (type_descriptor "ENGINE *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);\n      pass_00 = (PW_CB_DATA *)pass;\nLAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n      goto LAB_0007d05c;\n    }" { (expression_statement "(*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);" (call_expression "(*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488)" (parenthesized_expression "(*(code *)PTR_BIO_printf_000c0b94)" ( (pointer_expression "*(code *)PTR_BIO_printf_000c0b94" * (cast_expression "(code *)PTR_BIO_printf_000c0b94" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488)" ( (pointer_expression "*(undefined4 *)PTR_bio_err_000bf3b0" * (cast_expression "(undefined4 *)PTR_bio_err_000bf3b0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488" identifier + number_literal) ))) ;) (expression_statement "pass_00 = (PW_CB_DATA *)pass;" (assignment_expression "pass_00 = (PW_CB_DATA *)pass" identifier = (cast_expression "(PW_CB_DATA *)pass" ( (type_descriptor "PW_CB_DATA *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (labeled_statement "LAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);" statement_identifier : (expression_statement "(*(code *)PTR_BIO_free_000bf96c)(0);" (call_expression "(*(code *)PTR_BIO_free_000bf96c)(0)" (parenthesized_expression "(*(code *)PTR_BIO_free_000bf96c)" ( (pointer_expression "*(code *)PTR_BIO_free_000bf96c" * (cast_expression "(code *)PTR_BIO_free_000bf96c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(0)" ( number_literal ))) ;)) (goto_statement "goto LAB_0007d05c;" goto statement_identifier ;) })) (expression_statement "pass_00 = &cb_data;" (assignment_expression "pass_00 = &cb_data" identifier = (pointer_expression "&cb_data" & identifier)) ;) (expression_statement "maybe_stdin = *(int *)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118);" (assignment_expression "maybe_stdin = *(int *)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118)" identifier = (pointer_expression "*(int *)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118)" * (cast_expression "(int *)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118)" ( (binary_expression "PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118" identifier + number_literal) ))))) ;) (expression_statement "pEVar9 = (EVP_PKEY *)(*(code *)PTR_ENGINE_load_public_key_000bfd2c)(e);" (assignment_expression "pEVar9 = (EVP_PKEY *)(*(code *)PTR_ENGINE_load_public_key_000bfd2c)(e)" identifier = (cast_expression "(EVP_PKEY *)(*(code *)PTR_ENGINE_load_public_key_000bfd2c)(e)" ( (type_descriptor "EVP_PKEY *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_ENGINE_load_public_key_000bfd2c)(e)" (parenthesized_expression "(*(code *)PTR_ENGINE_load_public_key_000bfd2c)" ( (pointer_expression "*(code *)PTR_ENGINE_load_public_key_000bfd2c" * (cast_expression "(code *)PTR_ENGINE_load_public_key_000bfd2c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(e)" ( identifier ))))) ;) (expression_statement "puVar11 = (undefined4 *)PTR_bio_err_000bf3b0;" (assignment_expression "puVar11 = (undefined4 *)PTR_bio_err_000bf3b0" identifier = (cast_expression "(undefined4 *)PTR_bio_err_000bf3b0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (pEVar9 == (EVP_PKEY *)0x0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,key_descrip);\n      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar11);\n      goto LAB_0007d24c;\n    }" if (parenthesized_expression "(pEVar9 == (EVP_PKEY *)0x0)" ( (binary_expression "pEVar9 == (EVP_PKEY *)0x0" identifier == (cast_expression "(EVP_PKEY *)0x0" ( (type_descriptor "EVP_PKEY *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,key_descrip);\n      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar11);\n      goto LAB_0007d24c;\n    }" { (expression_statement "(*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,key_descrip);" (call_expression "(*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,key_descrip)" (parenthesized_expression "(*(code *)PTR_BIO_printf_000c0b94)" ( (pointer_expression "*(code *)PTR_BIO_printf_000c0b94" * (cast_expression "(code *)PTR_BIO_printf_000c0b94" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,key_descrip)" ( (pointer_expression "*(undefined4 *)PTR_bio_err_000bf3b0" * (cast_expression "(undefined4 *)PTR_bio_err_000bf3b0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470" identifier + number_literal) , identifier ))) ;) (expression_statement "(*(code *)PTR_ERR_print_errors_000bf744)(*puVar11);" (call_expression "(*(code *)PTR_ERR_print_errors_000bf744)(*puVar11)" (parenthesized_expression "(*(code *)PTR_ERR_print_errors_000bf744)" ( (pointer_expression "*(code *)PTR_ERR_print_errors_000bf744" * (cast_expression "(code *)PTR_ERR_print_errors_000bf744" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*puVar11)" ( (pointer_expression "*puVar11" * identifier) ))) ;) (goto_statement "goto LAB_0007d24c;" goto statement_identifier ;) })) (expression_statement "(*(code *)PTR_BIO_free_000bf96c)(0);" (call_expression "(*(code *)PTR_BIO_free_000bf96c)(0)" (parenthesized_expression "(*(code *)PTR_BIO_free_000bf96c)" ( (pointer_expression "*(code *)PTR_BIO_free_000bf96c" * (cast_expression "(code *)PTR_BIO_free_000bf96c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(0)" ( number_literal ))) ;) }))) (labeled_statement "LAB_0007d07c:\n  if (pcVar6 == *(char **)puVar1) {\n    return pEVar9;\n  }" statement_identifier : (if_statement "if (pcVar6 == *(char **)puVar1) {\n    return pEVar9;\n  }" if (parenthesized_expression "(pcVar6 == *(char **)puVar1)" ( (binary_expression "pcVar6 == *(char **)puVar1" identifier == (pointer_expression "*(char **)puVar1" * (cast_expression "(char **)puVar1" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) )) (compound_statement "{\n    return pEVar9;\n  }" { (return_statement "return pEVar9;" return identifier ;) }))) (expression_statement "puVar13 = PTR___stack_chk_fail_000bfdf8;" (assignment_expression "puVar13 = PTR___stack_chk_fail_000bfdf8" identifier = identifier) ;) (expression_statement "(*(code *)PTR___stack_chk_fail_000bfdf8)();" (call_expression "(*(code *)PTR___stack_chk_fail_000bfdf8)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_000bfdf8)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_000bfdf8" * (cast_expression "(code *)PTR___stack_chk_fail_000bfdf8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "piVar12 = *(int **)(puVar13 + 0x42dcc);" (assignment_expression "piVar12 = *(int **)(puVar13 + 0x42dcc)" identifier = (pointer_expression "*(int **)(puVar13 + 0x42dcc)" * (cast_expression "(int **)(puVar13 + 0x42dcc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x42dcc)" ( (binary_expression "puVar13 + 0x42dcc" identifier + number_literal) ))))) ;) (expression_statement "pcStack_50 = key_descrip;" (assignment_expression "pcStack_50 = key_descrip" identifier = identifier) ;) (expression_statement "puStack_58 = puVar1;" (assignment_expression "puStack_58 = puVar1" identifier = identifier) ;) (expression_statement "pcStack_64 = (char *)*piVar12;" (assignment_expression "pcStack_64 = (char *)*piVar12" identifier = (cast_expression "(char *)*piVar12" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar12" * identifier))) ;) (expression_statement "PStack_6c.password = (void *)maybe_stdin;" (assignment_expression "PStack_6c.password = (void *)maybe_stdin" (field_expression "PStack_6c.password" identifier . field_identifier) = (cast_expression "(void *)maybe_stdin" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "PStack_6c.prompt_info = pcVar6;" (assignment_expression "PStack_6c.prompt_info = pcVar6" (field_expression "PStack_6c.prompt_info" identifier . field_identifier) = identifier) ;) (expression_statement "pEStack_5c = pEVar9;" (assignment_expression "pEStack_5c = pEVar9" identifier = identifier) ;) (expression_statement "pBStack_54 = unaff_s2;" (assignment_expression "pBStack_54 = unaff_s2" identifier = identifier) ;) (expression_statement "pcStack_4c = unaff_s4;" (assignment_expression "pcStack_4c = unaff_s4" identifier = identifier) ;) (if_statement "if (file != (char *)0x8005) {\n    pcerts = (stack_st_X509 **)(*(int *)(puVar13 + 0x420ec) + -0x514);\n    pPVar8 = pass_00;\n    (**(code **)(puVar13 + 0x438d4))(**(undefined4 **)(puVar13 + 0x420f0));\n    pEVar9 = (EVP_PKEY *)0x0;\n    format_00 = pass_00;\n    pass_00 = pPVar8;\n    goto LAB_0007d33c;\n  }" if (parenthesized_expression "(file != (char *)0x8005)" ( (binary_expression "file != (char *)0x8005" identifier != (cast_expression "(char *)0x8005" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    pcerts = (stack_st_X509 **)(*(int *)(puVar13 + 0x420ec) + -0x514);\n    pPVar8 = pass_00;\n    (**(code **)(puVar13 + 0x438d4))(**(undefined4 **)(puVar13 + 0x420f0));\n    pEVar9 = (EVP_PKEY *)0x0;\n    format_00 = pass_00;\n    pass_00 = pPVar8;\n    goto LAB_0007d33c;\n  }" { (expression_statement "pcerts = (stack_st_X509 **)(*(int *)(puVar13 + 0x420ec) + -0x514);" (assignment_expression "pcerts = (stack_st_X509 **)(*(int *)(puVar13 + 0x420ec) + -0x514)" identifier = (cast_expression "(stack_st_X509 **)(*(int *)(puVar13 + 0x420ec) + -0x514)" ( (type_descriptor "stack_st_X509 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar13 + 0x420ec) + -0x514)" ( (binary_expression "*(int *)(puVar13 + 0x420ec) + -0x514" (pointer_expression "*(int *)(puVar13 + 0x420ec)" * (cast_expression "(int *)(puVar13 + 0x420ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x420ec)" ( (binary_expression "puVar13 + 0x420ec" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "pPVar8 = pass_00;" (assignment_expression "pPVar8 = pass_00" identifier = identifier) ;) (expression_statement "(**(code **)(puVar13 + 0x438d4))(**(undefined4 **)(puVar13 + 0x420f0));" (call_expression "(**(code **)(puVar13 + 0x438d4))(**(undefined4 **)(puVar13 + 0x420f0))" (parenthesized_expression "(**(code **)(puVar13 + 0x438d4))" ( (pointer_expression "**(code **)(puVar13 + 0x438d4)" * (pointer_expression "*(code **)(puVar13 + 0x438d4)" * (cast_expression "(code **)(puVar13 + 0x438d4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x438d4)" ( (binary_expression "puVar13 + 0x438d4" identifier + number_literal) ))))) )) (argument_list "(**(undefined4 **)(puVar13 + 0x420f0))" ( (pointer_expression "**(undefined4 **)(puVar13 + 0x420f0)" * (pointer_expression "*(undefined4 **)(puVar13 + 0x420f0)" * (cast_expression "(undefined4 **)(puVar13 + 0x420f0)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x420f0)" ( (binary_expression "puVar13 + 0x420f0" identifier + number_literal) ))))) ))) ;) (expression_statement "pEVar9 = (EVP_PKEY *)0x0;" (assignment_expression "pEVar9 = (EVP_PKEY *)0x0" identifier = (cast_expression "(EVP_PKEY *)0x0" ( (type_descriptor "EVP_PKEY *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "format_00 = pass_00;" (assignment_expression "format_00 = pass_00" identifier = identifier) ;) (expression_statement "pass_00 = pPVar8;" (assignment_expression "pass_00 = pPVar8" identifier = identifier) ;) (goto_statement "goto LAB_0007d33c;" goto statement_identifier ;) })) (expression_statement "format_00 = (PW_CB_DATA *)0x8005;" (assignment_expression "format_00 = (PW_CB_DATA *)0x8005" identifier = (cast_expression "(PW_CB_DATA *)0x8005" ( (type_descriptor "PW_CB_DATA *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcerts = (stack_st_X509 **)0x72;" (assignment_expression "pcerts = (stack_st_X509 **)0x72" identifier = (cast_expression "(stack_st_X509 **)0x72" ( (type_descriptor "stack_st_X509 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (expression_statement "pBVar2 = bio_open_default(pcVar6,'r',0x8005);" (assignment_expression "pBVar2 = bio_open_default(pcVar6,'r',0x8005)" identifier = (call_expression "bio_open_default(pcVar6,'r',0x8005)" identifier (argument_list "(pcVar6,'r',0x8005)" ( identifier , (char_literal "'r'" ' character ') , number_literal )))) ;) (if_statement "if (pBVar2 == (BIO *)0x0) {\n    pEVar9 = (EVP_PKEY *)0x0;\n    goto LAB_0007d33c;\n  }" if (parenthesized_expression "(pBVar2 == (BIO *)0x0)" ( (binary_expression "pBVar2 == (BIO *)0x0" identifier == (cast_expression "(BIO *)0x0" ( (type_descriptor "BIO *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    pEVar9 = (EVP_PKEY *)0x0;\n    goto LAB_0007d33c;\n  }" { (expression_statement "pEVar9 = (EVP_PKEY *)0x0;" (assignment_expression "pEVar9 = (EVP_PKEY *)0x0" identifier = (cast_expression "(EVP_PKEY *)0x0" ( (type_descriptor "EVP_PKEY *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_0007d33c;" goto statement_identifier ;) })) (expression_statement "pass_00 = &PStack_6c;" (assignment_expression "pass_00 = &PStack_6c" identifier = (pointer_expression "&PStack_6c" & identifier)) ;) (expression_statement "format_00 = *(PW_CB_DATA **)(puVar13 + 0x42274);" (assignment_expression "format_00 = *(PW_CB_DATA **)(puVar13 + 0x42274)" identifier = (pointer_expression "*(PW_CB_DATA **)(puVar13 + 0x42274)" * (cast_expression "(PW_CB_DATA **)(puVar13 + 0x42274)" ( (type_descriptor "PW_CB_DATA **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x42274)" ( (binary_expression "puVar13 + 0x42274" identifier + number_literal) ))))) ;) (expression_statement "uVar3 = (**(code **)(puVar13 + 0x43538))(pBVar2,0);" (assignment_expression "uVar3 = (**(code **)(puVar13 + 0x43538))(pBVar2,0)" identifier = (call_expression "(**(code **)(puVar13 + 0x43538))(pBVar2,0)" (parenthesized_expression "(**(code **)(puVar13 + 0x43538))" ( (pointer_expression "**(code **)(puVar13 + 0x43538)" * (pointer_expression "*(code **)(puVar13 + 0x43538)" * (cast_expression "(code **)(puVar13 + 0x43538)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x43538)" ( (binary_expression "puVar13 + 0x43538" identifier + number_literal) ))))) )) (argument_list "(pBVar2,0)" ( identifier , number_literal )))) ;) (expression_statement "(**(code **)(puVar13 + 0x426ac))(pBVar2);" (call_expression "(**(code **)(puVar13 + 0x426ac))(pBVar2)" (parenthesized_expression "(**(code **)(puVar13 + 0x426ac))" ( (pointer_expression "**(code **)(puVar13 + 0x426ac)" * (pointer_expression "*(code **)(puVar13 + 0x426ac)" * (cast_expression "(code **)(puVar13 + 0x426ac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x426ac)" ( (binary_expression "puVar13 + 0x426ac" identifier + number_literal) ))))) )) (argument_list "(pBVar2)" ( identifier ))) ;) (if_statement "if ((__gp == 0) && (__gp = (**(code **)(puVar13 + 0x4325c))(), __gp == 0)) {\n    (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\nLAB_0007d4dc:\n    (**(code **)(puVar13 + 0x42714))(__gp,*(undefined4 *)(puVar13 + 0x425e4));\n    if (piStack_2c != (int *)0x0) goto LAB_0007d4f8;\nLAB_0007d63c:\n    __gp = 0;\n    puVar11 = *(undefined4 **)(puVar13 + 0x420f0);\n    iVar4 = *(int *)(puVar13 + 0x420ec);\n    uVar3 = *puVar11;\n  }\n  else {\n    pcVar14 = *(code **)(puVar13 + 0x4267c);\n    if (piStack_2c == (int *)0x0) {\nLAB_0007d3dc:\n      iVar10 = 0;\n      iVar4 = (*pcVar14)(uVar3);\n      if (0 < iVar4) {\n        do {\n          piVar5 = (int *)(**(code **)(puVar13 + 0x43914))(uVar3,iVar10);\n          if (*piVar5 != 0) {\n            iVar4 = (**(code **)(puVar13 + 0x42a8c))(__gp);\n            if (iVar4 != 0) {\n              *piVar5 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar14 = *(code **)(puVar13 + 0x4267c);\n          if (piVar5[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar13 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar5[1] = 0;\n            }\n            pcVar14 = *(code **)(puVar13 + 0x4267c);\n          }\n          iVar10 = iVar10 + 1;\n          iVar4 = (*pcVar14)(uVar3);\n        } while (iVar10 < iVar4);\n      }\n      iVar4 = (**(code **)(puVar13 + 0x4267c))(__gp);\n      if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\n          (**(code **)(puVar13 + 0x42714))(__gp,*(undefined4 *)(puVar13 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar13 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar14 = *(code **)(puVar13 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar13 + 0x4267c))(*piStack_2c);\n      }\n      pcerts = *(stack_st_X509 ***)(puVar13 + 0x434fc);\n      (**(code **)(puVar13 + 0x42714))(uVar3);\n      pEVar9 = (EVP_PKEY *)&DAT_00000001;\n      goto LAB_0007d33c;\n    }\n    if (*piStack_2c != 0) {\nLAB_0007d3d8:\n      pcVar14 = *(code **)(puVar13 + 0x4267c);\n      goto LAB_0007d3dc;\n    }\n    iVar4 = (**(code **)(puVar13 + 0x4325c))();\n    *piStack_2c = iVar4;\n    if (iVar4 != 0) goto LAB_0007d3d8;\n    pcVar14 = *(code **)(puVar13 + 0x42714);\nLAB_0007d5d8:\n    (*pcVar14)(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\n    (**(code **)(puVar13 + 0x42714))(__gp,*(undefined4 *)(puVar13 + 0x425e4));\nLAB_0007d4f8:\n    __gp = 0;\n    puVar11 = *(undefined4 **)(puVar13 + 0x420f0);\n    (**(code **)(puVar13 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar13 + 0x42a64));\n    uVar3 = *puVar11;\n    *piStack_2c = 0;\n    iVar4 = *(int *)(puVar13 + 0x420ec);\n  }" if (parenthesized_expression "((__gp == 0) && (__gp = (**(code **)(puVar13 + 0x4325c))(), __gp == 0))" ( (binary_expression "(__gp == 0) && (__gp = (**(code **)(puVar13 + 0x4325c))(), __gp == 0)" (parenthesized_expression "(__gp == 0)" ( (binary_expression "__gp == 0" identifier == number_literal) )) && (parenthesized_expression "(__gp = (**(code **)(puVar13 + 0x4325c))(), __gp == 0)" ( (comma_expression "__gp = (**(code **)(puVar13 + 0x4325c))(), __gp == 0" (assignment_expression "__gp = (**(code **)(puVar13 + 0x4325c))()" identifier = (call_expression "(**(code **)(puVar13 + 0x4325c))()" (parenthesized_expression "(**(code **)(puVar13 + 0x4325c))" ( (pointer_expression "**(code **)(puVar13 + 0x4325c)" * (pointer_expression "*(code **)(puVar13 + 0x4325c)" * (cast_expression "(code **)(puVar13 + 0x4325c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x4325c)" ( (binary_expression "puVar13 + 0x4325c" identifier + number_literal) ))))) )) (argument_list "()" ( )))) , (binary_expression "__gp == 0" identifier == number_literal)) ))) )) (compound_statement "{\n    (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\nLAB_0007d4dc:\n    (**(code **)(puVar13 + 0x42714))(__gp,*(undefined4 *)(puVar13 + 0x425e4));\n    if (piStack_2c != (int *)0x0) goto LAB_0007d4f8;\nLAB_0007d63c:\n    __gp = 0;\n    puVar11 = *(undefined4 **)(puVar13 + 0x420f0);\n    iVar4 = *(int *)(puVar13 + 0x420ec);\n    uVar3 = *puVar11;\n  }" { (expression_statement "(**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));" (call_expression "(**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc))" (parenthesized_expression "(**(code **)(puVar13 + 0x42714))" ( (pointer_expression "**(code **)(puVar13 + 0x42714)" * (pointer_expression "*(code **)(puVar13 + 0x42714)" * (cast_expression "(code **)(puVar13 + 0x42714)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x42714)" ( (binary_expression "puVar13 + 0x42714" identifier + number_literal) ))))) )) (argument_list "(uVar3,*(undefined4 *)(puVar13 + 0x434fc))" ( identifier , (pointer_expression "*(undefined4 *)(puVar13 + 0x434fc)" * (cast_expression "(undefined4 *)(puVar13 + 0x434fc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x434fc)" ( (binary_expression "puVar13 + 0x434fc" identifier + number_literal) )))) ))) ;) (labeled_statement "LAB_0007d4dc:\n    (**(code **)(puVar13 + 0x42714))(__gp,*(undefined4 *)(puVar13 + 0x425e4));" statement_identifier : (expression_statement "(**(code **)(puVar13 + 0x42714))(__gp,*(undefined4 *)(puVar13 + 0x425e4));" (call_expression "(**(code **)(puVar13 + 0x42714))(__gp,*(undefined4 *)(puVar13 + 0x425e4))" (parenthesized_expression "(**(code **)(puVar13 + 0x42714))" ( (pointer_expression "**(code **)(puVar13 + 0x42714)" * (pointer_expression "*(code **)(puVar13 + 0x42714)" * (cast_expression "(code **)(puVar13 + 0x42714)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x42714)" ( (binary_expression "puVar13 + 0x42714" identifier + number_literal) ))))) )) (argument_list "(__gp,*(undefined4 *)(puVar13 + 0x425e4))" ( identifier , (pointer_expression "*(undefined4 *)(puVar13 + 0x425e4)" * (cast_expression "(undefined4 *)(puVar13 + 0x425e4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x425e4)" ( (binary_expression "puVar13 + 0x425e4" identifier + number_literal) )))) ))) ;)) (if_statement "if (piStack_2c != (int *)0x0) goto LAB_0007d4f8;" if (parenthesized_expression "(piStack_2c != (int *)0x0)" ( (binary_expression "piStack_2c != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_0007d4f8;" goto statement_identifier ;)) (labeled_statement "LAB_0007d63c:\n    __gp = 0;" statement_identifier : (expression_statement "__gp = 0;" (assignment_expression "__gp = 0" identifier = number_literal) ;)) (expression_statement "puVar11 = *(undefined4 **)(puVar13 + 0x420f0);" (assignment_expression "puVar11 = *(undefined4 **)(puVar13 + 0x420f0)" identifier = (pointer_expression "*(undefined4 **)(puVar13 + 0x420f0)" * (cast_expression "(undefined4 **)(puVar13 + 0x420f0)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x420f0)" ( (binary_expression "puVar13 + 0x420f0" identifier + number_literal) ))))) ;) (expression_statement "iVar4 = *(int *)(puVar13 + 0x420ec);" (assignment_expression "iVar4 = *(int *)(puVar13 + 0x420ec)" identifier = (pointer_expression "*(int *)(puVar13 + 0x420ec)" * (cast_expression "(int *)(puVar13 + 0x420ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x420ec)" ( (binary_expression "puVar13 + 0x420ec" identifier + number_literal) ))))) ;) (expression_statement "uVar3 = *puVar11;" (assignment_expression "uVar3 = *puVar11" identifier = (pointer_expression "*puVar11" * identifier)) ;) }) (else_clause "else {\n    pcVar14 = *(code **)(puVar13 + 0x4267c);\n    if (piStack_2c == (int *)0x0) {\nLAB_0007d3dc:\n      iVar10 = 0;\n      iVar4 = (*pcVar14)(uVar3);\n      if (0 < iVar4) {\n        do {\n          piVar5 = (int *)(**(code **)(puVar13 + 0x43914))(uVar3,iVar10);\n          if (*piVar5 != 0) {\n            iVar4 = (**(code **)(puVar13 + 0x42a8c))(__gp);\n            if (iVar4 != 0) {\n              *piVar5 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar14 = *(code **)(puVar13 + 0x4267c);\n          if (piVar5[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar13 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar5[1] = 0;\n            }\n            pcVar14 = *(code **)(puVar13 + 0x4267c);\n          }\n          iVar10 = iVar10 + 1;\n          iVar4 = (*pcVar14)(uVar3);\n        } while (iVar10 < iVar4);\n      }\n      iVar4 = (**(code **)(puVar13 + 0x4267c))(__gp);\n      if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\n          (**(code **)(puVar13 + 0x42714))(__gp,*(undefined4 *)(puVar13 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar13 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar14 = *(code **)(puVar13 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar13 + 0x4267c))(*piStack_2c);\n      }\n      pcerts = *(stack_st_X509 ***)(puVar13 + 0x434fc);\n      (**(code **)(puVar13 + 0x42714))(uVar3);\n      pEVar9 = (EVP_PKEY *)&DAT_00000001;\n      goto LAB_0007d33c;\n    }\n    if (*piStack_2c != 0) {\nLAB_0007d3d8:\n      pcVar14 = *(code **)(puVar13 + 0x4267c);\n      goto LAB_0007d3dc;\n    }\n    iVar4 = (**(code **)(puVar13 + 0x4325c))();\n    *piStack_2c = iVar4;\n    if (iVar4 != 0) goto LAB_0007d3d8;\n    pcVar14 = *(code **)(puVar13 + 0x42714);\nLAB_0007d5d8:\n    (*pcVar14)(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\n    (**(code **)(puVar13 + 0x42714))(__gp,*(undefined4 *)(puVar13 + 0x425e4));\nLAB_0007d4f8:\n    __gp = 0;\n    puVar11 = *(undefined4 **)(puVar13 + 0x420f0);\n    (**(code **)(puVar13 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar13 + 0x42a64));\n    uVar3 = *puVar11;\n    *piStack_2c = 0;\n    iVar4 = *(int *)(puVar13 + 0x420ec);\n  }" else (compound_statement "{\n    pcVar14 = *(code **)(puVar13 + 0x4267c);\n    if (piStack_2c == (int *)0x0) {\nLAB_0007d3dc:\n      iVar10 = 0;\n      iVar4 = (*pcVar14)(uVar3);\n      if (0 < iVar4) {\n        do {\n          piVar5 = (int *)(**(code **)(puVar13 + 0x43914))(uVar3,iVar10);\n          if (*piVar5 != 0) {\n            iVar4 = (**(code **)(puVar13 + 0x42a8c))(__gp);\n            if (iVar4 != 0) {\n              *piVar5 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar14 = *(code **)(puVar13 + 0x4267c);\n          if (piVar5[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar13 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar5[1] = 0;\n            }\n            pcVar14 = *(code **)(puVar13 + 0x4267c);\n          }\n          iVar10 = iVar10 + 1;\n          iVar4 = (*pcVar14)(uVar3);\n        } while (iVar10 < iVar4);\n      }\n      iVar4 = (**(code **)(puVar13 + 0x4267c))(__gp);\n      if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\n          (**(code **)(puVar13 + 0x42714))(__gp,*(undefined4 *)(puVar13 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar13 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar14 = *(code **)(puVar13 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar13 + 0x4267c))(*piStack_2c);\n      }\n      pcerts = *(stack_st_X509 ***)(puVar13 + 0x434fc);\n      (**(code **)(puVar13 + 0x42714))(uVar3);\n      pEVar9 = (EVP_PKEY *)&DAT_00000001;\n      goto LAB_0007d33c;\n    }\n    if (*piStack_2c != 0) {\nLAB_0007d3d8:\n      pcVar14 = *(code **)(puVar13 + 0x4267c);\n      goto LAB_0007d3dc;\n    }\n    iVar4 = (**(code **)(puVar13 + 0x4325c))();\n    *piStack_2c = iVar4;\n    if (iVar4 != 0) goto LAB_0007d3d8;\n    pcVar14 = *(code **)(puVar13 + 0x42714);\nLAB_0007d5d8:\n    (*pcVar14)(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\n    (**(code **)(puVar13 + 0x42714))(__gp,*(undefined4 *)(puVar13 + 0x425e4));\nLAB_0007d4f8:\n    __gp = 0;\n    puVar11 = *(undefined4 **)(puVar13 + 0x420f0);\n    (**(code **)(puVar13 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar13 + 0x42a64));\n    uVar3 = *puVar11;\n    *piStack_2c = 0;\n    iVar4 = *(int *)(puVar13 + 0x420ec);\n  }" { (expression_statement "pcVar14 = *(code **)(puVar13 + 0x4267c);" (assignment_expression "pcVar14 = *(code **)(puVar13 + 0x4267c)" identifier = (pointer_expression "*(code **)(puVar13 + 0x4267c)" * (cast_expression "(code **)(puVar13 + 0x4267c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x4267c)" ( (binary_expression "puVar13 + 0x4267c" identifier + number_literal) ))))) ;) (if_statement "if (piStack_2c == (int *)0x0) {\nLAB_0007d3dc:\n      iVar10 = 0;\n      iVar4 = (*pcVar14)(uVar3);\n      if (0 < iVar4) {\n        do {\n          piVar5 = (int *)(**(code **)(puVar13 + 0x43914))(uVar3,iVar10);\n          if (*piVar5 != 0) {\n            iVar4 = (**(code **)(puVar13 + 0x42a8c))(__gp);\n            if (iVar4 != 0) {\n              *piVar5 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar14 = *(code **)(puVar13 + 0x4267c);\n          if (piVar5[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar13 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar5[1] = 0;\n            }\n            pcVar14 = *(code **)(puVar13 + 0x4267c);\n          }\n          iVar10 = iVar10 + 1;\n          iVar4 = (*pcVar14)(uVar3);\n        } while (iVar10 < iVar4);\n      }\n      iVar4 = (**(code **)(puVar13 + 0x4267c))(__gp);\n      if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\n          (**(code **)(puVar13 + 0x42714))(__gp,*(undefined4 *)(puVar13 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar13 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar14 = *(code **)(puVar13 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar13 + 0x4267c))(*piStack_2c);\n      }\n      pcerts = *(stack_st_X509 ***)(puVar13 + 0x434fc);\n      (**(code **)(puVar13 + 0x42714))(uVar3);\n      pEVar9 = (EVP_PKEY *)&DAT_00000001;\n      goto LAB_0007d33c;\n    }" if (parenthesized_expression "(piStack_2c == (int *)0x0)" ( (binary_expression "piStack_2c == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_0007d3dc:\n      iVar10 = 0;\n      iVar4 = (*pcVar14)(uVar3);\n      if (0 < iVar4) {\n        do {\n          piVar5 = (int *)(**(code **)(puVar13 + 0x43914))(uVar3,iVar10);\n          if (*piVar5 != 0) {\n            iVar4 = (**(code **)(puVar13 + 0x42a8c))(__gp);\n            if (iVar4 != 0) {\n              *piVar5 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar14 = *(code **)(puVar13 + 0x4267c);\n          if (piVar5[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar13 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar5[1] = 0;\n            }\n            pcVar14 = *(code **)(puVar13 + 0x4267c);\n          }\n          iVar10 = iVar10 + 1;\n          iVar4 = (*pcVar14)(uVar3);\n        } while (iVar10 < iVar4);\n      }\n      iVar4 = (**(code **)(puVar13 + 0x4267c))(__gp);\n      if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\n          (**(code **)(puVar13 + 0x42714))(__gp,*(undefined4 *)(puVar13 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar13 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar14 = *(code **)(puVar13 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar13 + 0x4267c))(*piStack_2c);\n      }\n      pcerts = *(stack_st_X509 ***)(puVar13 + 0x434fc);\n      (**(code **)(puVar13 + 0x42714))(uVar3);\n      pEVar9 = (EVP_PKEY *)&DAT_00000001;\n      goto LAB_0007d33c;\n    }" { (labeled_statement "LAB_0007d3dc:\n      iVar10 = 0;" statement_identifier : (expression_statement "iVar10 = 0;" (assignment_expression "iVar10 = 0" identifier = number_literal) ;)) (expression_statement "iVar4 = (*pcVar14)(uVar3);" (assignment_expression "iVar4 = (*pcVar14)(uVar3)" identifier = (call_expression "(*pcVar14)(uVar3)" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "(uVar3)" ( identifier )))) ;) (if_statement "if (0 < iVar4) {\n        do {\n          piVar5 = (int *)(**(code **)(puVar13 + 0x43914))(uVar3,iVar10);\n          if (*piVar5 != 0) {\n            iVar4 = (**(code **)(puVar13 + 0x42a8c))(__gp);\n            if (iVar4 != 0) {\n              *piVar5 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar14 = *(code **)(puVar13 + 0x4267c);\n          if (piVar5[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar13 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar5[1] = 0;\n            }\n            pcVar14 = *(code **)(puVar13 + 0x4267c);\n          }\n          iVar10 = iVar10 + 1;\n          iVar4 = (*pcVar14)(uVar3);\n        } while (iVar10 < iVar4);\n      }" if (parenthesized_expression "(0 < iVar4)" ( (binary_expression "0 < iVar4" number_literal < identifier) )) (compound_statement "{\n        do {\n          piVar5 = (int *)(**(code **)(puVar13 + 0x43914))(uVar3,iVar10);\n          if (*piVar5 != 0) {\n            iVar4 = (**(code **)(puVar13 + 0x42a8c))(__gp);\n            if (iVar4 != 0) {\n              *piVar5 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar14 = *(code **)(puVar13 + 0x4267c);\n          if (piVar5[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar13 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar5[1] = 0;\n            }\n            pcVar14 = *(code **)(puVar13 + 0x4267c);\n          }\n          iVar10 = iVar10 + 1;\n          iVar4 = (*pcVar14)(uVar3);\n        } while (iVar10 < iVar4);\n      }" { (do_statement "do {\n          piVar5 = (int *)(**(code **)(puVar13 + 0x43914))(uVar3,iVar10);\n          if (*piVar5 != 0) {\n            iVar4 = (**(code **)(puVar13 + 0x42a8c))(__gp);\n            if (iVar4 != 0) {\n              *piVar5 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar14 = *(code **)(puVar13 + 0x4267c);\n          if (piVar5[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar13 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar5[1] = 0;\n            }\n            pcVar14 = *(code **)(puVar13 + 0x4267c);\n          }\n          iVar10 = iVar10 + 1;\n          iVar4 = (*pcVar14)(uVar3);\n        } while (iVar10 < iVar4);" do (compound_statement "{\n          piVar5 = (int *)(**(code **)(puVar13 + 0x43914))(uVar3,iVar10);\n          if (*piVar5 != 0) {\n            iVar4 = (**(code **)(puVar13 + 0x42a8c))(__gp);\n            if (iVar4 != 0) {\n              *piVar5 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar14 = *(code **)(puVar13 + 0x4267c);\n          if (piVar5[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar13 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar5[1] = 0;\n            }\n            pcVar14 = *(code **)(puVar13 + 0x4267c);\n          }\n          iVar10 = iVar10 + 1;\n          iVar4 = (*pcVar14)(uVar3);\n        }" { (expression_statement "piVar5 = (int *)(**(code **)(puVar13 + 0x43914))(uVar3,iVar10);" (assignment_expression "piVar5 = (int *)(**(code **)(puVar13 + 0x43914))(uVar3,iVar10)" identifier = (cast_expression "(int *)(**(code **)(puVar13 + 0x43914))(uVar3,iVar10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar13 + 0x43914))(uVar3,iVar10)" (parenthesized_expression "(**(code **)(puVar13 + 0x43914))" ( (pointer_expression "**(code **)(puVar13 + 0x43914)" * (pointer_expression "*(code **)(puVar13 + 0x43914)" * (cast_expression "(code **)(puVar13 + 0x43914)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x43914)" ( (binary_expression "puVar13 + 0x43914" identifier + number_literal) ))))) )) (argument_list "(uVar3,iVar10)" ( identifier , identifier ))))) ;) (if_statement "if (*piVar5 != 0) {\n            iVar4 = (**(code **)(puVar13 + 0x42a8c))(__gp);\n            if (iVar4 != 0) {\n              *piVar5 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\n            goto LAB_0007d4dc;\n          }" if (parenthesized_expression "(*piVar5 != 0)" ( (binary_expression "*piVar5 != 0" (pointer_expression "*piVar5" * identifier) != number_literal) )) (compound_statement "{\n            iVar4 = (**(code **)(puVar13 + 0x42a8c))(__gp);\n            if (iVar4 != 0) {\n              *piVar5 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\n            goto LAB_0007d4dc;\n          }" { (expression_statement "iVar4 = (**(code **)(puVar13 + 0x42a8c))(__gp);" (assignment_expression "iVar4 = (**(code **)(puVar13 + 0x42a8c))(__gp)" identifier = (call_expression "(**(code **)(puVar13 + 0x42a8c))(__gp)" (parenthesized_expression "(**(code **)(puVar13 + 0x42a8c))" ( (pointer_expression "**(code **)(puVar13 + 0x42a8c)" * (pointer_expression "*(code **)(puVar13 + 0x42a8c)" * (cast_expression "(code **)(puVar13 + 0x42a8c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x42a8c)" ( (binary_expression "puVar13 + 0x42a8c" identifier + number_literal) ))))) )) (argument_list "(__gp)" ( identifier )))) ;) (if_statement "if (iVar4 != 0) {\n              *piVar5 = 0;\n              goto LAB_0007d430;\n            }" if (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) (compound_statement "{\n              *piVar5 = 0;\n              goto LAB_0007d430;\n            }" { (expression_statement "*piVar5 = 0;" (assignment_expression "*piVar5 = 0" (pointer_expression "*piVar5" * identifier) = number_literal) ;) (goto_statement "goto LAB_0007d430;" goto statement_identifier ;) })) (labeled_statement "LAB_0007d4c4:\n            (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));" statement_identifier : (expression_statement "(**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));" (call_expression "(**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc))" (parenthesized_expression "(**(code **)(puVar13 + 0x42714))" ( (pointer_expression "**(code **)(puVar13 + 0x42714)" * (pointer_expression "*(code **)(puVar13 + 0x42714)" * (cast_expression "(code **)(puVar13 + 0x42714)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x42714)" ( (binary_expression "puVar13 + 0x42714" identifier + number_literal) ))))) )) (argument_list "(uVar3,*(undefined4 *)(puVar13 + 0x434fc))" ( identifier , (pointer_expression "*(undefined4 *)(puVar13 + 0x434fc)" * (cast_expression "(undefined4 *)(puVar13 + 0x434fc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x434fc)" ( (binary_expression "puVar13 + 0x434fc" identifier + number_literal) )))) ))) ;)) (goto_statement "goto LAB_0007d4dc;" goto statement_identifier ;) })) (labeled_statement "LAB_0007d430:\n          pcVar14 = *(code **)(puVar13 + 0x4267c);" statement_identifier : (expression_statement "pcVar14 = *(code **)(puVar13 + 0x4267c);" (assignment_expression "pcVar14 = *(code **)(puVar13 + 0x4267c)" identifier = (pointer_expression "*(code **)(puVar13 + 0x4267c)" * (cast_expression "(code **)(puVar13 + 0x4267c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x4267c)" ( (binary_expression "puVar13 + 0x4267c" identifier + number_literal) ))))) ;)) (if_statement "if (piVar5[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar13 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar5[1] = 0;\n            }\n            pcVar14 = *(code **)(puVar13 + 0x4267c);\n          }" if (parenthesized_expression "(piVar5[1] != 0)" ( (binary_expression "piVar5[1] != 0" (subscript_expression "piVar5[1]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar13 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar5[1] = 0;\n            }\n            pcVar14 = *(code **)(puVar13 + 0x4267c);\n          }" { (if_statement "if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar13 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar5[1] = 0;\n            }" if (parenthesized_expression "(piStack_2c != (int *)0x0)" ( (binary_expression "piStack_2c != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              iVar4 = (**(code **)(puVar13 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar5[1] = 0;\n            }" { (expression_statement "iVar4 = (**(code **)(puVar13 + 0x42a8c))(*piStack_2c);" (assignment_expression "iVar4 = (**(code **)(puVar13 + 0x42a8c))(*piStack_2c)" identifier = (call_expression "(**(code **)(puVar13 + 0x42a8c))(*piStack_2c)" (parenthesized_expression "(**(code **)(puVar13 + 0x42a8c))" ( (pointer_expression "**(code **)(puVar13 + 0x42a8c)" * (pointer_expression "*(code **)(puVar13 + 0x42a8c)" * (cast_expression "(code **)(puVar13 + 0x42a8c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x42a8c)" ( (binary_expression "puVar13 + 0x42a8c" identifier + number_literal) ))))) )) (argument_list "(*piStack_2c)" ( (pointer_expression "*piStack_2c" * identifier) )))) ;) (if_statement "if (iVar4 == 0) goto LAB_0007d4c4;" if (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0007d4c4;" goto statement_identifier ;)) (expression_statement "piVar5[1] = 0;" (assignment_expression "piVar5[1] = 0" (subscript_expression "piVar5[1]" identifier [ number_literal ]) = number_literal) ;) })) (expression_statement "pcVar14 = *(code **)(puVar13 + 0x4267c);" (assignment_expression "pcVar14 = *(code **)(puVar13 + 0x4267c)" identifier = (pointer_expression "*(code **)(puVar13 + 0x4267c)" * (cast_expression "(code **)(puVar13 + 0x4267c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x4267c)" ( (binary_expression "puVar13 + 0x4267c" identifier + number_literal) ))))) ;) })) (expression_statement "iVar10 = iVar10 + 1;" (assignment_expression "iVar10 = iVar10 + 1" identifier = (binary_expression "iVar10 + 1" identifier + number_literal)) ;) (expression_statement "iVar4 = (*pcVar14)(uVar3);" (assignment_expression "iVar4 = (*pcVar14)(uVar3)" identifier = (call_expression "(*pcVar14)(uVar3)" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "(uVar3)" ( identifier )))) ;) }) while (parenthesized_expression "(iVar10 < iVar4)" ( (binary_expression "iVar10 < iVar4" identifier < identifier) )) ;) })) (expression_statement "iVar4 = (**(code **)(puVar13 + 0x4267c))(__gp);" (assignment_expression "iVar4 = (**(code **)(puVar13 + 0x4267c))(__gp)" identifier = (call_expression "(**(code **)(puVar13 + 0x4267c))(__gp)" (parenthesized_expression "(**(code **)(puVar13 + 0x4267c))" ( (pointer_expression "**(code **)(puVar13 + 0x4267c)" * (pointer_expression "*(code **)(puVar13 + 0x4267c)" * (cast_expression "(code **)(puVar13 + 0x4267c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x4267c)" ( (binary_expression "puVar13 + 0x4267c" identifier + number_literal) ))))) )) (argument_list "(__gp)" ( identifier )))) ;) (if_statement "if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\n          (**(code **)(puVar13 + 0x42714))(__gp,*(undefined4 *)(puVar13 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar13 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar14 = *(code **)(puVar13 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar13 + 0x4267c))(*piStack_2c);\n      }" if (parenthesized_expression "(iVar4 < 1)" ( (binary_expression "iVar4 < 1" identifier < number_literal) )) (compound_statement "{\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\n          (**(code **)(puVar13 + 0x42714))(__gp,*(undefined4 *)(puVar13 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar13 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar14 = *(code **)(puVar13 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }" { (if_statement "if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\n          (**(code **)(puVar13 + 0x42714))(__gp,*(undefined4 *)(puVar13 + 0x425e4));\n          goto LAB_0007d63c;\n        }" if (parenthesized_expression "(piStack_2c == (int *)0x0)" ( (binary_expression "piStack_2c == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          (**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));\n          (**(code **)(puVar13 + 0x42714))(__gp,*(undefined4 *)(puVar13 + 0x425e4));\n          goto LAB_0007d63c;\n        }" { (expression_statement "(**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc));" (call_expression "(**(code **)(puVar13 + 0x42714))(uVar3,*(undefined4 *)(puVar13 + 0x434fc))" (parenthesized_expression "(**(code **)(puVar13 + 0x42714))" ( (pointer_expression "**(code **)(puVar13 + 0x42714)" * (pointer_expression "*(code **)(puVar13 + 0x42714)" * (cast_expression "(code **)(puVar13 + 0x42714)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x42714)" ( (binary_expression "puVar13 + 0x42714" identifier + number_literal) ))))) )) (argument_list "(uVar3,*(undefined4 *)(puVar13 + 0x434fc))" ( identifier , (pointer_expression "*(undefined4 *)(puVar13 + 0x434fc)" * (cast_expression "(undefined4 *)(puVar13 + 0x434fc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x434fc)" ( (binary_expression "puVar13 + 0x434fc" identifier + number_literal) )))) ))) ;) (expression_statement "(**(code **)(puVar13 + 0x42714))(__gp,*(undefined4 *)(puVar13 + 0x425e4));" (call_expression "(**(code **)(puVar13 + 0x42714))(__gp,*(undefined4 *)(puVar13 + 0x425e4))" (parenthesized_expression "(**(code **)(puVar13 + 0x42714))" ( (pointer_expression "**(code **)(puVar13 + 0x42714)" * (pointer_expression "*(code **)(puVar13 + 0x42714)" * (cast_expression "(code **)(puVar13 + 0x42714)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x42714)" ( (binary_expression "puVar13 + 0x42714" identifier + number_literal) ))))) )) (argument_list "(__gp,*(undefined4 *)(puVar13 + 0x425e4))" ( identifier , (pointer_expression "*(undefined4 *)(puVar13 + 0x425e4)" * (cast_expression "(undefined4 *)(puVar13 + 0x425e4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x425e4)" ( (binary_expression "puVar13 + 0x425e4" identifier + number_literal) )))) ))) ;) (goto_statement "goto LAB_0007d63c;" goto statement_identifier ;) })) (expression_statement "iVar4 = (**(code **)(puVar13 + 0x4267c))(*piStack_2c);" (assignment_expression "iVar4 = (**(code **)(puVar13 + 0x4267c))(*piStack_2c)" identifier = (call_expression "(**(code **)(puVar13 + 0x4267c))(*piStack_2c)" (parenthesized_expression "(**(code **)(puVar13 + 0x4267c))" ( (pointer_expression "**(code **)(puVar13 + 0x4267c)" * (pointer_expression "*(code **)(puVar13 + 0x4267c)" * (cast_expression "(code **)(puVar13 + 0x4267c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x4267c)" ( (binary_expression "puVar13 + 0x4267c" identifier + number_literal) ))))) )) (argument_list "(*piStack_2c)" ( (pointer_expression "*piStack_2c" * identifier) )))) ;) (if_statement "if (iVar4 < 1) {\n          pcVar14 = *(code **)(puVar13 + 0x42714);\n          goto LAB_0007d5d8;\n        }" if (parenthesized_expression "(iVar4 < 1)" ( (binary_expression "iVar4 < 1" identifier < number_literal) )) (compound_statement "{\n          pcVar14 = *(code **)(puVar13 + 0x42714);\n          goto LAB_0007d5d8;\n        }" { (expression_statement "pcVar14 = *(code **)(puVar13 + 0x42714);" (assignment_expression "pcVar14 = *(code **)(puVar13 + 0x42714)" identifier = (pointer_expression "*(code **)(puVar13 + 0x42714)" * (cast_expression "(code **)(puVar13 + 0x42714)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x42714)" ( (binary_expression "puVar13 + 0x42714" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_0007d5d8;" goto statement_identifier ;) })) }) (else_clause "else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar13 + 0x4267c))(*piStack_2c);\n      }" else (if_statement "if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar13 + 0x4267c))(*piStack_2c);\n      }" if (parenthesized_expression "(piStack_2c != (int *)0x0)" ( (binary_expression "piStack_2c != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        (**(code **)(puVar13 + 0x4267c))(*piStack_2c);\n      }" { (expression_statement "(**(code **)(puVar13 + 0x4267c))(*piStack_2c);" (call_expression "(**(code **)(puVar13 + 0x4267c))(*piStack_2c)" (parenthesized_expression "(**(code **)(puVar13 + 0x4267c))" ( (pointer_expression "**(code **)(puVar13 + 0x4267c)" * (pointer_expression "*(code **)(puVar13 + 0x4267c)" * (cast_expression "(code **)(puVar13 + 0x4267c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x4267c)" ( (binary_expression "puVar13 + 0x4267c" identifier + number_literal) ))))) )) (argument_list "(*piStack_2c)" ( (pointer_expression "*piStack_2c" * identifier) ))) ;) })))) (expression_statement "pcerts = *(stack_st_X509 ***)(puVar13 + 0x434fc);" (assignment_expression "pcerts = *(stack_st_X509 ***)(puVar13 + 0x434fc)" identifier = (pointer_expression "*(stack_st_X509 ***)(puVar13 + 0x434fc)" * (cast_expression "(stack_st_X509 ***)(puVar13 + 0x434fc)" ( (type_descriptor "stack_st_X509 ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar13 + 0x434fc)" ( (binary_expression "puVar13 + 0x434fc" identifier + number_literal) ))))) ;) (expression_statement "(**(code **)(puVar13 + 0x42714))(uVar3);" (call_expression "(**(code **)(puVar13 + 0x42714))(uVar3)" (parenthesized_expression "(**(code **)(puVar13 + 0x42714))" ( (pointer_expression "**(code **)(puVar13 + 0x42714)" * (pointer_expression "*(code **)(puVar13 + 0x42714)" * (cast_expression "(code **)(puVar13 + 0x42714)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x42714)" ( (binary_expression "puVar13 + 0x42714" identifier + number_literal) ))))) )) (argument_list "(uVar3)" ( identifier ))) ;) (expression_statement "pEVar9 = (EVP_PKEY *)&DAT_00000001;" (assignment_expression "pEVar9 = (EVP_PKEY *)&DAT_00000001" identifier = (cast_expression "(EVP_PKEY *)&DAT_00000001" ( (type_descriptor "EVP_PKEY *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000001" & identifier))) ;) (goto_statement "goto LAB_0007d33c;" goto statement_identifier ;) })) (if_statement "if (*piStack_2c != 0) {\nLAB_0007d3d8:\n      pcVar14 = *(code **)(puVar13 + 0x4267c);\n      goto LAB_0007d3dc;\n    }" if (parenthesized_expression "(*piStack_2c != 0)" ( (binary_expression "*piStack_2c != 0" (pointer_expression "*piStack_2c" * identifier) != number_literal) )) (compound_statement "{\nLAB_0007d3d8:\n      pcVar14 = *(code **)(puVar13 + 0x4267c);\n      goto LAB_0007d3dc;\n    }" { (labeled_statement "LAB_0007d3d8:\n      pcVar14 = *(code **)(puVar13 + 0x4267c);" statement_identifier : (expression_statement "pcVar14 = *(code **)(puVar13 + 0x4267c);" (assignment_expression "pcVar14 = *(code **)(puVar13 + 0x4267c)" identifier = (pointer_expression "*(code **)(puVar13 + 0x4267c)" * (cast_expression "(code **)(puVar13 + 0x4267c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x4267c)" ( (binary_expression "puVar13 + 0x4267c" identifier + number_literal) ))))) ;)) (goto_statement "goto LAB_0007d3dc;" goto statement_identifier ;) })) (expression_statement "iVar4 = (**(code **)(puVar13 + 0x4325c))();" (assignment_expression "iVar4 = (**(code **)(puVar13 + 0x4325c))()" identifier = (call_expression "(**(code **)(puVar13 + 0x4325c))()" (parenthesized_expression "(**(code **)(puVar13 + 0x4325c))" ( (pointer_expression "**(code **)(puVar13 + 0x4325c)" * (pointer_expression "*(code **)(puVar13 + 0x4325c)" * (cast_expression "(code **)(puVar13 + 0x4325c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x4325c)" ( (binary_expression "puVar13 + 0x4325c" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (expression_statement "*piStack_2c = iVar4;" (assignment_expression "*piStack_2c = iVar4" (pointer_expression "*piStack_2c" * identifier) = identifier) ;) (if_statement "if (iVar4 != 0) goto LAB_0007d3d8;" if (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) (goto_statement "goto LAB_0007d3d8;" goto statement_identifier ;)) (expression_statement "pcVar14 = *(code **)(puVar13 + 0x42714);" (assignment_expression "pcVar14 = *(code **)(puVar13 + 0x42714)" identifier = (pointer_expression "*(code **)(puVar13 + 0x42714)" * (cast_expression "(code **)(puVar13 + 0x42714)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x42714)" ( (binary_expression "puVar13 + 0x42714" identifier + number_literal) ))))) ;) (labeled_statement "LAB_0007d5d8:\n    (*pcVar14)(uVar3,*(undefined4 *)(puVar13 + 0x434fc));" statement_identifier : (expression_statement "(*pcVar14)(uVar3,*(undefined4 *)(puVar13 + 0x434fc));" (call_expression "(*pcVar14)(uVar3,*(undefined4 *)(puVar13 + 0x434fc))" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "(uVar3,*(undefined4 *)(puVar13 + 0x434fc))" ( identifier , (pointer_expression "*(undefined4 *)(puVar13 + 0x434fc)" * (cast_expression "(undefined4 *)(puVar13 + 0x434fc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x434fc)" ( (binary_expression "puVar13 + 0x434fc" identifier + number_literal) )))) ))) ;)) (expression_statement "(**(code **)(puVar13 + 0x42714))(__gp,*(undefined4 *)(puVar13 + 0x425e4));" (call_expression "(**(code **)(puVar13 + 0x42714))(__gp,*(undefined4 *)(puVar13 + 0x425e4))" (parenthesized_expression "(**(code **)(puVar13 + 0x42714))" ( (pointer_expression "**(code **)(puVar13 + 0x42714)" * (pointer_expression "*(code **)(puVar13 + 0x42714)" * (cast_expression "(code **)(puVar13 + 0x42714)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x42714)" ( (binary_expression "puVar13 + 0x42714" identifier + number_literal) ))))) )) (argument_list "(__gp,*(undefined4 *)(puVar13 + 0x425e4))" ( identifier , (pointer_expression "*(undefined4 *)(puVar13 + 0x425e4)" * (cast_expression "(undefined4 *)(puVar13 + 0x425e4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x425e4)" ( (binary_expression "puVar13 + 0x425e4" identifier + number_literal) )))) ))) ;) (labeled_statement "LAB_0007d4f8:\n    __gp = 0;" statement_identifier : (expression_statement "__gp = 0;" (assignment_expression "__gp = 0" identifier = number_literal) ;)) (expression_statement "puVar11 = *(undefined4 **)(puVar13 + 0x420f0);" (assignment_expression "puVar11 = *(undefined4 **)(puVar13 + 0x420f0)" identifier = (pointer_expression "*(undefined4 **)(puVar13 + 0x420f0)" * (cast_expression "(undefined4 **)(puVar13 + 0x420f0)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x420f0)" ( (binary_expression "puVar13 + 0x420f0" identifier + number_literal) ))))) ;) (expression_statement "(**(code **)(puVar13 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar13 + 0x42a64));" (call_expression "(**(code **)(puVar13 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar13 + 0x42a64))" (parenthesized_expression "(**(code **)(puVar13 + 0x42714))" ( (pointer_expression "**(code **)(puVar13 + 0x42714)" * (pointer_expression "*(code **)(puVar13 + 0x42714)" * (cast_expression "(code **)(puVar13 + 0x42714)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x42714)" ( (binary_expression "puVar13 + 0x42714" identifier + number_literal) ))))) )) (argument_list "(*piStack_2c,*(undefined4 *)(puVar13 + 0x42a64))" ( (pointer_expression "*piStack_2c" * identifier) , (pointer_expression "*(undefined4 *)(puVar13 + 0x42a64)" * (cast_expression "(undefined4 *)(puVar13 + 0x42a64)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x42a64)" ( (binary_expression "puVar13 + 0x42a64" identifier + number_literal) )))) ))) ;) (expression_statement "uVar3 = *puVar11;" (assignment_expression "uVar3 = *puVar11" identifier = (pointer_expression "*puVar11" * identifier)) ;) (expression_statement "*piStack_2c = 0;" (assignment_expression "*piStack_2c = 0" (pointer_expression "*piStack_2c" * identifier) = number_literal) ;) (expression_statement "iVar4 = *(int *)(puVar13 + 0x420ec);" (assignment_expression "iVar4 = *(int *)(puVar13 + 0x420ec)" identifier = (pointer_expression "*(int *)(puVar13 + 0x420ec)" * (cast_expression "(int *)(puVar13 + 0x420ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x420ec)" ( (binary_expression "puVar13 + 0x420ec" identifier + number_literal) ))))) ;) }))) (expression_statement "format_00 = (PW_CB_DATA *)(iVar4 + -0x1db4);" (assignment_expression "format_00 = (PW_CB_DATA *)(iVar4 + -0x1db4)" identifier = (cast_expression "(PW_CB_DATA *)(iVar4 + -0x1db4)" ( (type_descriptor "PW_CB_DATA *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + -0x1db4)" ( (binary_expression "iVar4 + -0x1db4" identifier + number_literal) )))) ;) (expression_statement "pcerts = (stack_st_X509 **)(*(int *)(puVar13 + 0x420ec) + -0x428);" (assignment_expression "pcerts = (stack_st_X509 **)(*(int *)(puVar13 + 0x420ec) + -0x428)" identifier = (cast_expression "(stack_st_X509 **)(*(int *)(puVar13 + 0x420ec) + -0x428)" ( (type_descriptor "stack_st_X509 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar13 + 0x420ec) + -0x428)" ( (binary_expression "*(int *)(puVar13 + 0x420ec) + -0x428" (pointer_expression "*(int *)(puVar13 + 0x420ec)" * (cast_expression "(int *)(puVar13 + 0x420ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x420ec)" ( (binary_expression "puVar13 + 0x420ec" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(**(code **)(puVar13 + 0x438d4))(uVar3);" (call_expression "(**(code **)(puVar13 + 0x438d4))(uVar3)" (parenthesized_expression "(**(code **)(puVar13 + 0x438d4))" ( (pointer_expression "**(code **)(puVar13 + 0x438d4)" * (pointer_expression "*(code **)(puVar13 + 0x438d4)" * (cast_expression "(code **)(puVar13 + 0x438d4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x438d4)" ( (binary_expression "puVar13 + 0x438d4" identifier + number_literal) ))))) )) (argument_list "(uVar3)" ( identifier ))) ;) (expression_statement "(**(code **)(puVar13 + 0x42484))(*puVar11);" (call_expression "(**(code **)(puVar13 + 0x42484))(*puVar11)" (parenthesized_expression "(**(code **)(puVar13 + 0x42484))" ( (pointer_expression "**(code **)(puVar13 + 0x42484)" * (pointer_expression "*(code **)(puVar13 + 0x42484)" * (cast_expression "(code **)(puVar13 + 0x42484)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x42484)" ( (binary_expression "puVar13 + 0x42484" identifier + number_literal) ))))) )) (argument_list "(*puVar11)" ( (pointer_expression "*puVar11" * identifier) ))) ;) (expression_statement "pEVar9 = (EVP_PKEY *)0x0;" (assignment_expression "pEVar9 = (EVP_PKEY *)0x0" identifier = (cast_expression "(EVP_PKEY *)0x0" ( (type_descriptor "EVP_PKEY *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_0007d33c:\n  if (pcStack_64 != (char *)*piVar12) {\n    pcVar6 = pcStack_64;\n    (**(code **)(puVar13 + 0x42b38))();\n    pEVar9 = (EVP_PKEY *)\n             load_certs_crls(pcVar6,(int)format_00,(char *)pass_00,puVar13 + 0x4a0a0,pcerts,\n                             (stack_st_X509_CRL **)0x0);\n    return pEVar9;\n  }" statement_identifier : (if_statement "if (pcStack_64 != (char *)*piVar12) {\n    pcVar6 = pcStack_64;\n    (**(code **)(puVar13 + 0x42b38))();\n    pEVar9 = (EVP_PKEY *)\n             load_certs_crls(pcVar6,(int)format_00,(char *)pass_00,puVar13 + 0x4a0a0,pcerts,\n                             (stack_st_X509_CRL **)0x0);\n    return pEVar9;\n  }" if (parenthesized_expression "(pcStack_64 != (char *)*piVar12)" ( (binary_expression "pcStack_64 != (char *)*piVar12" identifier != (cast_expression "(char *)*piVar12" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar12" * identifier))) )) (compound_statement "{\n    pcVar6 = pcStack_64;\n    (**(code **)(puVar13 + 0x42b38))();\n    pEVar9 = (EVP_PKEY *)\n             load_certs_crls(pcVar6,(int)format_00,(char *)pass_00,puVar13 + 0x4a0a0,pcerts,\n                             (stack_st_X509_CRL **)0x0);\n    return pEVar9;\n  }" { (expression_statement "pcVar6 = pcStack_64;" (assignment_expression "pcVar6 = pcStack_64" identifier = identifier) ;) (expression_statement "(**(code **)(puVar13 + 0x42b38))();" (call_expression "(**(code **)(puVar13 + 0x42b38))()" (parenthesized_expression "(**(code **)(puVar13 + 0x42b38))" ( (pointer_expression "**(code **)(puVar13 + 0x42b38)" * (pointer_expression "*(code **)(puVar13 + 0x42b38)" * (cast_expression "(code **)(puVar13 + 0x42b38)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x42b38)" ( (binary_expression "puVar13 + 0x42b38" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "pEVar9 = (EVP_PKEY *)\n             load_certs_crls(pcVar6,(int)format_00,(char *)pass_00,puVar13 + 0x4a0a0,pcerts,\n                             (stack_st_X509_CRL **)0x0);" (assignment_expression "pEVar9 = (EVP_PKEY *)\n             load_certs_crls(pcVar6,(int)format_00,(char *)pass_00,puVar13 + 0x4a0a0,pcerts,\n                             (stack_st_X509_CRL **)0x0)" identifier = (cast_expression "(EVP_PKEY *)\n             load_certs_crls(pcVar6,(int)format_00,(char *)pass_00,puVar13 + 0x4a0a0,pcerts,\n                             (stack_st_X509_CRL **)0x0)" ( (type_descriptor "EVP_PKEY *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "load_certs_crls(pcVar6,(int)format_00,(char *)pass_00,puVar13 + 0x4a0a0,pcerts,\n                             (stack_st_X509_CRL **)0x0)" identifier (argument_list "(pcVar6,(int)format_00,(char *)pass_00,puVar13 + 0x4a0a0,pcerts,\n                             (stack_st_X509_CRL **)0x0)" ( identifier , (cast_expression "(int)format_00" ( (type_descriptor "int" primitive_type) ) identifier) , (cast_expression "(char *)pass_00" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (binary_expression "puVar13 + 0x4a0a0" identifier + number_literal) , identifier , (cast_expression "(stack_st_X509_CRL **)0x0" ( (type_descriptor "stack_st_X509_CRL **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal) ))))) ;) (return_statement "return pEVar9;" return identifier ;) }))) (return_statement "return pEVar9;" return identifier ;) })))
(translation_unit "int load_pubkey(undefined *param_1,undefined *param_2,undefined *param_3,undefined4 *****param_4,\n               int param_5,undefined *param_6)\n\n{\n  undefined *puVar1;\n  undefined4 uVar2;\n  int *piVar3;\n  int iVar4;\n  int iVar5;\n  undefined4 *puVar6;\n  int unaff_s2;\n  undefined *unaff_s4;\n  int *piVar7;\n  undefined *puVar8;\n  code *pcVar9;\n  undefined *puStack_6c;\n  int iStack_68;\n  int iStack_64;\n  int iStack_5c;\n  undefined *puStack_58;\n  int iStack_54;\n  undefined *puStack_50;\n  undefined *puStack_4c;\n  int *piStack_2c;\n  undefined4 ****local_24;\n  undefined *local_20;\n  int local_1c;\n  \n  puVar1 = PTR___stack_chk_guard_000c008c;\n  puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n  local_1c = *(int *)PTR___stack_chk_guard_000c008c;\n  local_24 = param_4;\n  local_20 = param_1;\n  if (param_1 == (undefined *)0x0) {\n    if ((param_3 == (undefined *)0x0) || (param_2 == (undefined *)0x8)) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);\n      goto LAB_0007d24c;\n    }\n    param_1 = param_2;\n    unbuffer(*(undefined4 *)PTR_stdin_000bfcc8);\n    unaff_s2 = dup_bio_in(param_2);\nLAB_0007d018:\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (unaff_s2 == 0) {\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n    }\n    else {\n      if (param_2 == (undefined *)0x4) {\n        param_1 = (undefined *)0x0;\n        iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }\n      if (param_2 == (undefined *)0xa) {\n        param_1 = (undefined *)0x0;\n        unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }\n        if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }\n        if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }\n      puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n    }\nLAB_0007d05c:\n    iVar4 = 0;\n    param_1 = PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428;\n    param_3 = param_6;\n    (*(code *)PTR_BIO_printf_000c0b94)(*puVar6);\n  }\n  else {\n    if (param_2 != (undefined *)0x8) {\n      param_1 = (undefined *)0x72;\n      param_3 = param_2;\n      unaff_s2 = bio_open_default();\n      goto LAB_0007d018;\n    }\n    if (param_5 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);\nLAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n      goto LAB_0007d05c;\n    }\n    param_4 = &local_24;\n    param_3 = *(undefined **)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118);\n    iVar4 = (*(code *)PTR_ENGINE_load_public_key_000bfd2c)(param_5,param_1,param_3,param_4);\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (iVar4 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6);\n      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar6);\n      goto LAB_0007d24c;\n    }\n    (*(code *)PTR_BIO_free_000bf96c)(0);\n  }\nLAB_0007d07c:\n  if (local_1c == *(int *)puVar1) {\n    return iVar4;\n  }\n  iVar5 = local_1c;\n  puVar8 = PTR___stack_chk_fail_000bfdf8;\n  (*(code *)PTR___stack_chk_fail_000bfdf8)();\n  piVar7 = *(int **)(puVar8 + 0x42dcc);\n  puStack_50 = param_6;\n  puStack_58 = puVar1;\n  iStack_64 = *piVar7;\n  puStack_6c = param_3;\n  iStack_68 = iVar5;\n  iStack_5c = iVar4;\n  iStack_54 = unaff_s2;\n  puStack_4c = unaff_s4;\n  if (param_1 != (undefined *)0x8005) {\n    (**(code **)(puVar8 + 0x438d4))\n              (**(undefined4 **)(puVar8 + 0x420f0),*(int *)(puVar8 + 0x420ec) + -0x514,param_4);\n    iVar4 = 0;\n    goto LAB_0007d33c;\n  }\n  iVar4 = bio_open_default();\n  if (iVar4 == 0) {\n    iVar4 = 0;\n    goto LAB_0007d33c;\n  }\n  uVar2 = (**(code **)(puVar8 + 0x43538))(iVar4,0,*(undefined4 *)(puVar8 + 0x42274),&puStack_6c);\n  (**(code **)(puVar8 + 0x426ac))(iVar4);\n  if ((__gp_1 == 0) && (__gp_1 = (**(code **)(puVar8 + 0x4325c))(), __gp_1 == 0)) {\n    (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\nLAB_0007d4dc:\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n    if (piStack_2c != (int *)0x0) goto LAB_0007d4f8;\nLAB_0007d63c:\n    __gp_1 = 0;\n    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);\n    iVar4 = *(int *)(puVar8 + 0x420ec);\n    uVar2 = *puVar6;\n  }\n  else {\n    pcVar9 = *(code **)(puVar8 + 0x4267c);\n    if (piStack_2c == (int *)0x0) {\nLAB_0007d3dc:\n      iVar5 = 0;\n      iVar4 = (*pcVar9)(uVar2);\n      if (0 < iVar4) {\n        do {\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        } while (iVar5 < iVar4);\n      }\n      iVar4 = (**(code **)(puVar8 + 0x4267c))(__gp_1);\n      if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }\n      (**(code **)(puVar8 + 0x42714))(uVar2);\n      iVar4 = 1;\n      goto LAB_0007d33c;\n    }\n    if (*piStack_2c != 0) {\nLAB_0007d3d8:\n      pcVar9 = *(code **)(puVar8 + 0x4267c);\n      goto LAB_0007d3dc;\n    }\n    iVar4 = (**(code **)(puVar8 + 0x4325c))();\n    *piStack_2c = iVar4;\n    if (iVar4 != 0) goto LAB_0007d3d8;\n    pcVar9 = *(code **)(puVar8 + 0x42714);\nLAB_0007d5d8:\n    (*pcVar9)(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\nLAB_0007d4f8:\n    __gp_1 = 0;\n    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);\n    (**(code **)(puVar8 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar8 + 0x42a64));\n    uVar2 = *puVar6;\n    *piStack_2c = 0;\n    iVar4 = *(int *)(puVar8 + 0x420ec);\n  }\n  (**(code **)(puVar8 + 0x438d4))(uVar2,*(int *)(puVar8 + 0x420ec) + -0x428,iVar4 + -0x1db4);\n  (**(code **)(puVar8 + 0x42484))(*puVar6);\n  iVar4 = 0;\nLAB_0007d33c:\n  if (iStack_64 != *piVar7) {\n    (**(code **)(puVar8 + 0x42b38))();\n    iVar4 = FUN_0007d2c0();\n    return iVar4;\n  }\n  return iVar4;\n}\n\n" (function_definition "int load_pubkey(undefined *param_1,undefined *param_2,undefined *param_3,undefined4 *****param_4,\n               int param_5,undefined *param_6)\n\n{\n  undefined *puVar1;\n  undefined4 uVar2;\n  int *piVar3;\n  int iVar4;\n  int iVar5;\n  undefined4 *puVar6;\n  int unaff_s2;\n  undefined *unaff_s4;\n  int *piVar7;\n  undefined *puVar8;\n  code *pcVar9;\n  undefined *puStack_6c;\n  int iStack_68;\n  int iStack_64;\n  int iStack_5c;\n  undefined *puStack_58;\n  int iStack_54;\n  undefined *puStack_50;\n  undefined *puStack_4c;\n  int *piStack_2c;\n  undefined4 ****local_24;\n  undefined *local_20;\n  int local_1c;\n  \n  puVar1 = PTR___stack_chk_guard_000c008c;\n  puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n  local_1c = *(int *)PTR___stack_chk_guard_000c008c;\n  local_24 = param_4;\n  local_20 = param_1;\n  if (param_1 == (undefined *)0x0) {\n    if ((param_3 == (undefined *)0x0) || (param_2 == (undefined *)0x8)) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);\n      goto LAB_0007d24c;\n    }\n    param_1 = param_2;\n    unbuffer(*(undefined4 *)PTR_stdin_000bfcc8);\n    unaff_s2 = dup_bio_in(param_2);\nLAB_0007d018:\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (unaff_s2 == 0) {\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n    }\n    else {\n      if (param_2 == (undefined *)0x4) {\n        param_1 = (undefined *)0x0;\n        iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }\n      if (param_2 == (undefined *)0xa) {\n        param_1 = (undefined *)0x0;\n        unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }\n        if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }\n        if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }\n      puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n    }\nLAB_0007d05c:\n    iVar4 = 0;\n    param_1 = PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428;\n    param_3 = param_6;\n    (*(code *)PTR_BIO_printf_000c0b94)(*puVar6);\n  }\n  else {\n    if (param_2 != (undefined *)0x8) {\n      param_1 = (undefined *)0x72;\n      param_3 = param_2;\n      unaff_s2 = bio_open_default();\n      goto LAB_0007d018;\n    }\n    if (param_5 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);\nLAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n      goto LAB_0007d05c;\n    }\n    param_4 = &local_24;\n    param_3 = *(undefined **)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118);\n    iVar4 = (*(code *)PTR_ENGINE_load_public_key_000bfd2c)(param_5,param_1,param_3,param_4);\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (iVar4 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6);\n      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar6);\n      goto LAB_0007d24c;\n    }\n    (*(code *)PTR_BIO_free_000bf96c)(0);\n  }\nLAB_0007d07c:\n  if (local_1c == *(int *)puVar1) {\n    return iVar4;\n  }\n  iVar5 = local_1c;\n  puVar8 = PTR___stack_chk_fail_000bfdf8;\n  (*(code *)PTR___stack_chk_fail_000bfdf8)();\n  piVar7 = *(int **)(puVar8 + 0x42dcc);\n  puStack_50 = param_6;\n  puStack_58 = puVar1;\n  iStack_64 = *piVar7;\n  puStack_6c = param_3;\n  iStack_68 = iVar5;\n  iStack_5c = iVar4;\n  iStack_54 = unaff_s2;\n  puStack_4c = unaff_s4;\n  if (param_1 != (undefined *)0x8005) {\n    (**(code **)(puVar8 + 0x438d4))\n              (**(undefined4 **)(puVar8 + 0x420f0),*(int *)(puVar8 + 0x420ec) + -0x514,param_4);\n    iVar4 = 0;\n    goto LAB_0007d33c;\n  }\n  iVar4 = bio_open_default();\n  if (iVar4 == 0) {\n    iVar4 = 0;\n    goto LAB_0007d33c;\n  }\n  uVar2 = (**(code **)(puVar8 + 0x43538))(iVar4,0,*(undefined4 *)(puVar8 + 0x42274),&puStack_6c);\n  (**(code **)(puVar8 + 0x426ac))(iVar4);\n  if ((__gp_1 == 0) && (__gp_1 = (**(code **)(puVar8 + 0x4325c))(), __gp_1 == 0)) {\n    (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\nLAB_0007d4dc:\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n    if (piStack_2c != (int *)0x0) goto LAB_0007d4f8;\nLAB_0007d63c:\n    __gp_1 = 0;\n    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);\n    iVar4 = *(int *)(puVar8 + 0x420ec);\n    uVar2 = *puVar6;\n  }\n  else {\n    pcVar9 = *(code **)(puVar8 + 0x4267c);\n    if (piStack_2c == (int *)0x0) {\nLAB_0007d3dc:\n      iVar5 = 0;\n      iVar4 = (*pcVar9)(uVar2);\n      if (0 < iVar4) {\n        do {\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        } while (iVar5 < iVar4);\n      }\n      iVar4 = (**(code **)(puVar8 + 0x4267c))(__gp_1);\n      if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }\n      (**(code **)(puVar8 + 0x42714))(uVar2);\n      iVar4 = 1;\n      goto LAB_0007d33c;\n    }\n    if (*piStack_2c != 0) {\nLAB_0007d3d8:\n      pcVar9 = *(code **)(puVar8 + 0x4267c);\n      goto LAB_0007d3dc;\n    }\n    iVar4 = (**(code **)(puVar8 + 0x4325c))();\n    *piStack_2c = iVar4;\n    if (iVar4 != 0) goto LAB_0007d3d8;\n    pcVar9 = *(code **)(puVar8 + 0x42714);\nLAB_0007d5d8:\n    (*pcVar9)(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\nLAB_0007d4f8:\n    __gp_1 = 0;\n    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);\n    (**(code **)(puVar8 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar8 + 0x42a64));\n    uVar2 = *puVar6;\n    *piStack_2c = 0;\n    iVar4 = *(int *)(puVar8 + 0x420ec);\n  }\n  (**(code **)(puVar8 + 0x438d4))(uVar2,*(int *)(puVar8 + 0x420ec) + -0x428,iVar4 + -0x1db4);\n  (**(code **)(puVar8 + 0x42484))(*puVar6);\n  iVar4 = 0;\nLAB_0007d33c:\n  if (iStack_64 != *piVar7) {\n    (**(code **)(puVar8 + 0x42b38))();\n    iVar4 = FUN_0007d2c0();\n    return iVar4;\n  }\n  return iVar4;\n}" primitive_type (function_declarator "load_pubkey(undefined *param_1,undefined *param_2,undefined *param_3,undefined4 *****param_4,\n               int param_5,undefined *param_6)" identifier (parameter_list "(undefined *param_1,undefined *param_2,undefined *param_3,undefined4 *****param_4,\n               int param_5,undefined *param_6)" ( (parameter_declaration "undefined *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "undefined *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) , (parameter_declaration "undefined *param_3" type_identifier (pointer_declarator "*param_3" * identifier)) , (parameter_declaration "undefined4 *****param_4" type_identifier (pointer_declarator "*****param_4" * (pointer_declarator "****param_4" * (pointer_declarator "***param_4" * (pointer_declarator "**param_4" * (pointer_declarator "*param_4" * identifier)))))) , (parameter_declaration "int param_5" primitive_type identifier) , (parameter_declaration "undefined *param_6" type_identifier (pointer_declarator "*param_6" * identifier)) ))) (compound_statement "{\n  undefined *puVar1;\n  undefined4 uVar2;\n  int *piVar3;\n  int iVar4;\n  int iVar5;\n  undefined4 *puVar6;\n  int unaff_s2;\n  undefined *unaff_s4;\n  int *piVar7;\n  undefined *puVar8;\n  code *pcVar9;\n  undefined *puStack_6c;\n  int iStack_68;\n  int iStack_64;\n  int iStack_5c;\n  undefined *puStack_58;\n  int iStack_54;\n  undefined *puStack_50;\n  undefined *puStack_4c;\n  int *piStack_2c;\n  undefined4 ****local_24;\n  undefined *local_20;\n  int local_1c;\n  \n  puVar1 = PTR___stack_chk_guard_000c008c;\n  puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n  local_1c = *(int *)PTR___stack_chk_guard_000c008c;\n  local_24 = param_4;\n  local_20 = param_1;\n  if (param_1 == (undefined *)0x0) {\n    if ((param_3 == (undefined *)0x0) || (param_2 == (undefined *)0x8)) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);\n      goto LAB_0007d24c;\n    }\n    param_1 = param_2;\n    unbuffer(*(undefined4 *)PTR_stdin_000bfcc8);\n    unaff_s2 = dup_bio_in(param_2);\nLAB_0007d018:\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (unaff_s2 == 0) {\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n    }\n    else {\n      if (param_2 == (undefined *)0x4) {\n        param_1 = (undefined *)0x0;\n        iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }\n      if (param_2 == (undefined *)0xa) {\n        param_1 = (undefined *)0x0;\n        unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }\n        if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }\n        if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }\n      puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n    }\nLAB_0007d05c:\n    iVar4 = 0;\n    param_1 = PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428;\n    param_3 = param_6;\n    (*(code *)PTR_BIO_printf_000c0b94)(*puVar6);\n  }\n  else {\n    if (param_2 != (undefined *)0x8) {\n      param_1 = (undefined *)0x72;\n      param_3 = param_2;\n      unaff_s2 = bio_open_default();\n      goto LAB_0007d018;\n    }\n    if (param_5 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);\nLAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n      goto LAB_0007d05c;\n    }\n    param_4 = &local_24;\n    param_3 = *(undefined **)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118);\n    iVar4 = (*(code *)PTR_ENGINE_load_public_key_000bfd2c)(param_5,param_1,param_3,param_4);\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (iVar4 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6);\n      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar6);\n      goto LAB_0007d24c;\n    }\n    (*(code *)PTR_BIO_free_000bf96c)(0);\n  }\nLAB_0007d07c:\n  if (local_1c == *(int *)puVar1) {\n    return iVar4;\n  }\n  iVar5 = local_1c;\n  puVar8 = PTR___stack_chk_fail_000bfdf8;\n  (*(code *)PTR___stack_chk_fail_000bfdf8)();\n  piVar7 = *(int **)(puVar8 + 0x42dcc);\n  puStack_50 = param_6;\n  puStack_58 = puVar1;\n  iStack_64 = *piVar7;\n  puStack_6c = param_3;\n  iStack_68 = iVar5;\n  iStack_5c = iVar4;\n  iStack_54 = unaff_s2;\n  puStack_4c = unaff_s4;\n  if (param_1 != (undefined *)0x8005) {\n    (**(code **)(puVar8 + 0x438d4))\n              (**(undefined4 **)(puVar8 + 0x420f0),*(int *)(puVar8 + 0x420ec) + -0x514,param_4);\n    iVar4 = 0;\n    goto LAB_0007d33c;\n  }\n  iVar4 = bio_open_default();\n  if (iVar4 == 0) {\n    iVar4 = 0;\n    goto LAB_0007d33c;\n  }\n  uVar2 = (**(code **)(puVar8 + 0x43538))(iVar4,0,*(undefined4 *)(puVar8 + 0x42274),&puStack_6c);\n  (**(code **)(puVar8 + 0x426ac))(iVar4);\n  if ((__gp_1 == 0) && (__gp_1 = (**(code **)(puVar8 + 0x4325c))(), __gp_1 == 0)) {\n    (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\nLAB_0007d4dc:\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n    if (piStack_2c != (int *)0x0) goto LAB_0007d4f8;\nLAB_0007d63c:\n    __gp_1 = 0;\n    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);\n    iVar4 = *(int *)(puVar8 + 0x420ec);\n    uVar2 = *puVar6;\n  }\n  else {\n    pcVar9 = *(code **)(puVar8 + 0x4267c);\n    if (piStack_2c == (int *)0x0) {\nLAB_0007d3dc:\n      iVar5 = 0;\n      iVar4 = (*pcVar9)(uVar2);\n      if (0 < iVar4) {\n        do {\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        } while (iVar5 < iVar4);\n      }\n      iVar4 = (**(code **)(puVar8 + 0x4267c))(__gp_1);\n      if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }\n      (**(code **)(puVar8 + 0x42714))(uVar2);\n      iVar4 = 1;\n      goto LAB_0007d33c;\n    }\n    if (*piStack_2c != 0) {\nLAB_0007d3d8:\n      pcVar9 = *(code **)(puVar8 + 0x4267c);\n      goto LAB_0007d3dc;\n    }\n    iVar4 = (**(code **)(puVar8 + 0x4325c))();\n    *piStack_2c = iVar4;\n    if (iVar4 != 0) goto LAB_0007d3d8;\n    pcVar9 = *(code **)(puVar8 + 0x42714);\nLAB_0007d5d8:\n    (*pcVar9)(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\nLAB_0007d4f8:\n    __gp_1 = 0;\n    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);\n    (**(code **)(puVar8 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar8 + 0x42a64));\n    uVar2 = *puVar6;\n    *piStack_2c = 0;\n    iVar4 = *(int *)(puVar8 + 0x420ec);\n  }\n  (**(code **)(puVar8 + 0x438d4))(uVar2,*(int *)(puVar8 + 0x420ec) + -0x428,iVar4 + -0x1db4);\n  (**(code **)(puVar8 + 0x42484))(*puVar6);\n  iVar4 = 0;\nLAB_0007d33c:\n  if (iStack_64 != *piVar7) {\n    (**(code **)(puVar8 + 0x42b38))();\n    iVar4 = FUN_0007d2c0();\n    return iVar4;\n  }\n  return iVar4;\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "undefined4 uVar2;" type_identifier identifier ;) (declaration "int *piVar3;" primitive_type (pointer_declarator "*piVar3" * identifier) ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "int iVar5;" primitive_type identifier ;) (declaration "undefined4 *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "int unaff_s2;" primitive_type identifier ;) (declaration "undefined *unaff_s4;" type_identifier (pointer_declarator "*unaff_s4" * identifier) ;) (declaration "int *piVar7;" primitive_type (pointer_declarator "*piVar7" * identifier) ;) (declaration "undefined *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (declaration "code *pcVar9;" type_identifier (pointer_declarator "*pcVar9" * identifier) ;) (declaration "undefined *puStack_6c;" type_identifier (pointer_declarator "*puStack_6c" * identifier) ;) (declaration "int iStack_68;" primitive_type identifier ;) (declaration "int iStack_64;" primitive_type identifier ;) (declaration "int iStack_5c;" primitive_type identifier ;) (declaration "undefined *puStack_58;" type_identifier (pointer_declarator "*puStack_58" * identifier) ;) (declaration "int iStack_54;" primitive_type identifier ;) (declaration "undefined *puStack_50;" type_identifier (pointer_declarator "*puStack_50" * identifier) ;) (declaration "undefined *puStack_4c;" type_identifier (pointer_declarator "*puStack_4c" * identifier) ;) (declaration "int *piStack_2c;" primitive_type (pointer_declarator "*piStack_2c" * identifier) ;) (declaration "undefined4 ****local_24;" type_identifier (pointer_declarator "****local_24" * (pointer_declarator "***local_24" * (pointer_declarator "**local_24" * (pointer_declarator "*local_24" * identifier)))) ;) (declaration "undefined *local_20;" type_identifier (pointer_declarator "*local_20" * identifier) ;) (declaration "int local_1c;" primitive_type identifier ;) (expression_statement "puVar1 = PTR___stack_chk_guard_000c008c;" (assignment_expression "puVar1 = PTR___stack_chk_guard_000c008c" identifier = identifier) ;) (expression_statement "puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;" (assignment_expression "puVar6 = (undefined4 *)PTR_bio_err_000bf3b0" identifier = (cast_expression "(undefined4 *)PTR_bio_err_000bf3b0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "local_1c = *(int *)PTR___stack_chk_guard_000c008c;" (assignment_expression "local_1c = *(int *)PTR___stack_chk_guard_000c008c" identifier = (pointer_expression "*(int *)PTR___stack_chk_guard_000c008c" * (cast_expression "(int *)PTR___stack_chk_guard_000c008c" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "local_24 = param_4;" (assignment_expression "local_24 = param_4" identifier = identifier) ;) (expression_statement "local_20 = param_1;" (assignment_expression "local_20 = param_1" identifier = identifier) ;) (if_statement "if (param_1 == (undefined *)0x0) {\n    if ((param_3 == (undefined *)0x0) || (param_2 == (undefined *)0x8)) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);\n      goto LAB_0007d24c;\n    }\n    param_1 = param_2;\n    unbuffer(*(undefined4 *)PTR_stdin_000bfcc8);\n    unaff_s2 = dup_bio_in(param_2);\nLAB_0007d018:\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (unaff_s2 == 0) {\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n    }\n    else {\n      if (param_2 == (undefined *)0x4) {\n        param_1 = (undefined *)0x0;\n        iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }\n      if (param_2 == (undefined *)0xa) {\n        param_1 = (undefined *)0x0;\n        unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }\n        if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }\n        if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }\n      puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n    }\nLAB_0007d05c:\n    iVar4 = 0;\n    param_1 = PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428;\n    param_3 = param_6;\n    (*(code *)PTR_BIO_printf_000c0b94)(*puVar6);\n  }\n  else {\n    if (param_2 != (undefined *)0x8) {\n      param_1 = (undefined *)0x72;\n      param_3 = param_2;\n      unaff_s2 = bio_open_default();\n      goto LAB_0007d018;\n    }\n    if (param_5 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);\nLAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n      goto LAB_0007d05c;\n    }\n    param_4 = &local_24;\n    param_3 = *(undefined **)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118);\n    iVar4 = (*(code *)PTR_ENGINE_load_public_key_000bfd2c)(param_5,param_1,param_3,param_4);\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (iVar4 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6);\n      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar6);\n      goto LAB_0007d24c;\n    }\n    (*(code *)PTR_BIO_free_000bf96c)(0);\n  }" if (parenthesized_expression "(param_1 == (undefined *)0x0)" ( (binary_expression "param_1 == (undefined *)0x0" identifier == (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if ((param_3 == (undefined *)0x0) || (param_2 == (undefined *)0x8)) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);\n      goto LAB_0007d24c;\n    }\n    param_1 = param_2;\n    unbuffer(*(undefined4 *)PTR_stdin_000bfcc8);\n    unaff_s2 = dup_bio_in(param_2);\nLAB_0007d018:\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (unaff_s2 == 0) {\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n    }\n    else {\n      if (param_2 == (undefined *)0x4) {\n        param_1 = (undefined *)0x0;\n        iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }\n      if (param_2 == (undefined *)0xa) {\n        param_1 = (undefined *)0x0;\n        unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }\n        if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }\n        if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }\n      puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n    }\nLAB_0007d05c:\n    iVar4 = 0;\n    param_1 = PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428;\n    param_3 = param_6;\n    (*(code *)PTR_BIO_printf_000c0b94)(*puVar6);\n  }" { (if_statement "if ((param_3 == (undefined *)0x0) || (param_2 == (undefined *)0x8)) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);\n      goto LAB_0007d24c;\n    }" if (parenthesized_expression "((param_3 == (undefined *)0x0) || (param_2 == (undefined *)0x8))" ( (binary_expression "(param_3 == (undefined *)0x0) || (param_2 == (undefined *)0x8)" (parenthesized_expression "(param_3 == (undefined *)0x0)" ( (binary_expression "param_3 == (undefined *)0x0" identifier == (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(param_2 == (undefined *)0x8)" ( (binary_expression "param_2 == (undefined *)0x8" identifier == (cast_expression "(undefined *)0x8" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (compound_statement "{\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);\n      goto LAB_0007d24c;\n    }" { (expression_statement "(*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);" (call_expression "(*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0)" (parenthesized_expression "(*(code *)PTR_BIO_printf_000c0b94)" ( (pointer_expression "*(code *)PTR_BIO_printf_000c0b94" * (cast_expression "(code *)PTR_BIO_printf_000c0b94" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0)" ( (pointer_expression "*(undefined4 *)PTR_bio_err_000bf3b0" * (cast_expression "(undefined4 *)PTR_bio_err_000bf3b0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0" identifier + number_literal) ))) ;) (goto_statement "goto LAB_0007d24c;" goto statement_identifier ;) })) (expression_statement "param_1 = param_2;" (assignment_expression "param_1 = param_2" identifier = identifier) ;) (expression_statement "unbuffer(*(undefined4 *)PTR_stdin_000bfcc8);" (call_expression "unbuffer(*(undefined4 *)PTR_stdin_000bfcc8)" identifier (argument_list "(*(undefined4 *)PTR_stdin_000bfcc8)" ( (pointer_expression "*(undefined4 *)PTR_stdin_000bfcc8" * (cast_expression "(undefined4 *)PTR_stdin_000bfcc8" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ))) ;) (expression_statement "unaff_s2 = dup_bio_in(param_2);" (assignment_expression "unaff_s2 = dup_bio_in(param_2)" identifier = (call_expression "dup_bio_in(param_2)" identifier (argument_list "(param_2)" ( identifier )))) ;) (labeled_statement "LAB_0007d018:\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;" statement_identifier : (expression_statement "puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;" (assignment_expression "puVar6 = (undefined4 *)PTR_bio_err_000bf3b0" identifier = (cast_expression "(undefined4 *)PTR_bio_err_000bf3b0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;)) (if_statement "if (unaff_s2 == 0) {\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n    }\n    else {\n      if (param_2 == (undefined *)0x4) {\n        param_1 = (undefined *)0x0;\n        iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }\n      if (param_2 == (undefined *)0xa) {\n        param_1 = (undefined *)0x0;\n        unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }\n        if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }\n        if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }\n      puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n    }" if (parenthesized_expression "(unaff_s2 == 0)" ( (binary_expression "unaff_s2 == 0" identifier == number_literal) )) (compound_statement "{\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n    }" { (expression_statement "(*(code *)PTR_BIO_free_000bf96c)(0);" (call_expression "(*(code *)PTR_BIO_free_000bf96c)(0)" (parenthesized_expression "(*(code *)PTR_BIO_free_000bf96c)" ( (pointer_expression "*(code *)PTR_BIO_free_000bf96c" * (cast_expression "(code *)PTR_BIO_free_000bf96c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(0)" ( number_literal ))) ;) }) (else_clause "else {\n      if (param_2 == (undefined *)0x4) {\n        param_1 = (undefined *)0x0;\n        iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }\n      if (param_2 == (undefined *)0xa) {\n        param_1 = (undefined *)0x0;\n        unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }\n        if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }\n        if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }\n      puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n    }" else (compound_statement "{\n      if (param_2 == (undefined *)0x4) {\n        param_1 = (undefined *)0x0;\n        iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }\n      if (param_2 == (undefined *)0xa) {\n        param_1 = (undefined *)0x0;\n        unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }\n        if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }\n        if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }\n      puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n    }" { (if_statement "if (param_2 == (undefined *)0x4) {\n        param_1 = (undefined *)0x0;\n        iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }" if (parenthesized_expression "(param_2 == (undefined *)0x4)" ( (binary_expression "param_2 == (undefined *)0x4" identifier == (cast_expression "(undefined *)0x4" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        param_1 = (undefined *)0x0;\n        iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }" { (expression_statement "param_1 = (undefined *)0x0;" (assignment_expression "param_1 = (undefined *)0x0" identifier = (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);" (assignment_expression "iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2)" identifier = (call_expression "(*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_d2i_PUBKEY_bio_000c08f0)" ( (pointer_expression "*(code *)PTR_d2i_PUBKEY_bio_000c08f0" * (cast_expression "(code *)PTR_d2i_PUBKEY_bio_000c08f0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2)" ( identifier )))) ;) (goto_statement "goto LAB_0007d17c;" goto statement_identifier ;) })) (if_statement "if (param_2 == (undefined *)0xa) {\n        param_1 = (undefined *)0x0;\n        unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }\n        if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }\n        if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }" if (parenthesized_expression "(param_2 == (undefined *)0xa)" ( (binary_expression "param_2 == (undefined *)0xa" identifier == (cast_expression "(undefined *)0xa" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        param_1 = (undefined *)0x0;\n        unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }" { (expression_statement "param_1 = (undefined *)0x0;" (assignment_expression "param_1 = (undefined *)0x0" identifier = (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);" (assignment_expression "unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2)" identifier = (cast_expression "(undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)" ( (pointer_expression "*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c" * (cast_expression "(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2)" ( identifier ))))) ;) (labeled_statement "joined_r0x0007d138:\n        if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }" statement_identifier : (if_statement "if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }" if (parenthesized_expression "(unaff_s4 != (undefined *)0x0)" ( (binary_expression "unaff_s4 != (undefined *)0x0" identifier != (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }" { (expression_statement "iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();" (assignment_expression "iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)()" identifier = (call_expression "(*(code *)PTR_EVP_PKEY_new_000c0864)()" (parenthesized_expression "(*(code *)PTR_EVP_PKEY_new_000c0864)" ( (pointer_expression "*(code *)PTR_EVP_PKEY_new_000c0864" * (cast_expression "(code *)PTR_EVP_PKEY_new_000c0864" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( )))) ;) (if_statement "if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }" if (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) (compound_statement "{\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }" { (expression_statement "param_1 = unaff_s4;" (assignment_expression "param_1 = unaff_s4" identifier = identifier) ;) (expression_statement "(*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);" (call_expression "(*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4)" (parenthesized_expression "(*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)" ( (pointer_expression "*(code *)PTR_EVP_PKEY_set1_RSA_000c0448" * (cast_expression "(code *)PTR_EVP_PKEY_set1_RSA_000c0448" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar4)" ( identifier ))) ;) })) (expression_statement "(*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);" (call_expression "(*(code *)PTR_RSA_free_000bf9e0)(unaff_s4)" (parenthesized_expression "(*(code *)PTR_RSA_free_000bf9e0)" ( (pointer_expression "*(code *)PTR_RSA_free_000bf9e0" * (cast_expression "(code *)PTR_RSA_free_000bf9e0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s4)" ( identifier ))) ;) (labeled_statement "LAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);" statement_identifier : (expression_statement "(*(code *)PTR_BIO_free_000bf96c)(unaff_s2);" (call_expression "(*(code *)PTR_BIO_free_000bf96c)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_BIO_free_000bf96c)" ( (pointer_expression "*(code *)PTR_BIO_free_000bf96c" * (cast_expression "(code *)PTR_BIO_free_000bf96c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2)" ( identifier ))) ;)) (expression_statement "puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;" (assignment_expression "puVar6 = (undefined4 *)PTR_bio_err_000bf3b0" identifier = (cast_expression "(undefined4 *)PTR_bio_err_000bf3b0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (iVar4 != 0) goto LAB_0007d07c;" if (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) (goto_statement "goto LAB_0007d07c;" goto statement_identifier ;)) (goto_statement "goto LAB_0007d05c;" goto statement_identifier ;) }))) }) (else_clause "else {\n        if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }\n        if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }\n        if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }" else (compound_statement "{\n        if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }\n        if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }\n        if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }" { (if_statement "if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }" if (parenthesized_expression "(param_2 == (undefined *)0x8009)" ( (binary_expression "param_2 == (undefined *)0x8009" identifier == (cast_expression "(undefined *)0x8009" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }" { (expression_statement "param_4 = &local_24;" (assignment_expression "param_4 = &local_24" identifier = (pointer_expression "&local_24" & identifier)) ;) (expression_statement "param_1 = (undefined *)0x0;" (assignment_expression "param_1 = (undefined *)0x0" identifier = (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "param_3 = PTR_password_callback_000bf534;" (assignment_expression "param_3 = PTR_password_callback_000bf534" identifier = identifier) ;) (expression_statement "unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);" (assignment_expression "unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4)" identifier = (cast_expression "(undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4)" (parenthesized_expression "(*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)" ( (pointer_expression "*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48" * (cast_expression "(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2,0,PTR_password_callback_000bf534,param_4)" ( identifier , number_literal , identifier , identifier ))))) ;) (goto_statement "goto joined_r0x0007d138;" goto statement_identifier ;) })) (if_statement "if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }" if (parenthesized_expression "(param_2 == (undefined *)0x8005)" ( (binary_expression "param_2 == (undefined *)0x8005" identifier == (cast_expression "(undefined *)0x8005" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }" { (expression_statement "param_4 = &local_24;" (assignment_expression "param_4 = &local_24" identifier = (pointer_expression "&local_24" & identifier)) ;) (expression_statement "param_1 = (undefined *)0x0;" (assignment_expression "param_1 = (undefined *)0x0" identifier = (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "param_3 = PTR_password_callback_000bf534;" (assignment_expression "param_3 = PTR_password_callback_000bf534" identifier = identifier) ;) (expression_statement "iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);" (assignment_expression "iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4)" identifier = (call_expression "(*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4)" (parenthesized_expression "(*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)" ( (pointer_expression "*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c" * (cast_expression "(code *)PTR_PEM_read_bio_PUBKEY_000bf71c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2,0,PTR_password_callback_000bf534,param_4)" ( identifier , number_literal , identifier , identifier )))) ;) (goto_statement "goto LAB_0007d17c;" goto statement_identifier ;) })) (if_statement "if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }" if (parenthesized_expression "(param_2 == (undefined *)0xb)" ( (binary_expression "param_2 == (undefined *)0xb" identifier == (cast_expression "(undefined *)0xb" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }" { (expression_statement "iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);" (assignment_expression "iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2)" identifier = (call_expression "(*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_b2i_PublicKey_bio_000c0248)" ( (pointer_expression "*(code *)PTR_b2i_PublicKey_bio_000c0248" * (cast_expression "(code *)PTR_b2i_PublicKey_bio_000c0248" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2)" ( identifier )))) ;) (goto_statement "goto LAB_0007d17c;" goto statement_identifier ;) })) }))) (expression_statement "puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;" (assignment_expression "puVar6 = (undefined4 *)PTR_bio_err_000bf3b0" identifier = (cast_expression "(undefined4 *)PTR_bio_err_000bf3b0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "(*(code *)PTR_BIO_free_000bf96c)(unaff_s2);" (call_expression "(*(code *)PTR_BIO_free_000bf96c)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_BIO_free_000bf96c)" ( (pointer_expression "*(code *)PTR_BIO_free_000bf96c" * (cast_expression "(code *)PTR_BIO_free_000bf96c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2)" ( identifier ))) ;) }))) (labeled_statement "LAB_0007d05c:\n    iVar4 = 0;" statement_identifier : (expression_statement "iVar4 = 0;" (assignment_expression "iVar4 = 0" identifier = number_literal) ;)) (expression_statement "param_1 = PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428;" (assignment_expression "param_1 = PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428" identifier = (binary_expression "PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428" identifier + number_literal)) ;) (expression_statement "param_3 = param_6;" (assignment_expression "param_3 = param_6" identifier = identifier) ;) (expression_statement "(*(code *)PTR_BIO_printf_000c0b94)(*puVar6);" (call_expression "(*(code *)PTR_BIO_printf_000c0b94)(*puVar6)" (parenthesized_expression "(*(code *)PTR_BIO_printf_000c0b94)" ( (pointer_expression "*(code *)PTR_BIO_printf_000c0b94" * (cast_expression "(code *)PTR_BIO_printf_000c0b94" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*puVar6)" ( (pointer_expression "*puVar6" * identifier) ))) ;) }) (else_clause "else {\n    if (param_2 != (undefined *)0x8) {\n      param_1 = (undefined *)0x72;\n      param_3 = param_2;\n      unaff_s2 = bio_open_default();\n      goto LAB_0007d018;\n    }\n    if (param_5 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);\nLAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n      goto LAB_0007d05c;\n    }\n    param_4 = &local_24;\n    param_3 = *(undefined **)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118);\n    iVar4 = (*(code *)PTR_ENGINE_load_public_key_000bfd2c)(param_5,param_1,param_3,param_4);\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (iVar4 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6);\n      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar6);\n      goto LAB_0007d24c;\n    }\n    (*(code *)PTR_BIO_free_000bf96c)(0);\n  }" else (compound_statement "{\n    if (param_2 != (undefined *)0x8) {\n      param_1 = (undefined *)0x72;\n      param_3 = param_2;\n      unaff_s2 = bio_open_default();\n      goto LAB_0007d018;\n    }\n    if (param_5 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);\nLAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n      goto LAB_0007d05c;\n    }\n    param_4 = &local_24;\n    param_3 = *(undefined **)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118);\n    iVar4 = (*(code *)PTR_ENGINE_load_public_key_000bfd2c)(param_5,param_1,param_3,param_4);\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (iVar4 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6);\n      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar6);\n      goto LAB_0007d24c;\n    }\n    (*(code *)PTR_BIO_free_000bf96c)(0);\n  }" { (if_statement "if (param_2 != (undefined *)0x8) {\n      param_1 = (undefined *)0x72;\n      param_3 = param_2;\n      unaff_s2 = bio_open_default();\n      goto LAB_0007d018;\n    }" if (parenthesized_expression "(param_2 != (undefined *)0x8)" ( (binary_expression "param_2 != (undefined *)0x8" identifier != (cast_expression "(undefined *)0x8" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      param_1 = (undefined *)0x72;\n      param_3 = param_2;\n      unaff_s2 = bio_open_default();\n      goto LAB_0007d018;\n    }" { (expression_statement "param_1 = (undefined *)0x72;" (assignment_expression "param_1 = (undefined *)0x72" identifier = (cast_expression "(undefined *)0x72" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "param_3 = param_2;" (assignment_expression "param_3 = param_2" identifier = identifier) ;) (expression_statement "unaff_s2 = bio_open_default();" (assignment_expression "unaff_s2 = bio_open_default()" identifier = (call_expression "bio_open_default()" identifier (argument_list "()" ( )))) ;) (goto_statement "goto LAB_0007d018;" goto statement_identifier ;) })) (if_statement "if (param_5 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);\nLAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n      goto LAB_0007d05c;\n    }" if (parenthesized_expression "(param_5 == 0)" ( (binary_expression "param_5 == 0" identifier == number_literal) )) (compound_statement "{\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);\nLAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n      goto LAB_0007d05c;\n    }" { (expression_statement "(*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);" (call_expression "(*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488)" (parenthesized_expression "(*(code *)PTR_BIO_printf_000c0b94)" ( (pointer_expression "*(code *)PTR_BIO_printf_000c0b94" * (cast_expression "(code *)PTR_BIO_printf_000c0b94" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488)" ( (pointer_expression "*(undefined4 *)PTR_bio_err_000bf3b0" * (cast_expression "(undefined4 *)PTR_bio_err_000bf3b0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488" identifier + number_literal) ))) ;) (labeled_statement "LAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);" statement_identifier : (expression_statement "(*(code *)PTR_BIO_free_000bf96c)(0);" (call_expression "(*(code *)PTR_BIO_free_000bf96c)(0)" (parenthesized_expression "(*(code *)PTR_BIO_free_000bf96c)" ( (pointer_expression "*(code *)PTR_BIO_free_000bf96c" * (cast_expression "(code *)PTR_BIO_free_000bf96c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(0)" ( number_literal ))) ;)) (goto_statement "goto LAB_0007d05c;" goto statement_identifier ;) })) (expression_statement "param_4 = &local_24;" (assignment_expression "param_4 = &local_24" identifier = (pointer_expression "&local_24" & identifier)) ;) (expression_statement "param_3 = *(undefined **)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118);" (assignment_expression "param_3 = *(undefined **)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118)" identifier = (pointer_expression "*(undefined **)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118)" * (cast_expression "(undefined **)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118)" ( (binary_expression "PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118" identifier + number_literal) ))))) ;) (expression_statement "iVar4 = (*(code *)PTR_ENGINE_load_public_key_000bfd2c)(param_5,param_1,param_3,param_4);" (assignment_expression "iVar4 = (*(code *)PTR_ENGINE_load_public_key_000bfd2c)(param_5,param_1,param_3,param_4)" identifier = (call_expression "(*(code *)PTR_ENGINE_load_public_key_000bfd2c)(param_5,param_1,param_3,param_4)" (parenthesized_expression "(*(code *)PTR_ENGINE_load_public_key_000bfd2c)" ( (pointer_expression "*(code *)PTR_ENGINE_load_public_key_000bfd2c" * (cast_expression "(code *)PTR_ENGINE_load_public_key_000bfd2c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_5,param_1,param_3,param_4)" ( identifier , identifier , identifier , identifier )))) ;) (expression_statement "puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;" (assignment_expression "puVar6 = (undefined4 *)PTR_bio_err_000bf3b0" identifier = (cast_expression "(undefined4 *)PTR_bio_err_000bf3b0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (iVar4 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6);\n      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar6);\n      goto LAB_0007d24c;\n    }" if (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) (compound_statement "{\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6);\n      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar6);\n      goto LAB_0007d24c;\n    }" { (expression_statement "(*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6);" (call_expression "(*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6)" (parenthesized_expression "(*(code *)PTR_BIO_printf_000c0b94)" ( (pointer_expression "*(code *)PTR_BIO_printf_000c0b94" * (cast_expression "(code *)PTR_BIO_printf_000c0b94" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6)" ( (pointer_expression "*(undefined4 *)PTR_bio_err_000bf3b0" * (cast_expression "(undefined4 *)PTR_bio_err_000bf3b0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470" identifier + number_literal) , identifier ))) ;) (expression_statement "(*(code *)PTR_ERR_print_errors_000bf744)(*puVar6);" (call_expression "(*(code *)PTR_ERR_print_errors_000bf744)(*puVar6)" (parenthesized_expression "(*(code *)PTR_ERR_print_errors_000bf744)" ( (pointer_expression "*(code *)PTR_ERR_print_errors_000bf744" * (cast_expression "(code *)PTR_ERR_print_errors_000bf744" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*puVar6)" ( (pointer_expression "*puVar6" * identifier) ))) ;) (goto_statement "goto LAB_0007d24c;" goto statement_identifier ;) })) (expression_statement "(*(code *)PTR_BIO_free_000bf96c)(0);" (call_expression "(*(code *)PTR_BIO_free_000bf96c)(0)" (parenthesized_expression "(*(code *)PTR_BIO_free_000bf96c)" ( (pointer_expression "*(code *)PTR_BIO_free_000bf96c" * (cast_expression "(code *)PTR_BIO_free_000bf96c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(0)" ( number_literal ))) ;) }))) (labeled_statement "LAB_0007d07c:\n  if (local_1c == *(int *)puVar1) {\n    return iVar4;\n  }" statement_identifier : (if_statement "if (local_1c == *(int *)puVar1) {\n    return iVar4;\n  }" if (parenthesized_expression "(local_1c == *(int *)puVar1)" ( (binary_expression "local_1c == *(int *)puVar1" identifier == (pointer_expression "*(int *)puVar1" * (cast_expression "(int *)puVar1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) )) (compound_statement "{\n    return iVar4;\n  }" { (return_statement "return iVar4;" return identifier ;) }))) (expression_statement "iVar5 = local_1c;" (assignment_expression "iVar5 = local_1c" identifier = identifier) ;) (expression_statement "puVar8 = PTR___stack_chk_fail_000bfdf8;" (assignment_expression "puVar8 = PTR___stack_chk_fail_000bfdf8" identifier = identifier) ;) (expression_statement "(*(code *)PTR___stack_chk_fail_000bfdf8)();" (call_expression "(*(code *)PTR___stack_chk_fail_000bfdf8)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_000bfdf8)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_000bfdf8" * (cast_expression "(code *)PTR___stack_chk_fail_000bfdf8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "piVar7 = *(int **)(puVar8 + 0x42dcc);" (assignment_expression "piVar7 = *(int **)(puVar8 + 0x42dcc)" identifier = (pointer_expression "*(int **)(puVar8 + 0x42dcc)" * (cast_expression "(int **)(puVar8 + 0x42dcc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x42dcc)" ( (binary_expression "puVar8 + 0x42dcc" identifier + number_literal) ))))) ;) (expression_statement "puStack_50 = param_6;" (assignment_expression "puStack_50 = param_6" identifier = identifier) ;) (expression_statement "puStack_58 = puVar1;" (assignment_expression "puStack_58 = puVar1" identifier = identifier) ;) (expression_statement "iStack_64 = *piVar7;" (assignment_expression "iStack_64 = *piVar7" identifier = (pointer_expression "*piVar7" * identifier)) ;) (expression_statement "puStack_6c = param_3;" (assignment_expression "puStack_6c = param_3" identifier = identifier) ;) (expression_statement "iStack_68 = iVar5;" (assignment_expression "iStack_68 = iVar5" identifier = identifier) ;) (expression_statement "iStack_5c = iVar4;" (assignment_expression "iStack_5c = iVar4" identifier = identifier) ;) (expression_statement "iStack_54 = unaff_s2;" (assignment_expression "iStack_54 = unaff_s2" identifier = identifier) ;) (expression_statement "puStack_4c = unaff_s4;" (assignment_expression "puStack_4c = unaff_s4" identifier = identifier) ;) (if_statement "if (param_1 != (undefined *)0x8005) {\n    (**(code **)(puVar8 + 0x438d4))\n              (**(undefined4 **)(puVar8 + 0x420f0),*(int *)(puVar8 + 0x420ec) + -0x514,param_4);\n    iVar4 = 0;\n    goto LAB_0007d33c;\n  }" if (parenthesized_expression "(param_1 != (undefined *)0x8005)" ( (binary_expression "param_1 != (undefined *)0x8005" identifier != (cast_expression "(undefined *)0x8005" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    (**(code **)(puVar8 + 0x438d4))\n              (**(undefined4 **)(puVar8 + 0x420f0),*(int *)(puVar8 + 0x420ec) + -0x514,param_4);\n    iVar4 = 0;\n    goto LAB_0007d33c;\n  }" { (expression_statement "(**(code **)(puVar8 + 0x438d4))\n              (**(undefined4 **)(puVar8 + 0x420f0),*(int *)(puVar8 + 0x420ec) + -0x514,param_4);" (call_expression "(**(code **)(puVar8 + 0x438d4))\n              (**(undefined4 **)(puVar8 + 0x420f0),*(int *)(puVar8 + 0x420ec) + -0x514,param_4)" (parenthesized_expression "(**(code **)(puVar8 + 0x438d4))" ( (pointer_expression "**(code **)(puVar8 + 0x438d4)" * (pointer_expression "*(code **)(puVar8 + 0x438d4)" * (cast_expression "(code **)(puVar8 + 0x438d4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x438d4)" ( (binary_expression "puVar8 + 0x438d4" identifier + number_literal) ))))) )) (argument_list "(**(undefined4 **)(puVar8 + 0x420f0),*(int *)(puVar8 + 0x420ec) + -0x514,param_4)" ( (pointer_expression "**(undefined4 **)(puVar8 + 0x420f0)" * (pointer_expression "*(undefined4 **)(puVar8 + 0x420f0)" * (cast_expression "(undefined4 **)(puVar8 + 0x420f0)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x420f0)" ( (binary_expression "puVar8 + 0x420f0" identifier + number_literal) ))))) , (binary_expression "*(int *)(puVar8 + 0x420ec) + -0x514" (pointer_expression "*(int *)(puVar8 + 0x420ec)" * (cast_expression "(int *)(puVar8 + 0x420ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x420ec)" ( (binary_expression "puVar8 + 0x420ec" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (expression_statement "iVar4 = 0;" (assignment_expression "iVar4 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_0007d33c;" goto statement_identifier ;) })) (expression_statement "iVar4 = bio_open_default();" (assignment_expression "iVar4 = bio_open_default()" identifier = (call_expression "bio_open_default()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar4 == 0) {\n    iVar4 = 0;\n    goto LAB_0007d33c;\n  }" if (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) (compound_statement "{\n    iVar4 = 0;\n    goto LAB_0007d33c;\n  }" { (expression_statement "iVar4 = 0;" (assignment_expression "iVar4 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_0007d33c;" goto statement_identifier ;) })) (expression_statement "uVar2 = (**(code **)(puVar8 + 0x43538))(iVar4,0,*(undefined4 *)(puVar8 + 0x42274),&puStack_6c);" (assignment_expression "uVar2 = (**(code **)(puVar8 + 0x43538))(iVar4,0,*(undefined4 *)(puVar8 + 0x42274),&puStack_6c)" identifier = (call_expression "(**(code **)(puVar8 + 0x43538))(iVar4,0,*(undefined4 *)(puVar8 + 0x42274),&puStack_6c)" (parenthesized_expression "(**(code **)(puVar8 + 0x43538))" ( (pointer_expression "**(code **)(puVar8 + 0x43538)" * (pointer_expression "*(code **)(puVar8 + 0x43538)" * (cast_expression "(code **)(puVar8 + 0x43538)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x43538)" ( (binary_expression "puVar8 + 0x43538" identifier + number_literal) ))))) )) (argument_list "(iVar4,0,*(undefined4 *)(puVar8 + 0x42274),&puStack_6c)" ( identifier , number_literal , (pointer_expression "*(undefined4 *)(puVar8 + 0x42274)" * (cast_expression "(undefined4 *)(puVar8 + 0x42274)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x42274)" ( (binary_expression "puVar8 + 0x42274" identifier + number_literal) )))) , (pointer_expression "&puStack_6c" & identifier) )))) ;) (expression_statement "(**(code **)(puVar8 + 0x426ac))(iVar4);" (call_expression "(**(code **)(puVar8 + 0x426ac))(iVar4)" (parenthesized_expression "(**(code **)(puVar8 + 0x426ac))" ( (pointer_expression "**(code **)(puVar8 + 0x426ac)" * (pointer_expression "*(code **)(puVar8 + 0x426ac)" * (cast_expression "(code **)(puVar8 + 0x426ac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x426ac)" ( (binary_expression "puVar8 + 0x426ac" identifier + number_literal) ))))) )) (argument_list "(iVar4)" ( identifier ))) ;) (if_statement "if ((__gp_1 == 0) && (__gp_1 = (**(code **)(puVar8 + 0x4325c))(), __gp_1 == 0)) {\n    (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\nLAB_0007d4dc:\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n    if (piStack_2c != (int *)0x0) goto LAB_0007d4f8;\nLAB_0007d63c:\n    __gp_1 = 0;\n    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);\n    iVar4 = *(int *)(puVar8 + 0x420ec);\n    uVar2 = *puVar6;\n  }\n  else {\n    pcVar9 = *(code **)(puVar8 + 0x4267c);\n    if (piStack_2c == (int *)0x0) {\nLAB_0007d3dc:\n      iVar5 = 0;\n      iVar4 = (*pcVar9)(uVar2);\n      if (0 < iVar4) {\n        do {\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        } while (iVar5 < iVar4);\n      }\n      iVar4 = (**(code **)(puVar8 + 0x4267c))(__gp_1);\n      if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }\n      (**(code **)(puVar8 + 0x42714))(uVar2);\n      iVar4 = 1;\n      goto LAB_0007d33c;\n    }\n    if (*piStack_2c != 0) {\nLAB_0007d3d8:\n      pcVar9 = *(code **)(puVar8 + 0x4267c);\n      goto LAB_0007d3dc;\n    }\n    iVar4 = (**(code **)(puVar8 + 0x4325c))();\n    *piStack_2c = iVar4;\n    if (iVar4 != 0) goto LAB_0007d3d8;\n    pcVar9 = *(code **)(puVar8 + 0x42714);\nLAB_0007d5d8:\n    (*pcVar9)(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\nLAB_0007d4f8:\n    __gp_1 = 0;\n    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);\n    (**(code **)(puVar8 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar8 + 0x42a64));\n    uVar2 = *puVar6;\n    *piStack_2c = 0;\n    iVar4 = *(int *)(puVar8 + 0x420ec);\n  }" if (parenthesized_expression "((__gp_1 == 0) && (__gp_1 = (**(code **)(puVar8 + 0x4325c))(), __gp_1 == 0))" ( (binary_expression "(__gp_1 == 0) && (__gp_1 = (**(code **)(puVar8 + 0x4325c))(), __gp_1 == 0)" (parenthesized_expression "(__gp_1 == 0)" ( (binary_expression "__gp_1 == 0" identifier == number_literal) )) && (parenthesized_expression "(__gp_1 = (**(code **)(puVar8 + 0x4325c))(), __gp_1 == 0)" ( (comma_expression "__gp_1 = (**(code **)(puVar8 + 0x4325c))(), __gp_1 == 0" (assignment_expression "__gp_1 = (**(code **)(puVar8 + 0x4325c))()" identifier = (call_expression "(**(code **)(puVar8 + 0x4325c))()" (parenthesized_expression "(**(code **)(puVar8 + 0x4325c))" ( (pointer_expression "**(code **)(puVar8 + 0x4325c)" * (pointer_expression "*(code **)(puVar8 + 0x4325c)" * (cast_expression "(code **)(puVar8 + 0x4325c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x4325c)" ( (binary_expression "puVar8 + 0x4325c" identifier + number_literal) ))))) )) (argument_list "()" ( )))) , (binary_expression "__gp_1 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n    (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\nLAB_0007d4dc:\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n    if (piStack_2c != (int *)0x0) goto LAB_0007d4f8;\nLAB_0007d63c:\n    __gp_1 = 0;\n    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);\n    iVar4 = *(int *)(puVar8 + 0x420ec);\n    uVar2 = *puVar6;\n  }" { (expression_statement "(**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));" (call_expression "(**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc))" (parenthesized_expression "(**(code **)(puVar8 + 0x42714))" ( (pointer_expression "**(code **)(puVar8 + 0x42714)" * (pointer_expression "*(code **)(puVar8 + 0x42714)" * (cast_expression "(code **)(puVar8 + 0x42714)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x42714)" ( (binary_expression "puVar8 + 0x42714" identifier + number_literal) ))))) )) (argument_list "(uVar2,*(undefined4 *)(puVar8 + 0x434fc))" ( identifier , (pointer_expression "*(undefined4 *)(puVar8 + 0x434fc)" * (cast_expression "(undefined4 *)(puVar8 + 0x434fc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x434fc)" ( (binary_expression "puVar8 + 0x434fc" identifier + number_literal) )))) ))) ;) (labeled_statement "LAB_0007d4dc:\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));" statement_identifier : (expression_statement "(**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));" (call_expression "(**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4))" (parenthesized_expression "(**(code **)(puVar8 + 0x42714))" ( (pointer_expression "**(code **)(puVar8 + 0x42714)" * (pointer_expression "*(code **)(puVar8 + 0x42714)" * (cast_expression "(code **)(puVar8 + 0x42714)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x42714)" ( (binary_expression "puVar8 + 0x42714" identifier + number_literal) ))))) )) (argument_list "(__gp_1,*(undefined4 *)(puVar8 + 0x425e4))" ( identifier , (pointer_expression "*(undefined4 *)(puVar8 + 0x425e4)" * (cast_expression "(undefined4 *)(puVar8 + 0x425e4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x425e4)" ( (binary_expression "puVar8 + 0x425e4" identifier + number_literal) )))) ))) ;)) (if_statement "if (piStack_2c != (int *)0x0) goto LAB_0007d4f8;" if (parenthesized_expression "(piStack_2c != (int *)0x0)" ( (binary_expression "piStack_2c != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_0007d4f8;" goto statement_identifier ;)) (labeled_statement "LAB_0007d63c:\n    __gp_1 = 0;" statement_identifier : (expression_statement "__gp_1 = 0;" (assignment_expression "__gp_1 = 0" identifier = number_literal) ;)) (expression_statement "puVar6 = *(undefined4 **)(puVar8 + 0x420f0);" (assignment_expression "puVar6 = *(undefined4 **)(puVar8 + 0x420f0)" identifier = (pointer_expression "*(undefined4 **)(puVar8 + 0x420f0)" * (cast_expression "(undefined4 **)(puVar8 + 0x420f0)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x420f0)" ( (binary_expression "puVar8 + 0x420f0" identifier + number_literal) ))))) ;) (expression_statement "iVar4 = *(int *)(puVar8 + 0x420ec);" (assignment_expression "iVar4 = *(int *)(puVar8 + 0x420ec)" identifier = (pointer_expression "*(int *)(puVar8 + 0x420ec)" * (cast_expression "(int *)(puVar8 + 0x420ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x420ec)" ( (binary_expression "puVar8 + 0x420ec" identifier + number_literal) ))))) ;) (expression_statement "uVar2 = *puVar6;" (assignment_expression "uVar2 = *puVar6" identifier = (pointer_expression "*puVar6" * identifier)) ;) }) (else_clause "else {\n    pcVar9 = *(code **)(puVar8 + 0x4267c);\n    if (piStack_2c == (int *)0x0) {\nLAB_0007d3dc:\n      iVar5 = 0;\n      iVar4 = (*pcVar9)(uVar2);\n      if (0 < iVar4) {\n        do {\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        } while (iVar5 < iVar4);\n      }\n      iVar4 = (**(code **)(puVar8 + 0x4267c))(__gp_1);\n      if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }\n      (**(code **)(puVar8 + 0x42714))(uVar2);\n      iVar4 = 1;\n      goto LAB_0007d33c;\n    }\n    if (*piStack_2c != 0) {\nLAB_0007d3d8:\n      pcVar9 = *(code **)(puVar8 + 0x4267c);\n      goto LAB_0007d3dc;\n    }\n    iVar4 = (**(code **)(puVar8 + 0x4325c))();\n    *piStack_2c = iVar4;\n    if (iVar4 != 0) goto LAB_0007d3d8;\n    pcVar9 = *(code **)(puVar8 + 0x42714);\nLAB_0007d5d8:\n    (*pcVar9)(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\nLAB_0007d4f8:\n    __gp_1 = 0;\n    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);\n    (**(code **)(puVar8 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar8 + 0x42a64));\n    uVar2 = *puVar6;\n    *piStack_2c = 0;\n    iVar4 = *(int *)(puVar8 + 0x420ec);\n  }" else (compound_statement "{\n    pcVar9 = *(code **)(puVar8 + 0x4267c);\n    if (piStack_2c == (int *)0x0) {\nLAB_0007d3dc:\n      iVar5 = 0;\n      iVar4 = (*pcVar9)(uVar2);\n      if (0 < iVar4) {\n        do {\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        } while (iVar5 < iVar4);\n      }\n      iVar4 = (**(code **)(puVar8 + 0x4267c))(__gp_1);\n      if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }\n      (**(code **)(puVar8 + 0x42714))(uVar2);\n      iVar4 = 1;\n      goto LAB_0007d33c;\n    }\n    if (*piStack_2c != 0) {\nLAB_0007d3d8:\n      pcVar9 = *(code **)(puVar8 + 0x4267c);\n      goto LAB_0007d3dc;\n    }\n    iVar4 = (**(code **)(puVar8 + 0x4325c))();\n    *piStack_2c = iVar4;\n    if (iVar4 != 0) goto LAB_0007d3d8;\n    pcVar9 = *(code **)(puVar8 + 0x42714);\nLAB_0007d5d8:\n    (*pcVar9)(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\nLAB_0007d4f8:\n    __gp_1 = 0;\n    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);\n    (**(code **)(puVar8 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar8 + 0x42a64));\n    uVar2 = *puVar6;\n    *piStack_2c = 0;\n    iVar4 = *(int *)(puVar8 + 0x420ec);\n  }" { (expression_statement "pcVar9 = *(code **)(puVar8 + 0x4267c);" (assignment_expression "pcVar9 = *(code **)(puVar8 + 0x4267c)" identifier = (pointer_expression "*(code **)(puVar8 + 0x4267c)" * (cast_expression "(code **)(puVar8 + 0x4267c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x4267c)" ( (binary_expression "puVar8 + 0x4267c" identifier + number_literal) ))))) ;) (if_statement "if (piStack_2c == (int *)0x0) {\nLAB_0007d3dc:\n      iVar5 = 0;\n      iVar4 = (*pcVar9)(uVar2);\n      if (0 < iVar4) {\n        do {\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        } while (iVar5 < iVar4);\n      }\n      iVar4 = (**(code **)(puVar8 + 0x4267c))(__gp_1);\n      if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }\n      (**(code **)(puVar8 + 0x42714))(uVar2);\n      iVar4 = 1;\n      goto LAB_0007d33c;\n    }" if (parenthesized_expression "(piStack_2c == (int *)0x0)" ( (binary_expression "piStack_2c == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_0007d3dc:\n      iVar5 = 0;\n      iVar4 = (*pcVar9)(uVar2);\n      if (0 < iVar4) {\n        do {\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        } while (iVar5 < iVar4);\n      }\n      iVar4 = (**(code **)(puVar8 + 0x4267c))(__gp_1);\n      if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }\n      (**(code **)(puVar8 + 0x42714))(uVar2);\n      iVar4 = 1;\n      goto LAB_0007d33c;\n    }" { (labeled_statement "LAB_0007d3dc:\n      iVar5 = 0;" statement_identifier : (expression_statement "iVar5 = 0;" (assignment_expression "iVar5 = 0" identifier = number_literal) ;)) (expression_statement "iVar4 = (*pcVar9)(uVar2);" (assignment_expression "iVar4 = (*pcVar9)(uVar2)" identifier = (call_expression "(*pcVar9)(uVar2)" (parenthesized_expression "(*pcVar9)" ( (pointer_expression "*pcVar9" * identifier) )) (argument_list "(uVar2)" ( identifier )))) ;) (if_statement "if (0 < iVar4) {\n        do {\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        } while (iVar5 < iVar4);\n      }" if (parenthesized_expression "(0 < iVar4)" ( (binary_expression "0 < iVar4" number_literal < identifier) )) (compound_statement "{\n        do {\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        } while (iVar5 < iVar4);\n      }" { (do_statement "do {\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        } while (iVar5 < iVar4);" do (compound_statement "{\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        }" { (expression_statement "piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);" (assignment_expression "piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5)" identifier = (cast_expression "(int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar8 + 0x43914))(uVar2,iVar5)" (parenthesized_expression "(**(code **)(puVar8 + 0x43914))" ( (pointer_expression "**(code **)(puVar8 + 0x43914)" * (pointer_expression "*(code **)(puVar8 + 0x43914)" * (cast_expression "(code **)(puVar8 + 0x43914)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x43914)" ( (binary_expression "puVar8 + 0x43914" identifier + number_literal) ))))) )) (argument_list "(uVar2,iVar5)" ( identifier , identifier ))))) ;) (if_statement "if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }" if (parenthesized_expression "(*piVar3 != 0)" ( (binary_expression "*piVar3 != 0" (pointer_expression "*piVar3" * identifier) != number_literal) )) (compound_statement "{\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }" { (expression_statement "iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);" (assignment_expression "iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1)" identifier = (call_expression "(**(code **)(puVar8 + 0x42a8c))(__gp_1)" (parenthesized_expression "(**(code **)(puVar8 + 0x42a8c))" ( (pointer_expression "**(code **)(puVar8 + 0x42a8c)" * (pointer_expression "*(code **)(puVar8 + 0x42a8c)" * (cast_expression "(code **)(puVar8 + 0x42a8c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x42a8c)" ( (binary_expression "puVar8 + 0x42a8c" identifier + number_literal) ))))) )) (argument_list "(__gp_1)" ( identifier )))) ;) (if_statement "if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }" if (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) (compound_statement "{\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }" { (expression_statement "*piVar3 = 0;" (assignment_expression "*piVar3 = 0" (pointer_expression "*piVar3" * identifier) = number_literal) ;) (goto_statement "goto LAB_0007d430;" goto statement_identifier ;) })) (labeled_statement "LAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));" statement_identifier : (expression_statement "(**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));" (call_expression "(**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc))" (parenthesized_expression "(**(code **)(puVar8 + 0x42714))" ( (pointer_expression "**(code **)(puVar8 + 0x42714)" * (pointer_expression "*(code **)(puVar8 + 0x42714)" * (cast_expression "(code **)(puVar8 + 0x42714)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x42714)" ( (binary_expression "puVar8 + 0x42714" identifier + number_literal) ))))) )) (argument_list "(uVar2,*(undefined4 *)(puVar8 + 0x434fc))" ( identifier , (pointer_expression "*(undefined4 *)(puVar8 + 0x434fc)" * (cast_expression "(undefined4 *)(puVar8 + 0x434fc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x434fc)" ( (binary_expression "puVar8 + 0x434fc" identifier + number_literal) )))) ))) ;)) (goto_statement "goto LAB_0007d4dc;" goto statement_identifier ;) })) (labeled_statement "LAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);" statement_identifier : (expression_statement "pcVar9 = *(code **)(puVar8 + 0x4267c);" (assignment_expression "pcVar9 = *(code **)(puVar8 + 0x4267c)" identifier = (pointer_expression "*(code **)(puVar8 + 0x4267c)" * (cast_expression "(code **)(puVar8 + 0x4267c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x4267c)" ( (binary_expression "puVar8 + 0x4267c" identifier + number_literal) ))))) ;)) (if_statement "if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }" if (parenthesized_expression "(piVar3[1] != 0)" ( (binary_expression "piVar3[1] != 0" (subscript_expression "piVar3[1]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }" { (if_statement "if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }" if (parenthesized_expression "(piStack_2c != (int *)0x0)" ( (binary_expression "piStack_2c != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }" { (expression_statement "iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);" (assignment_expression "iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c)" identifier = (call_expression "(**(code **)(puVar8 + 0x42a8c))(*piStack_2c)" (parenthesized_expression "(**(code **)(puVar8 + 0x42a8c))" ( (pointer_expression "**(code **)(puVar8 + 0x42a8c)" * (pointer_expression "*(code **)(puVar8 + 0x42a8c)" * (cast_expression "(code **)(puVar8 + 0x42a8c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x42a8c)" ( (binary_expression "puVar8 + 0x42a8c" identifier + number_literal) ))))) )) (argument_list "(*piStack_2c)" ( (pointer_expression "*piStack_2c" * identifier) )))) ;) (if_statement "if (iVar4 == 0) goto LAB_0007d4c4;" if (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0007d4c4;" goto statement_identifier ;)) (expression_statement "piVar3[1] = 0;" (assignment_expression "piVar3[1] = 0" (subscript_expression "piVar3[1]" identifier [ number_literal ]) = number_literal) ;) })) (expression_statement "pcVar9 = *(code **)(puVar8 + 0x4267c);" (assignment_expression "pcVar9 = *(code **)(puVar8 + 0x4267c)" identifier = (pointer_expression "*(code **)(puVar8 + 0x4267c)" * (cast_expression "(code **)(puVar8 + 0x4267c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x4267c)" ( (binary_expression "puVar8 + 0x4267c" identifier + number_literal) ))))) ;) })) (expression_statement "iVar5 = iVar5 + 1;" (assignment_expression "iVar5 = iVar5 + 1" identifier = (binary_expression "iVar5 + 1" identifier + number_literal)) ;) (expression_statement "iVar4 = (*pcVar9)(uVar2);" (assignment_expression "iVar4 = (*pcVar9)(uVar2)" identifier = (call_expression "(*pcVar9)(uVar2)" (parenthesized_expression "(*pcVar9)" ( (pointer_expression "*pcVar9" * identifier) )) (argument_list "(uVar2)" ( identifier )))) ;) }) while (parenthesized_expression "(iVar5 < iVar4)" ( (binary_expression "iVar5 < iVar4" identifier < identifier) )) ;) })) (expression_statement "iVar4 = (**(code **)(puVar8 + 0x4267c))(__gp_1);" (assignment_expression "iVar4 = (**(code **)(puVar8 + 0x4267c))(__gp_1)" identifier = (call_expression "(**(code **)(puVar8 + 0x4267c))(__gp_1)" (parenthesized_expression "(**(code **)(puVar8 + 0x4267c))" ( (pointer_expression "**(code **)(puVar8 + 0x4267c)" * (pointer_expression "*(code **)(puVar8 + 0x4267c)" * (cast_expression "(code **)(puVar8 + 0x4267c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x4267c)" ( (binary_expression "puVar8 + 0x4267c" identifier + number_literal) ))))) )) (argument_list "(__gp_1)" ( identifier )))) ;) (if_statement "if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }" if (parenthesized_expression "(iVar4 < 1)" ( (binary_expression "iVar4 < 1" identifier < number_literal) )) (compound_statement "{\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }" { (if_statement "if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }" if (parenthesized_expression "(piStack_2c == (int *)0x0)" ( (binary_expression "piStack_2c == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }" { (expression_statement "(**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));" (call_expression "(**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc))" (parenthesized_expression "(**(code **)(puVar8 + 0x42714))" ( (pointer_expression "**(code **)(puVar8 + 0x42714)" * (pointer_expression "*(code **)(puVar8 + 0x42714)" * (cast_expression "(code **)(puVar8 + 0x42714)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x42714)" ( (binary_expression "puVar8 + 0x42714" identifier + number_literal) ))))) )) (argument_list "(uVar2,*(undefined4 *)(puVar8 + 0x434fc))" ( identifier , (pointer_expression "*(undefined4 *)(puVar8 + 0x434fc)" * (cast_expression "(undefined4 *)(puVar8 + 0x434fc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x434fc)" ( (binary_expression "puVar8 + 0x434fc" identifier + number_literal) )))) ))) ;) (expression_statement "(**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));" (call_expression "(**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4))" (parenthesized_expression "(**(code **)(puVar8 + 0x42714))" ( (pointer_expression "**(code **)(puVar8 + 0x42714)" * (pointer_expression "*(code **)(puVar8 + 0x42714)" * (cast_expression "(code **)(puVar8 + 0x42714)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x42714)" ( (binary_expression "puVar8 + 0x42714" identifier + number_literal) ))))) )) (argument_list "(__gp_1,*(undefined4 *)(puVar8 + 0x425e4))" ( identifier , (pointer_expression "*(undefined4 *)(puVar8 + 0x425e4)" * (cast_expression "(undefined4 *)(puVar8 + 0x425e4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x425e4)" ( (binary_expression "puVar8 + 0x425e4" identifier + number_literal) )))) ))) ;) (goto_statement "goto LAB_0007d63c;" goto statement_identifier ;) })) (expression_statement "iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);" (assignment_expression "iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c)" identifier = (call_expression "(**(code **)(puVar8 + 0x4267c))(*piStack_2c)" (parenthesized_expression "(**(code **)(puVar8 + 0x4267c))" ( (pointer_expression "**(code **)(puVar8 + 0x4267c)" * (pointer_expression "*(code **)(puVar8 + 0x4267c)" * (cast_expression "(code **)(puVar8 + 0x4267c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x4267c)" ( (binary_expression "puVar8 + 0x4267c" identifier + number_literal) ))))) )) (argument_list "(*piStack_2c)" ( (pointer_expression "*piStack_2c" * identifier) )))) ;) (if_statement "if (iVar4 < 1) {\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }" if (parenthesized_expression "(iVar4 < 1)" ( (binary_expression "iVar4 < 1" identifier < number_literal) )) (compound_statement "{\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }" { (expression_statement "pcVar9 = *(code **)(puVar8 + 0x42714);" (assignment_expression "pcVar9 = *(code **)(puVar8 + 0x42714)" identifier = (pointer_expression "*(code **)(puVar8 + 0x42714)" * (cast_expression "(code **)(puVar8 + 0x42714)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x42714)" ( (binary_expression "puVar8 + 0x42714" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_0007d5d8;" goto statement_identifier ;) })) }) (else_clause "else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }" else (if_statement "if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }" if (parenthesized_expression "(piStack_2c != (int *)0x0)" ( (binary_expression "piStack_2c != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }" { (expression_statement "(**(code **)(puVar8 + 0x4267c))(*piStack_2c);" (call_expression "(**(code **)(puVar8 + 0x4267c))(*piStack_2c)" (parenthesized_expression "(**(code **)(puVar8 + 0x4267c))" ( (pointer_expression "**(code **)(puVar8 + 0x4267c)" * (pointer_expression "*(code **)(puVar8 + 0x4267c)" * (cast_expression "(code **)(puVar8 + 0x4267c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x4267c)" ( (binary_expression "puVar8 + 0x4267c" identifier + number_literal) ))))) )) (argument_list "(*piStack_2c)" ( (pointer_expression "*piStack_2c" * identifier) ))) ;) })))) (expression_statement "(**(code **)(puVar8 + 0x42714))(uVar2);" (call_expression "(**(code **)(puVar8 + 0x42714))(uVar2)" (parenthesized_expression "(**(code **)(puVar8 + 0x42714))" ( (pointer_expression "**(code **)(puVar8 + 0x42714)" * (pointer_expression "*(code **)(puVar8 + 0x42714)" * (cast_expression "(code **)(puVar8 + 0x42714)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x42714)" ( (binary_expression "puVar8 + 0x42714" identifier + number_literal) ))))) )) (argument_list "(uVar2)" ( identifier ))) ;) (expression_statement "iVar4 = 1;" (assignment_expression "iVar4 = 1" identifier = number_literal) ;) (goto_statement "goto LAB_0007d33c;" goto statement_identifier ;) })) (if_statement "if (*piStack_2c != 0) {\nLAB_0007d3d8:\n      pcVar9 = *(code **)(puVar8 + 0x4267c);\n      goto LAB_0007d3dc;\n    }" if (parenthesized_expression "(*piStack_2c != 0)" ( (binary_expression "*piStack_2c != 0" (pointer_expression "*piStack_2c" * identifier) != number_literal) )) (compound_statement "{\nLAB_0007d3d8:\n      pcVar9 = *(code **)(puVar8 + 0x4267c);\n      goto LAB_0007d3dc;\n    }" { (labeled_statement "LAB_0007d3d8:\n      pcVar9 = *(code **)(puVar8 + 0x4267c);" statement_identifier : (expression_statement "pcVar9 = *(code **)(puVar8 + 0x4267c);" (assignment_expression "pcVar9 = *(code **)(puVar8 + 0x4267c)" identifier = (pointer_expression "*(code **)(puVar8 + 0x4267c)" * (cast_expression "(code **)(puVar8 + 0x4267c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x4267c)" ( (binary_expression "puVar8 + 0x4267c" identifier + number_literal) ))))) ;)) (goto_statement "goto LAB_0007d3dc;" goto statement_identifier ;) })) (expression_statement "iVar4 = (**(code **)(puVar8 + 0x4325c))();" (assignment_expression "iVar4 = (**(code **)(puVar8 + 0x4325c))()" identifier = (call_expression "(**(code **)(puVar8 + 0x4325c))()" (parenthesized_expression "(**(code **)(puVar8 + 0x4325c))" ( (pointer_expression "**(code **)(puVar8 + 0x4325c)" * (pointer_expression "*(code **)(puVar8 + 0x4325c)" * (cast_expression "(code **)(puVar8 + 0x4325c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x4325c)" ( (binary_expression "puVar8 + 0x4325c" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (expression_statement "*piStack_2c = iVar4;" (assignment_expression "*piStack_2c = iVar4" (pointer_expression "*piStack_2c" * identifier) = identifier) ;) (if_statement "if (iVar4 != 0) goto LAB_0007d3d8;" if (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) (goto_statement "goto LAB_0007d3d8;" goto statement_identifier ;)) (expression_statement "pcVar9 = *(code **)(puVar8 + 0x42714);" (assignment_expression "pcVar9 = *(code **)(puVar8 + 0x42714)" identifier = (pointer_expression "*(code **)(puVar8 + 0x42714)" * (cast_expression "(code **)(puVar8 + 0x42714)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x42714)" ( (binary_expression "puVar8 + 0x42714" identifier + number_literal) ))))) ;) (labeled_statement "LAB_0007d5d8:\n    (*pcVar9)(uVar2,*(undefined4 *)(puVar8 + 0x434fc));" statement_identifier : (expression_statement "(*pcVar9)(uVar2,*(undefined4 *)(puVar8 + 0x434fc));" (call_expression "(*pcVar9)(uVar2,*(undefined4 *)(puVar8 + 0x434fc))" (parenthesized_expression "(*pcVar9)" ( (pointer_expression "*pcVar9" * identifier) )) (argument_list "(uVar2,*(undefined4 *)(puVar8 + 0x434fc))" ( identifier , (pointer_expression "*(undefined4 *)(puVar8 + 0x434fc)" * (cast_expression "(undefined4 *)(puVar8 + 0x434fc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x434fc)" ( (binary_expression "puVar8 + 0x434fc" identifier + number_literal) )))) ))) ;)) (expression_statement "(**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));" (call_expression "(**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4))" (parenthesized_expression "(**(code **)(puVar8 + 0x42714))" ( (pointer_expression "**(code **)(puVar8 + 0x42714)" * (pointer_expression "*(code **)(puVar8 + 0x42714)" * (cast_expression "(code **)(puVar8 + 0x42714)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x42714)" ( (binary_expression "puVar8 + 0x42714" identifier + number_literal) ))))) )) (argument_list "(__gp_1,*(undefined4 *)(puVar8 + 0x425e4))" ( identifier , (pointer_expression "*(undefined4 *)(puVar8 + 0x425e4)" * (cast_expression "(undefined4 *)(puVar8 + 0x425e4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x425e4)" ( (binary_expression "puVar8 + 0x425e4" identifier + number_literal) )))) ))) ;) (labeled_statement "LAB_0007d4f8:\n    __gp_1 = 0;" statement_identifier : (expression_statement "__gp_1 = 0;" (assignment_expression "__gp_1 = 0" identifier = number_literal) ;)) (expression_statement "puVar6 = *(undefined4 **)(puVar8 + 0x420f0);" (assignment_expression "puVar6 = *(undefined4 **)(puVar8 + 0x420f0)" identifier = (pointer_expression "*(undefined4 **)(puVar8 + 0x420f0)" * (cast_expression "(undefined4 **)(puVar8 + 0x420f0)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x420f0)" ( (binary_expression "puVar8 + 0x420f0" identifier + number_literal) ))))) ;) (expression_statement "(**(code **)(puVar8 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar8 + 0x42a64));" (call_expression "(**(code **)(puVar8 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar8 + 0x42a64))" (parenthesized_expression "(**(code **)(puVar8 + 0x42714))" ( (pointer_expression "**(code **)(puVar8 + 0x42714)" * (pointer_expression "*(code **)(puVar8 + 0x42714)" * (cast_expression "(code **)(puVar8 + 0x42714)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x42714)" ( (binary_expression "puVar8 + 0x42714" identifier + number_literal) ))))) )) (argument_list "(*piStack_2c,*(undefined4 *)(puVar8 + 0x42a64))" ( (pointer_expression "*piStack_2c" * identifier) , (pointer_expression "*(undefined4 *)(puVar8 + 0x42a64)" * (cast_expression "(undefined4 *)(puVar8 + 0x42a64)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x42a64)" ( (binary_expression "puVar8 + 0x42a64" identifier + number_literal) )))) ))) ;) (expression_statement "uVar2 = *puVar6;" (assignment_expression "uVar2 = *puVar6" identifier = (pointer_expression "*puVar6" * identifier)) ;) (expression_statement "*piStack_2c = 0;" (assignment_expression "*piStack_2c = 0" (pointer_expression "*piStack_2c" * identifier) = number_literal) ;) (expression_statement "iVar4 = *(int *)(puVar8 + 0x420ec);" (assignment_expression "iVar4 = *(int *)(puVar8 + 0x420ec)" identifier = (pointer_expression "*(int *)(puVar8 + 0x420ec)" * (cast_expression "(int *)(puVar8 + 0x420ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x420ec)" ( (binary_expression "puVar8 + 0x420ec" identifier + number_literal) ))))) ;) }))) (expression_statement "(**(code **)(puVar8 + 0x438d4))(uVar2,*(int *)(puVar8 + 0x420ec) + -0x428,iVar4 + -0x1db4);" (call_expression "(**(code **)(puVar8 + 0x438d4))(uVar2,*(int *)(puVar8 + 0x420ec) + -0x428,iVar4 + -0x1db4)" (parenthesized_expression "(**(code **)(puVar8 + 0x438d4))" ( (pointer_expression "**(code **)(puVar8 + 0x438d4)" * (pointer_expression "*(code **)(puVar8 + 0x438d4)" * (cast_expression "(code **)(puVar8 + 0x438d4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x438d4)" ( (binary_expression "puVar8 + 0x438d4" identifier + number_literal) ))))) )) (argument_list "(uVar2,*(int *)(puVar8 + 0x420ec) + -0x428,iVar4 + -0x1db4)" ( identifier , (binary_expression "*(int *)(puVar8 + 0x420ec) + -0x428" (pointer_expression "*(int *)(puVar8 + 0x420ec)" * (cast_expression "(int *)(puVar8 + 0x420ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x420ec)" ( (binary_expression "puVar8 + 0x420ec" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar4 + -0x1db4" identifier + number_literal) ))) ;) (expression_statement "(**(code **)(puVar8 + 0x42484))(*puVar6);" (call_expression "(**(code **)(puVar8 + 0x42484))(*puVar6)" (parenthesized_expression "(**(code **)(puVar8 + 0x42484))" ( (pointer_expression "**(code **)(puVar8 + 0x42484)" * (pointer_expression "*(code **)(puVar8 + 0x42484)" * (cast_expression "(code **)(puVar8 + 0x42484)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x42484)" ( (binary_expression "puVar8 + 0x42484" identifier + number_literal) ))))) )) (argument_list "(*puVar6)" ( (pointer_expression "*puVar6" * identifier) ))) ;) (expression_statement "iVar4 = 0;" (assignment_expression "iVar4 = 0" identifier = number_literal) ;) (labeled_statement "LAB_0007d33c:\n  if (iStack_64 != *piVar7) {\n    (**(code **)(puVar8 + 0x42b38))();\n    iVar4 = FUN_0007d2c0();\n    return iVar4;\n  }" statement_identifier : (if_statement "if (iStack_64 != *piVar7) {\n    (**(code **)(puVar8 + 0x42b38))();\n    iVar4 = FUN_0007d2c0();\n    return iVar4;\n  }" if (parenthesized_expression "(iStack_64 != *piVar7)" ( (binary_expression "iStack_64 != *piVar7" identifier != (pointer_expression "*piVar7" * identifier)) )) (compound_statement "{\n    (**(code **)(puVar8 + 0x42b38))();\n    iVar4 = FUN_0007d2c0();\n    return iVar4;\n  }" { (expression_statement "(**(code **)(puVar8 + 0x42b38))();" (call_expression "(**(code **)(puVar8 + 0x42b38))()" (parenthesized_expression "(**(code **)(puVar8 + 0x42b38))" ( (pointer_expression "**(code **)(puVar8 + 0x42b38)" * (pointer_expression "*(code **)(puVar8 + 0x42b38)" * (cast_expression "(code **)(puVar8 + 0x42b38)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar8 + 0x42b38)" ( (binary_expression "puVar8 + 0x42b38" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "iVar4 = FUN_0007d2c0();" (assignment_expression "iVar4 = FUN_0007d2c0()" identifier = (call_expression "FUN_0007d2c0()" identifier (argument_list "()" ( )))) ;) (return_statement "return iVar4;" return identifier ;) }))) (return_statement "return iVar4;" return identifier ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE (pointer_declarator * IDENT)) ))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) || (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ))) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , (binary_expression IDENT + LIT) ))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( LIT ))) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))))) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) }))) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , LIT , IDENT , IDENT ))))) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , LIT , IDENT , IDENT )))) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) (goto_statement goto statement_identifier ;) })) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (pointer_expression * IDENT) ))) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , (binary_expression IDENT + LIT) ))) ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( LIT ))) ;)) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , (binary_expression IDENT + LIT) , IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (pointer_expression * IDENT) ))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( LIT ))) ;) }))) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) )) (compound_statement { (return_statement return IDENT ;) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (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) , IDENT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression & IDENT) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( )))) , (binary_expression IDENT == LIT)) ))) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;)) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT )))) ;) }) while (parenthesized_expression ( (binary_expression IDENT < IDENT) )) ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (goto_statement goto statement_identifier ;) })) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * IDENT) ))) ;) })))) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * IDENT) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_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 (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression IDENT + LIT) ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * IDENT) ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT != (pointer_expression * IDENT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (return_statement return IDENT ;) }))) (return_statement return IDENT ;) })))
(function_definition "int load_pubkey(undefined *param_1,undefined *param_2,undefined *param_3,undefined4 *****param_4,\n               int param_5,undefined *param_6)\n\n{\n  undefined *puVar1;\n  undefined4 uVar2;\n  int *piVar3;\n  int iVar4;\n  int iVar5;\n  undefined4 *puVar6;\n  int unaff_s2;\n  undefined *unaff_s4;\n  int *piVar7;\n  undefined *puVar8;\n  code *pcVar9;\n  undefined *puStack_6c;\n  int iStack_68;\n  int iStack_64;\n  int iStack_5c;\n  undefined *puStack_58;\n  int iStack_54;\n  undefined *puStack_50;\n  undefined *puStack_4c;\n  int *piStack_2c;\n  undefined4 ****local_24;\n  undefined *local_20;\n  int local_1c;\n  \n  puVar1 = PTR___stack_chk_guard_000c008c;\n  puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n  local_1c = *(int *)PTR___stack_chk_guard_000c008c;\n  local_24 = param_4;\n  local_20 = param_1;\n  if (param_1 == (undefined *)0x0) {\n    if ((param_3 == (undefined *)0x0) || (param_2 == (undefined *)0x8)) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);\n      goto LAB_0007d24c;\n    }\n    param_1 = param_2;\n    unbuffer(*(undefined4 *)PTR_stdin_000bfcc8);\n    unaff_s2 = dup_bio_in(param_2);\nLAB_0007d018:\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (unaff_s2 == 0) {\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n    }\n    else {\n      if (param_2 == (undefined *)0x4) {\n        param_1 = (undefined *)0x0;\n        iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }\n      if (param_2 == (undefined *)0xa) {\n        param_1 = (undefined *)0x0;\n        unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }\n        if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }\n        if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }\n      puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n    }\nLAB_0007d05c:\n    iVar4 = 0;\n    param_1 = PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428;\n    param_3 = param_6;\n    (*(code *)PTR_BIO_printf_000c0b94)(*puVar6);\n  }\n  else {\n    if (param_2 != (undefined *)0x8) {\n      param_1 = (undefined *)0x72;\n      param_3 = param_2;\n      unaff_s2 = bio_open_default();\n      goto LAB_0007d018;\n    }\n    if (param_5 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);\nLAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n      goto LAB_0007d05c;\n    }\n    param_4 = &local_24;\n    param_3 = *(undefined **)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118);\n    iVar4 = (*(code *)PTR_ENGINE_load_public_key_000bfd2c)(param_5,param_1,param_3,param_4);\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (iVar4 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6);\n      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar6);\n      goto LAB_0007d24c;\n    }\n    (*(code *)PTR_BIO_free_000bf96c)(0);\n  }\nLAB_0007d07c:\n  if (local_1c == *(int *)puVar1) {\n    return iVar4;\n  }\n  iVar5 = local_1c;\n  puVar8 = PTR___stack_chk_fail_000bfdf8;\n  (*(code *)PTR___stack_chk_fail_000bfdf8)();\n  piVar7 = *(int **)(puVar8 + 0x42dcc);\n  puStack_50 = param_6;\n  puStack_58 = puVar1;\n  iStack_64 = *piVar7;\n  puStack_6c = param_3;\n  iStack_68 = iVar5;\n  iStack_5c = iVar4;\n  iStack_54 = unaff_s2;\n  puStack_4c = unaff_s4;\n  if (param_1 != (undefined *)0x8005) {\n    (**(code **)(puVar8 + 0x438d4))\n              (**(undefined4 **)(puVar8 + 0x420f0),*(int *)(puVar8 + 0x420ec) + -0x514,param_4);\n    iVar4 = 0;\n    goto LAB_0007d33c;\n  }\n  iVar4 = bio_open_default();\n  if (iVar4 == 0) {\n    iVar4 = 0;\n    goto LAB_0007d33c;\n  }\n  uVar2 = (**(code **)(puVar8 + 0x43538))(iVar4,0,*(undefined4 *)(puVar8 + 0x42274),&puStack_6c);\n  (**(code **)(puVar8 + 0x426ac))(iVar4);\n  if ((__gp_1 == 0) && (__gp_1 = (**(code **)(puVar8 + 0x4325c))(), __gp_1 == 0)) {\n    (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\nLAB_0007d4dc:\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n    if (piStack_2c != (int *)0x0) goto LAB_0007d4f8;\nLAB_0007d63c:\n    __gp_1 = 0;\n    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);\n    iVar4 = *(int *)(puVar8 + 0x420ec);\n    uVar2 = *puVar6;\n  }\n  else {\n    pcVar9 = *(code **)(puVar8 + 0x4267c);\n    if (piStack_2c == (int *)0x0) {\nLAB_0007d3dc:\n      iVar5 = 0;\n      iVar4 = (*pcVar9)(uVar2);\n      if (0 < iVar4) {\n        do {\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        } while (iVar5 < iVar4);\n      }\n      iVar4 = (**(code **)(puVar8 + 0x4267c))(__gp_1);\n      if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }\n      (**(code **)(puVar8 + 0x42714))(uVar2);\n      iVar4 = 1;\n      goto LAB_0007d33c;\n    }\n    if (*piStack_2c != 0) {\nLAB_0007d3d8:\n      pcVar9 = *(code **)(puVar8 + 0x4267c);\n      goto LAB_0007d3dc;\n    }\n    iVar4 = (**(code **)(puVar8 + 0x4325c))();\n    *piStack_2c = iVar4;\n    if (iVar4 != 0) goto LAB_0007d3d8;\n    pcVar9 = *(code **)(puVar8 + 0x42714);\nLAB_0007d5d8:\n    (*pcVar9)(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\nLAB_0007d4f8:\n    __gp_1 = 0;\n    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);\n    (**(code **)(puVar8 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar8 + 0x42a64));\n    uVar2 = *puVar6;\n    *piStack_2c = 0;\n    iVar4 = *(int *)(puVar8 + 0x420ec);\n  }\n  (**(code **)(puVar8 + 0x438d4))(uVar2,*(int *)(puVar8 + 0x420ec) + -0x428,iVar4 + -0x1db4);\n  (**(code **)(puVar8 + 0x42484))(*puVar6);\n  iVar4 = 0;\nLAB_0007d33c:\n  if (iStack_64 != *piVar7) {\n    (**(code **)(puVar8 + 0x42b38))();\n    iVar4 = FUN_0007d2c0();\n    return iVar4;\n  }\n  return iVar4;\n}" (primitive_type "int") (function_declarator "load_pubkey(undefined *param_1,undefined *param_2,undefined *param_3,undefined4 *****param_4,\n               int param_5,undefined *param_6)" (identifier "load_pubkey") (parameter_list "(undefined *param_1,undefined *param_2,undefined *param_3,undefined4 *****param_4,\n               int param_5,undefined *param_6)" (( "(") (parameter_declaration "undefined *param_1" (type_identifier "undefined") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) (, ",") (parameter_declaration "undefined *param_2" (type_identifier "undefined") (pointer_declarator "*param_2" (* "*") (identifier "param_2"))) (, ",") (parameter_declaration "undefined *param_3" (type_identifier "undefined") (pointer_declarator "*param_3" (* "*") (identifier "param_3"))) (, ",") (parameter_declaration "undefined4 *****param_4" (type_identifier "undefined4") (pointer_declarator "*****param_4" (* "*") (pointer_declarator "****param_4" (* "*") (pointer_declarator "***param_4" (* "*") (pointer_declarator "**param_4" (* "*") (pointer_declarator "*param_4" (* "*") (identifier "param_4"))))))) (, ",") (parameter_declaration "int param_5" (primitive_type "int") (identifier "param_5")) (, ",") (parameter_declaration "undefined *param_6" (type_identifier "undefined") (pointer_declarator "*param_6" (* "*") (identifier "param_6"))) () ")"))) (compound_statement "{\n  undefined *puVar1;\n  undefined4 uVar2;\n  int *piVar3;\n  int iVar4;\n  int iVar5;\n  undefined4 *puVar6;\n  int unaff_s2;\n  undefined *unaff_s4;\n  int *piVar7;\n  undefined *puVar8;\n  code *pcVar9;\n  undefined *puStack_6c;\n  int iStack_68;\n  int iStack_64;\n  int iStack_5c;\n  undefined *puStack_58;\n  int iStack_54;\n  undefined *puStack_50;\n  undefined *puStack_4c;\n  int *piStack_2c;\n  undefined4 ****local_24;\n  undefined *local_20;\n  int local_1c;\n  \n  puVar1 = PTR___stack_chk_guard_000c008c;\n  puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n  local_1c = *(int *)PTR___stack_chk_guard_000c008c;\n  local_24 = param_4;\n  local_20 = param_1;\n  if (param_1 == (undefined *)0x0) {\n    if ((param_3 == (undefined *)0x0) || (param_2 == (undefined *)0x8)) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);\n      goto LAB_0007d24c;\n    }\n    param_1 = param_2;\n    unbuffer(*(undefined4 *)PTR_stdin_000bfcc8);\n    unaff_s2 = dup_bio_in(param_2);\nLAB_0007d018:\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (unaff_s2 == 0) {\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n    }\n    else {\n      if (param_2 == (undefined *)0x4) {\n        param_1 = (undefined *)0x0;\n        iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }\n      if (param_2 == (undefined *)0xa) {\n        param_1 = (undefined *)0x0;\n        unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }\n        if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }\n        if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }\n      puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n    }\nLAB_0007d05c:\n    iVar4 = 0;\n    param_1 = PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428;\n    param_3 = param_6;\n    (*(code *)PTR_BIO_printf_000c0b94)(*puVar6);\n  }\n  else {\n    if (param_2 != (undefined *)0x8) {\n      param_1 = (undefined *)0x72;\n      param_3 = param_2;\n      unaff_s2 = bio_open_default();\n      goto LAB_0007d018;\n    }\n    if (param_5 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);\nLAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n      goto LAB_0007d05c;\n    }\n    param_4 = &local_24;\n    param_3 = *(undefined **)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118);\n    iVar4 = (*(code *)PTR_ENGINE_load_public_key_000bfd2c)(param_5,param_1,param_3,param_4);\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (iVar4 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6);\n      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar6);\n      goto LAB_0007d24c;\n    }\n    (*(code *)PTR_BIO_free_000bf96c)(0);\n  }\nLAB_0007d07c:\n  if (local_1c == *(int *)puVar1) {\n    return iVar4;\n  }\n  iVar5 = local_1c;\n  puVar8 = PTR___stack_chk_fail_000bfdf8;\n  (*(code *)PTR___stack_chk_fail_000bfdf8)();\n  piVar7 = *(int **)(puVar8 + 0x42dcc);\n  puStack_50 = param_6;\n  puStack_58 = puVar1;\n  iStack_64 = *piVar7;\n  puStack_6c = param_3;\n  iStack_68 = iVar5;\n  iStack_5c = iVar4;\n  iStack_54 = unaff_s2;\n  puStack_4c = unaff_s4;\n  if (param_1 != (undefined *)0x8005) {\n    (**(code **)(puVar8 + 0x438d4))\n              (**(undefined4 **)(puVar8 + 0x420f0),*(int *)(puVar8 + 0x420ec) + -0x514,param_4);\n    iVar4 = 0;\n    goto LAB_0007d33c;\n  }\n  iVar4 = bio_open_default();\n  if (iVar4 == 0) {\n    iVar4 = 0;\n    goto LAB_0007d33c;\n  }\n  uVar2 = (**(code **)(puVar8 + 0x43538))(iVar4,0,*(undefined4 *)(puVar8 + 0x42274),&puStack_6c);\n  (**(code **)(puVar8 + 0x426ac))(iVar4);\n  if ((__gp_1 == 0) && (__gp_1 = (**(code **)(puVar8 + 0x4325c))(), __gp_1 == 0)) {\n    (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\nLAB_0007d4dc:\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n    if (piStack_2c != (int *)0x0) goto LAB_0007d4f8;\nLAB_0007d63c:\n    __gp_1 = 0;\n    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);\n    iVar4 = *(int *)(puVar8 + 0x420ec);\n    uVar2 = *puVar6;\n  }\n  else {\n    pcVar9 = *(code **)(puVar8 + 0x4267c);\n    if (piStack_2c == (int *)0x0) {\nLAB_0007d3dc:\n      iVar5 = 0;\n      iVar4 = (*pcVar9)(uVar2);\n      if (0 < iVar4) {\n        do {\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        } while (iVar5 < iVar4);\n      }\n      iVar4 = (**(code **)(puVar8 + 0x4267c))(__gp_1);\n      if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }\n      (**(code **)(puVar8 + 0x42714))(uVar2);\n      iVar4 = 1;\n      goto LAB_0007d33c;\n    }\n    if (*piStack_2c != 0) {\nLAB_0007d3d8:\n      pcVar9 = *(code **)(puVar8 + 0x4267c);\n      goto LAB_0007d3dc;\n    }\n    iVar4 = (**(code **)(puVar8 + 0x4325c))();\n    *piStack_2c = iVar4;\n    if (iVar4 != 0) goto LAB_0007d3d8;\n    pcVar9 = *(code **)(puVar8 + 0x42714);\nLAB_0007d5d8:\n    (*pcVar9)(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\nLAB_0007d4f8:\n    __gp_1 = 0;\n    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);\n    (**(code **)(puVar8 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar8 + 0x42a64));\n    uVar2 = *puVar6;\n    *piStack_2c = 0;\n    iVar4 = *(int *)(puVar8 + 0x420ec);\n  }\n  (**(code **)(puVar8 + 0x438d4))(uVar2,*(int *)(puVar8 + 0x420ec) + -0x428,iVar4 + -0x1db4);\n  (**(code **)(puVar8 + 0x42484))(*puVar6);\n  iVar4 = 0;\nLAB_0007d33c:\n  if (iStack_64 != *piVar7) {\n    (**(code **)(puVar8 + 0x42b38))();\n    iVar4 = FUN_0007d2c0();\n    return iVar4;\n  }\n  return iVar4;\n}" ({ "{") (declaration "undefined *puVar1;" (type_identifier "undefined") (pointer_declarator "*puVar1" (* "*") (identifier "puVar1")) (; ";")) (declaration "undefined4 uVar2;" (type_identifier "undefined4") (identifier "uVar2") (; ";")) (declaration "int *piVar3;" (primitive_type "int") (pointer_declarator "*piVar3" (* "*") (identifier "piVar3")) (; ";")) (declaration "int iVar4;" (primitive_type "int") (identifier "iVar4") (; ";")) (declaration "int iVar5;" (primitive_type "int") (identifier "iVar5") (; ";")) (declaration "undefined4 *puVar6;" (type_identifier "undefined4") (pointer_declarator "*puVar6" (* "*") (identifier "puVar6")) (; ";")) (declaration "int unaff_s2;" (primitive_type "int") (identifier "unaff_s2") (; ";")) (declaration "undefined *unaff_s4;" (type_identifier "undefined") (pointer_declarator "*unaff_s4" (* "*") (identifier "unaff_s4")) (; ";")) (declaration "int *piVar7;" (primitive_type "int") (pointer_declarator "*piVar7" (* "*") (identifier "piVar7")) (; ";")) (declaration "undefined *puVar8;" (type_identifier "undefined") (pointer_declarator "*puVar8" (* "*") (identifier "puVar8")) (; ";")) (declaration "code *pcVar9;" (type_identifier "code") (pointer_declarator "*pcVar9" (* "*") (identifier "pcVar9")) (; ";")) (declaration "undefined *puStack_6c;" (type_identifier "undefined") (pointer_declarator "*puStack_6c" (* "*") (identifier "puStack_6c")) (; ";")) (declaration "int iStack_68;" (primitive_type "int") (identifier "iStack_68") (; ";")) (declaration "int iStack_64;" (primitive_type "int") (identifier "iStack_64") (; ";")) (declaration "int iStack_5c;" (primitive_type "int") (identifier "iStack_5c") (; ";")) (declaration "undefined *puStack_58;" (type_identifier "undefined") (pointer_declarator "*puStack_58" (* "*") (identifier "puStack_58")) (; ";")) (declaration "int iStack_54;" (primitive_type "int") (identifier "iStack_54") (; ";")) (declaration "undefined *puStack_50;" (type_identifier "undefined") (pointer_declarator "*puStack_50" (* "*") (identifier "puStack_50")) (; ";")) (declaration "undefined *puStack_4c;" (type_identifier "undefined") (pointer_declarator "*puStack_4c" (* "*") (identifier "puStack_4c")) (; ";")) (declaration "int *piStack_2c;" (primitive_type "int") (pointer_declarator "*piStack_2c" (* "*") (identifier "piStack_2c")) (; ";")) (declaration "undefined4 ****local_24;" (type_identifier "undefined4") (pointer_declarator "****local_24" (* "*") (pointer_declarator "***local_24" (* "*") (pointer_declarator "**local_24" (* "*") (pointer_declarator "*local_24" (* "*") (identifier "local_24"))))) (; ";")) (declaration "undefined *local_20;" (type_identifier "undefined") (pointer_declarator "*local_20" (* "*") (identifier "local_20")) (; ";")) (declaration "int local_1c;" (primitive_type "int") (identifier "local_1c") (; ";")) (expression_statement "puVar1 = PTR___stack_chk_guard_000c008c;" (assignment_expression "puVar1 = PTR___stack_chk_guard_000c008c" (identifier "puVar1") (= "=") (identifier "PTR___stack_chk_guard_000c008c")) (; ";")) (expression_statement "puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;" (assignment_expression "puVar6 = (undefined4 *)PTR_bio_err_000bf3b0" (identifier "puVar6") (= "=") (cast_expression "(undefined4 *)PTR_bio_err_000bf3b0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_bio_err_000bf3b0"))) (; ";")) (expression_statement "local_1c = *(int *)PTR___stack_chk_guard_000c008c;" (assignment_expression "local_1c = *(int *)PTR___stack_chk_guard_000c008c" (identifier "local_1c") (= "=") (pointer_expression "*(int *)PTR___stack_chk_guard_000c008c" (* "*") (cast_expression "(int *)PTR___stack_chk_guard_000c008c" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_guard_000c008c")))) (; ";")) (expression_statement "local_24 = param_4;" (assignment_expression "local_24 = param_4" (identifier "local_24") (= "=") (identifier "param_4")) (; ";")) (expression_statement "local_20 = param_1;" (assignment_expression "local_20 = param_1" (identifier "local_20") (= "=") (identifier "param_1")) (; ";")) (if_statement "if (param_1 == (undefined *)0x0) {\n    if ((param_3 == (undefined *)0x0) || (param_2 == (undefined *)0x8)) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);\n      goto LAB_0007d24c;\n    }\n    param_1 = param_2;\n    unbuffer(*(undefined4 *)PTR_stdin_000bfcc8);\n    unaff_s2 = dup_bio_in(param_2);\nLAB_0007d018:\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (unaff_s2 == 0) {\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n    }\n    else {\n      if (param_2 == (undefined *)0x4) {\n        param_1 = (undefined *)0x0;\n        iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }\n      if (param_2 == (undefined *)0xa) {\n        param_1 = (undefined *)0x0;\n        unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }\n        if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }\n        if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }\n      puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n    }\nLAB_0007d05c:\n    iVar4 = 0;\n    param_1 = PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428;\n    param_3 = param_6;\n    (*(code *)PTR_BIO_printf_000c0b94)(*puVar6);\n  }\n  else {\n    if (param_2 != (undefined *)0x8) {\n      param_1 = (undefined *)0x72;\n      param_3 = param_2;\n      unaff_s2 = bio_open_default();\n      goto LAB_0007d018;\n    }\n    if (param_5 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);\nLAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n      goto LAB_0007d05c;\n    }\n    param_4 = &local_24;\n    param_3 = *(undefined **)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118);\n    iVar4 = (*(code *)PTR_ENGINE_load_public_key_000bfd2c)(param_5,param_1,param_3,param_4);\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (iVar4 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6);\n      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar6);\n      goto LAB_0007d24c;\n    }\n    (*(code *)PTR_BIO_free_000bf96c)(0);\n  }" (if "if") (parenthesized_expression "(param_1 == (undefined *)0x0)" (( "(") (binary_expression "param_1 == (undefined *)0x0" (identifier "param_1") (== "==") (cast_expression "(undefined *)0x0" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    if ((param_3 == (undefined *)0x0) || (param_2 == (undefined *)0x8)) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);\n      goto LAB_0007d24c;\n    }\n    param_1 = param_2;\n    unbuffer(*(undefined4 *)PTR_stdin_000bfcc8);\n    unaff_s2 = dup_bio_in(param_2);\nLAB_0007d018:\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (unaff_s2 == 0) {\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n    }\n    else {\n      if (param_2 == (undefined *)0x4) {\n        param_1 = (undefined *)0x0;\n        iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }\n      if (param_2 == (undefined *)0xa) {\n        param_1 = (undefined *)0x0;\n        unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }\n        if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }\n        if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }\n      puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n    }\nLAB_0007d05c:\n    iVar4 = 0;\n    param_1 = PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428;\n    param_3 = param_6;\n    (*(code *)PTR_BIO_printf_000c0b94)(*puVar6);\n  }" ({ "{") (if_statement "if ((param_3 == (undefined *)0x0) || (param_2 == (undefined *)0x8)) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);\n      goto LAB_0007d24c;\n    }" (if "if") (parenthesized_expression "((param_3 == (undefined *)0x0) || (param_2 == (undefined *)0x8))" (( "(") (binary_expression "(param_3 == (undefined *)0x0) || (param_2 == (undefined *)0x8)" (parenthesized_expression "(param_3 == (undefined *)0x0)" (( "(") (binary_expression "param_3 == (undefined *)0x0" (identifier "param_3") (== "==") (cast_expression "(undefined *)0x0" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (|| "||") (parenthesized_expression "(param_2 == (undefined *)0x8)" (( "(") (binary_expression "param_2 == (undefined *)0x8" (identifier "param_2") (== "==") (cast_expression "(undefined *)0x8" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x8"))) () ")"))) () ")")) (compound_statement "{\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);\n      goto LAB_0007d24c;\n    }" ({ "{") (expression_statement "(*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);" (call_expression "(*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0)" (parenthesized_expression "(*(code *)PTR_BIO_printf_000c0b94)" (( "(") (pointer_expression "*(code *)PTR_BIO_printf_000c0b94" (* "*") (cast_expression "(code *)PTR_BIO_printf_000c0b94" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_BIO_printf_000c0b94"))) () ")")) (argument_list "(*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0)" (( "(") (pointer_expression "*(undefined4 *)PTR_bio_err_000bf3b0" (* "*") (cast_expression "(undefined4 *)PTR_bio_err_000bf3b0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_bio_err_000bf3b0"))) (, ",") (binary_expression "PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0" (identifier "PTR_s_Can_t_parse___s__as_a_number_000bf3ac") (+ "+") (number_literal "-0x4a0")) () ")"))) (; ";")) (goto_statement "goto LAB_0007d24c;" (goto "goto") (statement_identifier "LAB_0007d24c") (; ";")) (} "}"))) (expression_statement "param_1 = param_2;" (assignment_expression "param_1 = param_2" (identifier "param_1") (= "=") (identifier "param_2")) (; ";")) (expression_statement "unbuffer(*(undefined4 *)PTR_stdin_000bfcc8);" (call_expression "unbuffer(*(undefined4 *)PTR_stdin_000bfcc8)" (identifier "unbuffer") (argument_list "(*(undefined4 *)PTR_stdin_000bfcc8)" (( "(") (pointer_expression "*(undefined4 *)PTR_stdin_000bfcc8" (* "*") (cast_expression "(undefined4 *)PTR_stdin_000bfcc8" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_stdin_000bfcc8"))) () ")"))) (; ";")) (expression_statement "unaff_s2 = dup_bio_in(param_2);" (assignment_expression "unaff_s2 = dup_bio_in(param_2)" (identifier "unaff_s2") (= "=") (call_expression "dup_bio_in(param_2)" (identifier "dup_bio_in") (argument_list "(param_2)" (( "(") (identifier "param_2") () ")")))) (; ";")) (labeled_statement "LAB_0007d018:\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;" (statement_identifier "LAB_0007d018") (: ":") (expression_statement "puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;" (assignment_expression "puVar6 = (undefined4 *)PTR_bio_err_000bf3b0" (identifier "puVar6") (= "=") (cast_expression "(undefined4 *)PTR_bio_err_000bf3b0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_bio_err_000bf3b0"))) (; ";"))) (if_statement "if (unaff_s2 == 0) {\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n    }\n    else {\n      if (param_2 == (undefined *)0x4) {\n        param_1 = (undefined *)0x0;\n        iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }\n      if (param_2 == (undefined *)0xa) {\n        param_1 = (undefined *)0x0;\n        unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }\n        if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }\n        if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }\n      puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n    }" (if "if") (parenthesized_expression "(unaff_s2 == 0)" (( "(") (binary_expression "unaff_s2 == 0" (identifier "unaff_s2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n    }" ({ "{") (expression_statement "(*(code *)PTR_BIO_free_000bf96c)(0);" (call_expression "(*(code *)PTR_BIO_free_000bf96c)(0)" (parenthesized_expression "(*(code *)PTR_BIO_free_000bf96c)" (( "(") (pointer_expression "*(code *)PTR_BIO_free_000bf96c" (* "*") (cast_expression "(code *)PTR_BIO_free_000bf96c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_BIO_free_000bf96c"))) () ")")) (argument_list "(0)" (( "(") (number_literal "0") () ")"))) (; ";")) (} "}")) (else_clause "else {\n      if (param_2 == (undefined *)0x4) {\n        param_1 = (undefined *)0x0;\n        iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }\n      if (param_2 == (undefined *)0xa) {\n        param_1 = (undefined *)0x0;\n        unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }\n        if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }\n        if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }\n      puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n    }" (else "else") (compound_statement "{\n      if (param_2 == (undefined *)0x4) {\n        param_1 = (undefined *)0x0;\n        iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }\n      if (param_2 == (undefined *)0xa) {\n        param_1 = (undefined *)0x0;\n        unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }\n        if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }\n        if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }\n      puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n    }" ({ "{") (if_statement "if (param_2 == (undefined *)0x4) {\n        param_1 = (undefined *)0x0;\n        iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }" (if "if") (parenthesized_expression "(param_2 == (undefined *)0x4)" (( "(") (binary_expression "param_2 == (undefined *)0x4" (identifier "param_2") (== "==") (cast_expression "(undefined *)0x4" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x4"))) () ")")) (compound_statement "{\n        param_1 = (undefined *)0x0;\n        iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);\n        goto LAB_0007d17c;\n      }" ({ "{") (expression_statement "param_1 = (undefined *)0x0;" (assignment_expression "param_1 = (undefined *)0x0" (identifier "param_1") (= "=") (cast_expression "(undefined *)0x0" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);" (assignment_expression "iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2)" (identifier "iVar4") (= "=") (call_expression "(*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_d2i_PUBKEY_bio_000c08f0)" (( "(") (pointer_expression "*(code *)PTR_d2i_PUBKEY_bio_000c08f0" (* "*") (cast_expression "(code *)PTR_d2i_PUBKEY_bio_000c08f0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_d2i_PUBKEY_bio_000c08f0"))) () ")")) (argument_list "(unaff_s2)" (( "(") (identifier "unaff_s2") () ")")))) (; ";")) (goto_statement "goto LAB_0007d17c;" (goto "goto") (statement_identifier "LAB_0007d17c") (; ";")) (} "}"))) (if_statement "if (param_2 == (undefined *)0xa) {\n        param_1 = (undefined *)0x0;\n        unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }\n      else {\n        if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }\n        if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }\n        if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }" (if "if") (parenthesized_expression "(param_2 == (undefined *)0xa)" (( "(") (binary_expression "param_2 == (undefined *)0xa" (identifier "param_2") (== "==") (cast_expression "(undefined *)0xa" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0xa"))) () ")")) (compound_statement "{\n        param_1 = (undefined *)0x0;\n        unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);\njoined_r0x0007d138:\n        if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }\n      }" ({ "{") (expression_statement "param_1 = (undefined *)0x0;" (assignment_expression "param_1 = (undefined *)0x0" (identifier "param_1") (= "=") (cast_expression "(undefined *)0x0" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);" (assignment_expression "unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2)" (identifier "unaff_s4") (= "=") (cast_expression "(undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)" (( "(") (pointer_expression "*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c" (* "*") (cast_expression "(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_d2i_RSAPublicKey_bio_000bfa0c"))) () ")")) (argument_list "(unaff_s2)" (( "(") (identifier "unaff_s2") () ")"))))) (; ";")) (labeled_statement "joined_r0x0007d138:\n        if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }" (statement_identifier "joined_r0x0007d138") (: ":") (if_statement "if (unaff_s4 != (undefined *)0x0) {\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }" (if "if") (parenthesized_expression "(unaff_s4 != (undefined *)0x0)" (( "(") (binary_expression "unaff_s4 != (undefined *)0x0" (identifier "unaff_s4") (!= "!=") (cast_expression "(undefined *)0x0" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();\n          if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }\n          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);\nLAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);\n          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n          if (iVar4 != 0) goto LAB_0007d07c;\n          goto LAB_0007d05c;\n        }" ({ "{") (expression_statement "iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();" (assignment_expression "iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)()" (identifier "iVar4") (= "=") (call_expression "(*(code *)PTR_EVP_PKEY_new_000c0864)()" (parenthesized_expression "(*(code *)PTR_EVP_PKEY_new_000c0864)" (( "(") (pointer_expression "*(code *)PTR_EVP_PKEY_new_000c0864" (* "*") (cast_expression "(code *)PTR_EVP_PKEY_new_000c0864" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_EVP_PKEY_new_000c0864"))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (iVar4 != 0) {\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }" (if "if") (parenthesized_expression "(iVar4 != 0)" (( "(") (binary_expression "iVar4 != 0" (identifier "iVar4") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            param_1 = unaff_s4;\n            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);\n          }" ({ "{") (expression_statement "param_1 = unaff_s4;" (assignment_expression "param_1 = unaff_s4" (identifier "param_1") (= "=") (identifier "unaff_s4")) (; ";")) (expression_statement "(*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);" (call_expression "(*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4)" (parenthesized_expression "(*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)" (( "(") (pointer_expression "*(code *)PTR_EVP_PKEY_set1_RSA_000c0448" (* "*") (cast_expression "(code *)PTR_EVP_PKEY_set1_RSA_000c0448" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_EVP_PKEY_set1_RSA_000c0448"))) () ")")) (argument_list "(iVar4)" (( "(") (identifier "iVar4") () ")"))) (; ";")) (} "}"))) (expression_statement "(*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);" (call_expression "(*(code *)PTR_RSA_free_000bf9e0)(unaff_s4)" (parenthesized_expression "(*(code *)PTR_RSA_free_000bf9e0)" (( "(") (pointer_expression "*(code *)PTR_RSA_free_000bf9e0" (* "*") (cast_expression "(code *)PTR_RSA_free_000bf9e0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_RSA_free_000bf9e0"))) () ")")) (argument_list "(unaff_s4)" (( "(") (identifier "unaff_s4") () ")"))) (; ";")) (labeled_statement "LAB_0007d17c:\n          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);" (statement_identifier "LAB_0007d17c") (: ":") (expression_statement "(*(code *)PTR_BIO_free_000bf96c)(unaff_s2);" (call_expression "(*(code *)PTR_BIO_free_000bf96c)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_BIO_free_000bf96c)" (( "(") (pointer_expression "*(code *)PTR_BIO_free_000bf96c" (* "*") (cast_expression "(code *)PTR_BIO_free_000bf96c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_BIO_free_000bf96c"))) () ")")) (argument_list "(unaff_s2)" (( "(") (identifier "unaff_s2") () ")"))) (; ";"))) (expression_statement "puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;" (assignment_expression "puVar6 = (undefined4 *)PTR_bio_err_000bf3b0" (identifier "puVar6") (= "=") (cast_expression "(undefined4 *)PTR_bio_err_000bf3b0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_bio_err_000bf3b0"))) (; ";")) (if_statement "if (iVar4 != 0) goto LAB_0007d07c;" (if "if") (parenthesized_expression "(iVar4 != 0)" (( "(") (binary_expression "iVar4 != 0" (identifier "iVar4") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_0007d07c;" (goto "goto") (statement_identifier "LAB_0007d07c") (; ";"))) (goto_statement "goto LAB_0007d05c;" (goto "goto") (statement_identifier "LAB_0007d05c") (; ";")) (} "}")))) (} "}")) (else_clause "else {\n        if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }\n        if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }\n        if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }" (else "else") (compound_statement "{\n        if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }\n        if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }\n        if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }\n      }" ({ "{") (if_statement "if (param_2 == (undefined *)0x8009) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }" (if "if") (parenthesized_expression "(param_2 == (undefined *)0x8009)" (( "(") (binary_expression "param_2 == (undefined *)0x8009" (identifier "param_2") (== "==") (cast_expression "(undefined *)0x8009" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x8009"))) () ")")) (compound_statement "{\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto joined_r0x0007d138;\n        }" ({ "{") (expression_statement "param_4 = &local_24;" (assignment_expression "param_4 = &local_24" (identifier "param_4") (= "=") (pointer_expression "&local_24" (& "&") (identifier "local_24"))) (; ";")) (expression_statement "param_1 = (undefined *)0x0;" (assignment_expression "param_1 = (undefined *)0x0" (identifier "param_1") (= "=") (cast_expression "(undefined *)0x0" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "param_3 = PTR_password_callback_000bf534;" (assignment_expression "param_3 = PTR_password_callback_000bf534" (identifier "param_3") (= "=") (identifier "PTR_password_callback_000bf534")) (; ";")) (expression_statement "unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);" (assignment_expression "unaff_s4 = (undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4)" (identifier "unaff_s4") (= "=") (cast_expression "(undefined *)\n                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)\n                               (unaff_s2,0,PTR_password_callback_000bf534,param_4)" (parenthesized_expression "(*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)" (( "(") (pointer_expression "*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48" (* "*") (cast_expression "(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_PEM_read_bio_RSAPublicKey_000c0b48"))) () ")")) (argument_list "(unaff_s2,0,PTR_password_callback_000bf534,param_4)" (( "(") (identifier "unaff_s2") (, ",") (number_literal "0") (, ",") (identifier "PTR_password_callback_000bf534") (, ",") (identifier "param_4") () ")"))))) (; ";")) (goto_statement "goto joined_r0x0007d138;" (goto "goto") (statement_identifier "joined_r0x0007d138") (; ";")) (} "}"))) (if_statement "if (param_2 == (undefined *)0x8005) {\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }" (if "if") (parenthesized_expression "(param_2 == (undefined *)0x8005)" (( "(") (binary_expression "param_2 == (undefined *)0x8005" (identifier "param_2") (== "==") (cast_expression "(undefined *)0x8005" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x8005"))) () ")")) (compound_statement "{\n          param_4 = &local_24;\n          param_1 = (undefined *)0x0;\n          param_3 = PTR_password_callback_000bf534;\n          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);\n          goto LAB_0007d17c;\n        }" ({ "{") (expression_statement "param_4 = &local_24;" (assignment_expression "param_4 = &local_24" (identifier "param_4") (= "=") (pointer_expression "&local_24" (& "&") (identifier "local_24"))) (; ";")) (expression_statement "param_1 = (undefined *)0x0;" (assignment_expression "param_1 = (undefined *)0x0" (identifier "param_1") (= "=") (cast_expression "(undefined *)0x0" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "param_3 = PTR_password_callback_000bf534;" (assignment_expression "param_3 = PTR_password_callback_000bf534" (identifier "param_3") (= "=") (identifier "PTR_password_callback_000bf534")) (; ";")) (expression_statement "iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);" (assignment_expression "iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4)" (identifier "iVar4") (= "=") (call_expression "(*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)\n                            (unaff_s2,0,PTR_password_callback_000bf534,param_4)" (parenthesized_expression "(*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)" (( "(") (pointer_expression "*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c" (* "*") (cast_expression "(code *)PTR_PEM_read_bio_PUBKEY_000bf71c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_PEM_read_bio_PUBKEY_000bf71c"))) () ")")) (argument_list "(unaff_s2,0,PTR_password_callback_000bf534,param_4)" (( "(") (identifier "unaff_s2") (, ",") (number_literal "0") (, ",") (identifier "PTR_password_callback_000bf534") (, ",") (identifier "param_4") () ")")))) (; ";")) (goto_statement "goto LAB_0007d17c;" (goto "goto") (statement_identifier "LAB_0007d17c") (; ";")) (} "}"))) (if_statement "if (param_2 == (undefined *)0xb) {\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }" (if "if") (parenthesized_expression "(param_2 == (undefined *)0xb)" (( "(") (binary_expression "param_2 == (undefined *)0xb" (identifier "param_2") (== "==") (cast_expression "(undefined *)0xb" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0xb"))) () ")")) (compound_statement "{\n          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);\n          goto LAB_0007d17c;\n        }" ({ "{") (expression_statement "iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);" (assignment_expression "iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2)" (identifier "iVar4") (= "=") (call_expression "(*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_b2i_PublicKey_bio_000c0248)" (( "(") (pointer_expression "*(code *)PTR_b2i_PublicKey_bio_000c0248" (* "*") (cast_expression "(code *)PTR_b2i_PublicKey_bio_000c0248" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_b2i_PublicKey_bio_000c0248"))) () ")")) (argument_list "(unaff_s2)" (( "(") (identifier "unaff_s2") () ")")))) (; ";")) (goto_statement "goto LAB_0007d17c;" (goto "goto") (statement_identifier "LAB_0007d17c") (; ";")) (} "}"))) (} "}")))) (expression_statement "puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;" (assignment_expression "puVar6 = (undefined4 *)PTR_bio_err_000bf3b0" (identifier "puVar6") (= "=") (cast_expression "(undefined4 *)PTR_bio_err_000bf3b0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_bio_err_000bf3b0"))) (; ";")) (expression_statement "(*(code *)PTR_BIO_free_000bf96c)(unaff_s2);" (call_expression "(*(code *)PTR_BIO_free_000bf96c)(unaff_s2)" (parenthesized_expression "(*(code *)PTR_BIO_free_000bf96c)" (( "(") (pointer_expression "*(code *)PTR_BIO_free_000bf96c" (* "*") (cast_expression "(code *)PTR_BIO_free_000bf96c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_BIO_free_000bf96c"))) () ")")) (argument_list "(unaff_s2)" (( "(") (identifier "unaff_s2") () ")"))) (; ";")) (} "}")))) (labeled_statement "LAB_0007d05c:\n    iVar4 = 0;" (statement_identifier "LAB_0007d05c") (: ":") (expression_statement "iVar4 = 0;" (assignment_expression "iVar4 = 0" (identifier "iVar4") (= "=") (number_literal "0")) (; ";"))) (expression_statement "param_1 = PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428;" (assignment_expression "param_1 = PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428" (identifier "param_1") (= "=") (binary_expression "PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428" (identifier "PTR_s_Can_t_parse___s__as_a_number_000bf3ac") (+ "+") (number_literal "-0x428"))) (; ";")) (expression_statement "param_3 = param_6;" (assignment_expression "param_3 = param_6" (identifier "param_3") (= "=") (identifier "param_6")) (; ";")) (expression_statement "(*(code *)PTR_BIO_printf_000c0b94)(*puVar6);" (call_expression "(*(code *)PTR_BIO_printf_000c0b94)(*puVar6)" (parenthesized_expression "(*(code *)PTR_BIO_printf_000c0b94)" (( "(") (pointer_expression "*(code *)PTR_BIO_printf_000c0b94" (* "*") (cast_expression "(code *)PTR_BIO_printf_000c0b94" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_BIO_printf_000c0b94"))) () ")")) (argument_list "(*puVar6)" (( "(") (pointer_expression "*puVar6" (* "*") (identifier "puVar6")) () ")"))) (; ";")) (} "}")) (else_clause "else {\n    if (param_2 != (undefined *)0x8) {\n      param_1 = (undefined *)0x72;\n      param_3 = param_2;\n      unaff_s2 = bio_open_default();\n      goto LAB_0007d018;\n    }\n    if (param_5 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);\nLAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n      goto LAB_0007d05c;\n    }\n    param_4 = &local_24;\n    param_3 = *(undefined **)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118);\n    iVar4 = (*(code *)PTR_ENGINE_load_public_key_000bfd2c)(param_5,param_1,param_3,param_4);\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (iVar4 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6);\n      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar6);\n      goto LAB_0007d24c;\n    }\n    (*(code *)PTR_BIO_free_000bf96c)(0);\n  }" (else "else") (compound_statement "{\n    if (param_2 != (undefined *)0x8) {\n      param_1 = (undefined *)0x72;\n      param_3 = param_2;\n      unaff_s2 = bio_open_default();\n      goto LAB_0007d018;\n    }\n    if (param_5 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);\nLAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n      goto LAB_0007d05c;\n    }\n    param_4 = &local_24;\n    param_3 = *(undefined **)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118);\n    iVar4 = (*(code *)PTR_ENGINE_load_public_key_000bfd2c)(param_5,param_1,param_3,param_4);\n    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;\n    if (iVar4 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6);\n      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar6);\n      goto LAB_0007d24c;\n    }\n    (*(code *)PTR_BIO_free_000bf96c)(0);\n  }" ({ "{") (if_statement "if (param_2 != (undefined *)0x8) {\n      param_1 = (undefined *)0x72;\n      param_3 = param_2;\n      unaff_s2 = bio_open_default();\n      goto LAB_0007d018;\n    }" (if "if") (parenthesized_expression "(param_2 != (undefined *)0x8)" (( "(") (binary_expression "param_2 != (undefined *)0x8" (identifier "param_2") (!= "!=") (cast_expression "(undefined *)0x8" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x8"))) () ")")) (compound_statement "{\n      param_1 = (undefined *)0x72;\n      param_3 = param_2;\n      unaff_s2 = bio_open_default();\n      goto LAB_0007d018;\n    }" ({ "{") (expression_statement "param_1 = (undefined *)0x72;" (assignment_expression "param_1 = (undefined *)0x72" (identifier "param_1") (= "=") (cast_expression "(undefined *)0x72" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x72"))) (; ";")) (expression_statement "param_3 = param_2;" (assignment_expression "param_3 = param_2" (identifier "param_3") (= "=") (identifier "param_2")) (; ";")) (expression_statement "unaff_s2 = bio_open_default();" (assignment_expression "unaff_s2 = bio_open_default()" (identifier "unaff_s2") (= "=") (call_expression "bio_open_default()" (identifier "bio_open_default") (argument_list "()" (( "(") () ")")))) (; ";")) (goto_statement "goto LAB_0007d018;" (goto "goto") (statement_identifier "LAB_0007d018") (; ";")) (} "}"))) (if_statement "if (param_5 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);\nLAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n      goto LAB_0007d05c;\n    }" (if "if") (parenthesized_expression "(param_5 == 0)" (( "(") (binary_expression "param_5 == 0" (identifier "param_5") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);\nLAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);\n      goto LAB_0007d05c;\n    }" ({ "{") (expression_statement "(*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);" (call_expression "(*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488)" (parenthesized_expression "(*(code *)PTR_BIO_printf_000c0b94)" (( "(") (pointer_expression "*(code *)PTR_BIO_printf_000c0b94" (* "*") (cast_expression "(code *)PTR_BIO_printf_000c0b94" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_BIO_printf_000c0b94"))) () ")")) (argument_list "(*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488)" (( "(") (pointer_expression "*(undefined4 *)PTR_bio_err_000bf3b0" (* "*") (cast_expression "(undefined4 *)PTR_bio_err_000bf3b0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_bio_err_000bf3b0"))) (, ",") (binary_expression "PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488" (identifier "PTR_s_Can_t_parse___s__as_a_number_000bf3ac") (+ "+") (number_literal "-0x488")) () ")"))) (; ";")) (labeled_statement "LAB_0007d24c:\n      (*(code *)PTR_BIO_free_000bf96c)(0);" (statement_identifier "LAB_0007d24c") (: ":") (expression_statement "(*(code *)PTR_BIO_free_000bf96c)(0);" (call_expression "(*(code *)PTR_BIO_free_000bf96c)(0)" (parenthesized_expression "(*(code *)PTR_BIO_free_000bf96c)" (( "(") (pointer_expression "*(code *)PTR_BIO_free_000bf96c" (* "*") (cast_expression "(code *)PTR_BIO_free_000bf96c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_BIO_free_000bf96c"))) () ")")) (argument_list "(0)" (( "(") (number_literal "0") () ")"))) (; ";"))) (goto_statement "goto LAB_0007d05c;" (goto "goto") (statement_identifier "LAB_0007d05c") (; ";")) (} "}"))) (expression_statement "param_4 = &local_24;" (assignment_expression "param_4 = &local_24" (identifier "param_4") (= "=") (pointer_expression "&local_24" (& "&") (identifier "local_24"))) (; ";")) (expression_statement "param_3 = *(undefined **)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118);" (assignment_expression "param_3 = *(undefined **)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118)" (identifier "param_3") (= "=") (pointer_expression "*(undefined **)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118)" (* "*") (cast_expression "(undefined **)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118)" (( "(") (binary_expression "PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118" (identifier "PTR_PTR_EVP_PKEY_decrypt_init_000bf388") (+ "+") (number_literal "0x2118")) () ")"))))) (; ";")) (expression_statement "iVar4 = (*(code *)PTR_ENGINE_load_public_key_000bfd2c)(param_5,param_1,param_3,param_4);" (assignment_expression "iVar4 = (*(code *)PTR_ENGINE_load_public_key_000bfd2c)(param_5,param_1,param_3,param_4)" (identifier "iVar4") (= "=") (call_expression "(*(code *)PTR_ENGINE_load_public_key_000bfd2c)(param_5,param_1,param_3,param_4)" (parenthesized_expression "(*(code *)PTR_ENGINE_load_public_key_000bfd2c)" (( "(") (pointer_expression "*(code *)PTR_ENGINE_load_public_key_000bfd2c" (* "*") (cast_expression "(code *)PTR_ENGINE_load_public_key_000bfd2c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_ENGINE_load_public_key_000bfd2c"))) () ")")) (argument_list "(param_5,param_1,param_3,param_4)" (( "(") (identifier "param_5") (, ",") (identifier "param_1") (, ",") (identifier "param_3") (, ",") (identifier "param_4") () ")")))) (; ";")) (expression_statement "puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;" (assignment_expression "puVar6 = (undefined4 *)PTR_bio_err_000bf3b0" (identifier "puVar6") (= "=") (cast_expression "(undefined4 *)PTR_bio_err_000bf3b0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_bio_err_000bf3b0"))) (; ";")) (if_statement "if (iVar4 == 0) {\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6);\n      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar6);\n      goto LAB_0007d24c;\n    }" (if "if") (parenthesized_expression "(iVar4 == 0)" (( "(") (binary_expression "iVar4 == 0" (identifier "iVar4") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      (*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6);\n      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar6);\n      goto LAB_0007d24c;\n    }" ({ "{") (expression_statement "(*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6);" (call_expression "(*(code *)PTR_BIO_printf_000c0b94)\n                (*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6)" (parenthesized_expression "(*(code *)PTR_BIO_printf_000c0b94)" (( "(") (pointer_expression "*(code *)PTR_BIO_printf_000c0b94" (* "*") (cast_expression "(code *)PTR_BIO_printf_000c0b94" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_BIO_printf_000c0b94"))) () ")")) (argument_list "(*(undefined4 *)PTR_bio_err_000bf3b0,\n                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6)" (( "(") (pointer_expression "*(undefined4 *)PTR_bio_err_000bf3b0" (* "*") (cast_expression "(undefined4 *)PTR_bio_err_000bf3b0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_bio_err_000bf3b0"))) (, ",") (binary_expression "PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470" (identifier "PTR_s_Can_t_parse___s__as_a_number_000bf3ac") (+ "+") (number_literal "-0x470")) (, ",") (identifier "param_6") () ")"))) (; ";")) (expression_statement "(*(code *)PTR_ERR_print_errors_000bf744)(*puVar6);" (call_expression "(*(code *)PTR_ERR_print_errors_000bf744)(*puVar6)" (parenthesized_expression "(*(code *)PTR_ERR_print_errors_000bf744)" (( "(") (pointer_expression "*(code *)PTR_ERR_print_errors_000bf744" (* "*") (cast_expression "(code *)PTR_ERR_print_errors_000bf744" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_ERR_print_errors_000bf744"))) () ")")) (argument_list "(*puVar6)" (( "(") (pointer_expression "*puVar6" (* "*") (identifier "puVar6")) () ")"))) (; ";")) (goto_statement "goto LAB_0007d24c;" (goto "goto") (statement_identifier "LAB_0007d24c") (; ";")) (} "}"))) (expression_statement "(*(code *)PTR_BIO_free_000bf96c)(0);" (call_expression "(*(code *)PTR_BIO_free_000bf96c)(0)" (parenthesized_expression "(*(code *)PTR_BIO_free_000bf96c)" (( "(") (pointer_expression "*(code *)PTR_BIO_free_000bf96c" (* "*") (cast_expression "(code *)PTR_BIO_free_000bf96c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_BIO_free_000bf96c"))) () ")")) (argument_list "(0)" (( "(") (number_literal "0") () ")"))) (; ";")) (} "}")))) (labeled_statement "LAB_0007d07c:\n  if (local_1c == *(int *)puVar1) {\n    return iVar4;\n  }" (statement_identifier "LAB_0007d07c") (: ":") (if_statement "if (local_1c == *(int *)puVar1) {\n    return iVar4;\n  }" (if "if") (parenthesized_expression "(local_1c == *(int *)puVar1)" (( "(") (binary_expression "local_1c == *(int *)puVar1" (identifier "local_1c") (== "==") (pointer_expression "*(int *)puVar1" (* "*") (cast_expression "(int *)puVar1" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar1")))) () ")")) (compound_statement "{\n    return iVar4;\n  }" ({ "{") (return_statement "return iVar4;" (return "return") (identifier "iVar4") (; ";")) (} "}")))) (expression_statement "iVar5 = local_1c;" (assignment_expression "iVar5 = local_1c" (identifier "iVar5") (= "=") (identifier "local_1c")) (; ";")) (expression_statement "puVar8 = PTR___stack_chk_fail_000bfdf8;" (assignment_expression "puVar8 = PTR___stack_chk_fail_000bfdf8" (identifier "puVar8") (= "=") (identifier "PTR___stack_chk_fail_000bfdf8")) (; ";")) (expression_statement "(*(code *)PTR___stack_chk_fail_000bfdf8)();" (call_expression "(*(code *)PTR___stack_chk_fail_000bfdf8)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_000bfdf8)" (( "(") (pointer_expression "*(code *)PTR___stack_chk_fail_000bfdf8" (* "*") (cast_expression "(code *)PTR___stack_chk_fail_000bfdf8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_fail_000bfdf8"))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "piVar7 = *(int **)(puVar8 + 0x42dcc);" (assignment_expression "piVar7 = *(int **)(puVar8 + 0x42dcc)" (identifier "piVar7") (= "=") (pointer_expression "*(int **)(puVar8 + 0x42dcc)" (* "*") (cast_expression "(int **)(puVar8 + 0x42dcc)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + 0x42dcc)" (( "(") (binary_expression "puVar8 + 0x42dcc" (identifier "puVar8") (+ "+") (number_literal "0x42dcc")) () ")"))))) (; ";")) (expression_statement "puStack_50 = param_6;" (assignment_expression "puStack_50 = param_6" (identifier "puStack_50") (= "=") (identifier "param_6")) (; ";")) (expression_statement "puStack_58 = puVar1;" (assignment_expression "puStack_58 = puVar1" (identifier "puStack_58") (= "=") (identifier "puVar1")) (; ";")) (expression_statement "iStack_64 = *piVar7;" (assignment_expression "iStack_64 = *piVar7" (identifier "iStack_64") (= "=") (pointer_expression "*piVar7" (* "*") (identifier "piVar7"))) (; ";")) (expression_statement "puStack_6c = param_3;" (assignment_expression "puStack_6c = param_3" (identifier "puStack_6c") (= "=") (identifier "param_3")) (; ";")) (expression_statement "iStack_68 = iVar5;" (assignment_expression "iStack_68 = iVar5" (identifier "iStack_68") (= "=") (identifier "iVar5")) (; ";")) (expression_statement "iStack_5c = iVar4;" (assignment_expression "iStack_5c = iVar4" (identifier "iStack_5c") (= "=") (identifier "iVar4")) (; ";")) (expression_statement "iStack_54 = unaff_s2;" (assignment_expression "iStack_54 = unaff_s2" (identifier "iStack_54") (= "=") (identifier "unaff_s2")) (; ";")) (expression_statement "puStack_4c = unaff_s4;" (assignment_expression "puStack_4c = unaff_s4" (identifier "puStack_4c") (= "=") (identifier "unaff_s4")) (; ";")) (if_statement "if (param_1 != (undefined *)0x8005) {\n    (**(code **)(puVar8 + 0x438d4))\n              (**(undefined4 **)(puVar8 + 0x420f0),*(int *)(puVar8 + 0x420ec) + -0x514,param_4);\n    iVar4 = 0;\n    goto LAB_0007d33c;\n  }" (if "if") (parenthesized_expression "(param_1 != (undefined *)0x8005)" (( "(") (binary_expression "param_1 != (undefined *)0x8005" (identifier "param_1") (!= "!=") (cast_expression "(undefined *)0x8005" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x8005"))) () ")")) (compound_statement "{\n    (**(code **)(puVar8 + 0x438d4))\n              (**(undefined4 **)(puVar8 + 0x420f0),*(int *)(puVar8 + 0x420ec) + -0x514,param_4);\n    iVar4 = 0;\n    goto LAB_0007d33c;\n  }" ({ "{") (expression_statement "(**(code **)(puVar8 + 0x438d4))\n              (**(undefined4 **)(puVar8 + 0x420f0),*(int *)(puVar8 + 0x420ec) + -0x514,param_4);" (call_expression "(**(code **)(puVar8 + 0x438d4))\n              (**(undefined4 **)(puVar8 + 0x420f0),*(int *)(puVar8 + 0x420ec) + -0x514,param_4)" (parenthesized_expression "(**(code **)(puVar8 + 0x438d4))" (( "(") (pointer_expression "**(code **)(puVar8 + 0x438d4)" (* "*") (pointer_expression "*(code **)(puVar8 + 0x438d4)" (* "*") (cast_expression "(code **)(puVar8 + 0x438d4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + 0x438d4)" (( "(") (binary_expression "puVar8 + 0x438d4" (identifier "puVar8") (+ "+") (number_literal "0x438d4")) () ")"))))) () ")")) (argument_list "(**(undefined4 **)(puVar8 + 0x420f0),*(int *)(puVar8 + 0x420ec) + -0x514,param_4)" (( "(") (pointer_expression "**(undefined4 **)(puVar8 + 0x420f0)" (* "*") (pointer_expression "*(undefined4 **)(puVar8 + 0x420f0)" (* "*") (cast_expression "(undefined4 **)(puVar8 + 0x420f0)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + 0x420f0)" (( "(") (binary_expression "puVar8 + 0x420f0" (identifier "puVar8") (+ "+") (number_literal "0x420f0")) () ")"))))) (, ",") (binary_expression "*(int *)(puVar8 + 0x420ec) + -0x514" (pointer_expression "*(int *)(puVar8 + 0x420ec)" (* "*") (cast_expression "(int *)(puVar8 + 0x420ec)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + 0x420ec)" (( "(") (binary_expression "puVar8 + 0x420ec" (identifier "puVar8") (+ "+") (number_literal "0x420ec")) () ")")))) (+ "+") (number_literal "-0x514")) (, ",") (identifier "param_4") () ")"))) (; ";")) (expression_statement "iVar4 = 0;" (assignment_expression "iVar4 = 0" (identifier "iVar4") (= "=") (number_literal "0")) (; ";")) (goto_statement "goto LAB_0007d33c;" (goto "goto") (statement_identifier "LAB_0007d33c") (; ";")) (} "}"))) (expression_statement "iVar4 = bio_open_default();" (assignment_expression "iVar4 = bio_open_default()" (identifier "iVar4") (= "=") (call_expression "bio_open_default()" (identifier "bio_open_default") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (iVar4 == 0) {\n    iVar4 = 0;\n    goto LAB_0007d33c;\n  }" (if "if") (parenthesized_expression "(iVar4 == 0)" (( "(") (binary_expression "iVar4 == 0" (identifier "iVar4") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    iVar4 = 0;\n    goto LAB_0007d33c;\n  }" ({ "{") (expression_statement "iVar4 = 0;" (assignment_expression "iVar4 = 0" (identifier "iVar4") (= "=") (number_literal "0")) (; ";")) (goto_statement "goto LAB_0007d33c;" (goto "goto") (statement_identifier "LAB_0007d33c") (; ";")) (} "}"))) (expression_statement "uVar2 = (**(code **)(puVar8 + 0x43538))(iVar4,0,*(undefined4 *)(puVar8 + 0x42274),&puStack_6c);" (assignment_expression "uVar2 = (**(code **)(puVar8 + 0x43538))(iVar4,0,*(undefined4 *)(puVar8 + 0x42274),&puStack_6c)" (identifier "uVar2") (= "=") (call_expression "(**(code **)(puVar8 + 0x43538))(iVar4,0,*(undefined4 *)(puVar8 + 0x42274),&puStack_6c)" (parenthesized_expression "(**(code **)(puVar8 + 0x43538))" (( "(") (pointer_expression "**(code **)(puVar8 + 0x43538)" (* "*") (pointer_expression "*(code **)(puVar8 + 0x43538)" (* "*") (cast_expression "(code **)(puVar8 + 0x43538)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + 0x43538)" (( "(") (binary_expression "puVar8 + 0x43538" (identifier "puVar8") (+ "+") (number_literal "0x43538")) () ")"))))) () ")")) (argument_list "(iVar4,0,*(undefined4 *)(puVar8 + 0x42274),&puStack_6c)" (( "(") (identifier "iVar4") (, ",") (number_literal "0") (, ",") (pointer_expression "*(undefined4 *)(puVar8 + 0x42274)" (* "*") (cast_expression "(undefined4 *)(puVar8 + 0x42274)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + 0x42274)" (( "(") (binary_expression "puVar8 + 0x42274" (identifier "puVar8") (+ "+") (number_literal "0x42274")) () ")")))) (, ",") (pointer_expression "&puStack_6c" (& "&") (identifier "puStack_6c")) () ")")))) (; ";")) (expression_statement "(**(code **)(puVar8 + 0x426ac))(iVar4);" (call_expression "(**(code **)(puVar8 + 0x426ac))(iVar4)" (parenthesized_expression "(**(code **)(puVar8 + 0x426ac))" (( "(") (pointer_expression "**(code **)(puVar8 + 0x426ac)" (* "*") (pointer_expression "*(code **)(puVar8 + 0x426ac)" (* "*") (cast_expression "(code **)(puVar8 + 0x426ac)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + 0x426ac)" (( "(") (binary_expression "puVar8 + 0x426ac" (identifier "puVar8") (+ "+") (number_literal "0x426ac")) () ")"))))) () ")")) (argument_list "(iVar4)" (( "(") (identifier "iVar4") () ")"))) (; ";")) (if_statement "if ((__gp_1 == 0) && (__gp_1 = (**(code **)(puVar8 + 0x4325c))(), __gp_1 == 0)) {\n    (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\nLAB_0007d4dc:\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n    if (piStack_2c != (int *)0x0) goto LAB_0007d4f8;\nLAB_0007d63c:\n    __gp_1 = 0;\n    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);\n    iVar4 = *(int *)(puVar8 + 0x420ec);\n    uVar2 = *puVar6;\n  }\n  else {\n    pcVar9 = *(code **)(puVar8 + 0x4267c);\n    if (piStack_2c == (int *)0x0) {\nLAB_0007d3dc:\n      iVar5 = 0;\n      iVar4 = (*pcVar9)(uVar2);\n      if (0 < iVar4) {\n        do {\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        } while (iVar5 < iVar4);\n      }\n      iVar4 = (**(code **)(puVar8 + 0x4267c))(__gp_1);\n      if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }\n      (**(code **)(puVar8 + 0x42714))(uVar2);\n      iVar4 = 1;\n      goto LAB_0007d33c;\n    }\n    if (*piStack_2c != 0) {\nLAB_0007d3d8:\n      pcVar9 = *(code **)(puVar8 + 0x4267c);\n      goto LAB_0007d3dc;\n    }\n    iVar4 = (**(code **)(puVar8 + 0x4325c))();\n    *piStack_2c = iVar4;\n    if (iVar4 != 0) goto LAB_0007d3d8;\n    pcVar9 = *(code **)(puVar8 + 0x42714);\nLAB_0007d5d8:\n    (*pcVar9)(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\nLAB_0007d4f8:\n    __gp_1 = 0;\n    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);\n    (**(code **)(puVar8 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar8 + 0x42a64));\n    uVar2 = *puVar6;\n    *piStack_2c = 0;\n    iVar4 = *(int *)(puVar8 + 0x420ec);\n  }" (if "if") (parenthesized_expression "((__gp_1 == 0) && (__gp_1 = (**(code **)(puVar8 + 0x4325c))(), __gp_1 == 0))" (( "(") (binary_expression "(__gp_1 == 0) && (__gp_1 = (**(code **)(puVar8 + 0x4325c))(), __gp_1 == 0)" (parenthesized_expression "(__gp_1 == 0)" (( "(") (binary_expression "__gp_1 == 0" (identifier "__gp_1") (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(__gp_1 = (**(code **)(puVar8 + 0x4325c))(), __gp_1 == 0)" (( "(") (comma_expression "__gp_1 = (**(code **)(puVar8 + 0x4325c))(), __gp_1 == 0" (assignment_expression "__gp_1 = (**(code **)(puVar8 + 0x4325c))()" (identifier "__gp_1") (= "=") (call_expression "(**(code **)(puVar8 + 0x4325c))()" (parenthesized_expression "(**(code **)(puVar8 + 0x4325c))" (( "(") (pointer_expression "**(code **)(puVar8 + 0x4325c)" (* "*") (pointer_expression "*(code **)(puVar8 + 0x4325c)" (* "*") (cast_expression "(code **)(puVar8 + 0x4325c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + 0x4325c)" (( "(") (binary_expression "puVar8 + 0x4325c" (identifier "puVar8") (+ "+") (number_literal "0x4325c")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")")))) (, ",") (binary_expression "__gp_1 == 0" (identifier "__gp_1") (== "==") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n    (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\nLAB_0007d4dc:\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n    if (piStack_2c != (int *)0x0) goto LAB_0007d4f8;\nLAB_0007d63c:\n    __gp_1 = 0;\n    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);\n    iVar4 = *(int *)(puVar8 + 0x420ec);\n    uVar2 = *puVar6;\n  }" ({ "{") (expression_statement "(**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));" (call_expression "(**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc))" (parenthesized_expression "(**(code **)(puVar8 + 0x42714))" (( "(") (pointer_expression "**(code **)(puVar8 + 0x42714)" (* "*") (pointer_expression "*(code **)(puVar8 + 0x42714)" (* "*") (cast_expression "(code **)(puVar8 + 0x42714)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + 0x42714)" (( "(") (binary_expression "puVar8 + 0x42714" (identifier "puVar8") (+ "+") (number_literal "0x42714")) () ")"))))) () ")")) (argument_list "(uVar2,*(undefined4 *)(puVar8 + 0x434fc))" (( "(") (identifier "uVar2") (, ",") (pointer_expression "*(undefined4 *)(puVar8 + 0x434fc)" (* "*") (cast_expression "(undefined4 *)(puVar8 + 0x434fc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + 0x434fc)" (( "(") (binary_expression "puVar8 + 0x434fc" (identifier "puVar8") (+ "+") (number_literal "0x434fc")) () ")")))) () ")"))) (; ";")) (labeled_statement "LAB_0007d4dc:\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));" (statement_identifier "LAB_0007d4dc") (: ":") (expression_statement "(**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));" (call_expression "(**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4))" (parenthesized_expression "(**(code **)(puVar8 + 0x42714))" (( "(") (pointer_expression "**(code **)(puVar8 + 0x42714)" (* "*") (pointer_expression "*(code **)(puVar8 + 0x42714)" (* "*") (cast_expression "(code **)(puVar8 + 0x42714)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + 0x42714)" (( "(") (binary_expression "puVar8 + 0x42714" (identifier "puVar8") (+ "+") (number_literal "0x42714")) () ")"))))) () ")")) (argument_list "(__gp_1,*(undefined4 *)(puVar8 + 0x425e4))" (( "(") (identifier "__gp_1") (, ",") (pointer_expression "*(undefined4 *)(puVar8 + 0x425e4)" (* "*") (cast_expression "(undefined4 *)(puVar8 + 0x425e4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + 0x425e4)" (( "(") (binary_expression "puVar8 + 0x425e4" (identifier "puVar8") (+ "+") (number_literal "0x425e4")) () ")")))) () ")"))) (; ";"))) (if_statement "if (piStack_2c != (int *)0x0) goto LAB_0007d4f8;" (if "if") (parenthesized_expression "(piStack_2c != (int *)0x0)" (( "(") (binary_expression "piStack_2c != (int *)0x0" (identifier "piStack_2c") (!= "!=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_0007d4f8;" (goto "goto") (statement_identifier "LAB_0007d4f8") (; ";"))) (labeled_statement "LAB_0007d63c:\n    __gp_1 = 0;" (statement_identifier "LAB_0007d63c") (: ":") (expression_statement "__gp_1 = 0;" (assignment_expression "__gp_1 = 0" (identifier "__gp_1") (= "=") (number_literal "0")) (; ";"))) (expression_statement "puVar6 = *(undefined4 **)(puVar8 + 0x420f0);" (assignment_expression "puVar6 = *(undefined4 **)(puVar8 + 0x420f0)" (identifier "puVar6") (= "=") (pointer_expression "*(undefined4 **)(puVar8 + 0x420f0)" (* "*") (cast_expression "(undefined4 **)(puVar8 + 0x420f0)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + 0x420f0)" (( "(") (binary_expression "puVar8 + 0x420f0" (identifier "puVar8") (+ "+") (number_literal "0x420f0")) () ")"))))) (; ";")) (expression_statement "iVar4 = *(int *)(puVar8 + 0x420ec);" (assignment_expression "iVar4 = *(int *)(puVar8 + 0x420ec)" (identifier "iVar4") (= "=") (pointer_expression "*(int *)(puVar8 + 0x420ec)" (* "*") (cast_expression "(int *)(puVar8 + 0x420ec)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + 0x420ec)" (( "(") (binary_expression "puVar8 + 0x420ec" (identifier "puVar8") (+ "+") (number_literal "0x420ec")) () ")"))))) (; ";")) (expression_statement "uVar2 = *puVar6;" (assignment_expression "uVar2 = *puVar6" (identifier "uVar2") (= "=") (pointer_expression "*puVar6" (* "*") (identifier "puVar6"))) (; ";")) (} "}")) (else_clause "else {\n    pcVar9 = *(code **)(puVar8 + 0x4267c);\n    if (piStack_2c == (int *)0x0) {\nLAB_0007d3dc:\n      iVar5 = 0;\n      iVar4 = (*pcVar9)(uVar2);\n      if (0 < iVar4) {\n        do {\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        } while (iVar5 < iVar4);\n      }\n      iVar4 = (**(code **)(puVar8 + 0x4267c))(__gp_1);\n      if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }\n      (**(code **)(puVar8 + 0x42714))(uVar2);\n      iVar4 = 1;\n      goto LAB_0007d33c;\n    }\n    if (*piStack_2c != 0) {\nLAB_0007d3d8:\n      pcVar9 = *(code **)(puVar8 + 0x4267c);\n      goto LAB_0007d3dc;\n    }\n    iVar4 = (**(code **)(puVar8 + 0x4325c))();\n    *piStack_2c = iVar4;\n    if (iVar4 != 0) goto LAB_0007d3d8;\n    pcVar9 = *(code **)(puVar8 + 0x42714);\nLAB_0007d5d8:\n    (*pcVar9)(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\nLAB_0007d4f8:\n    __gp_1 = 0;\n    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);\n    (**(code **)(puVar8 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar8 + 0x42a64));\n    uVar2 = *puVar6;\n    *piStack_2c = 0;\n    iVar4 = *(int *)(puVar8 + 0x420ec);\n  }" (else "else") (compound_statement "{\n    pcVar9 = *(code **)(puVar8 + 0x4267c);\n    if (piStack_2c == (int *)0x0) {\nLAB_0007d3dc:\n      iVar5 = 0;\n      iVar4 = (*pcVar9)(uVar2);\n      if (0 < iVar4) {\n        do {\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        } while (iVar5 < iVar4);\n      }\n      iVar4 = (**(code **)(puVar8 + 0x4267c))(__gp_1);\n      if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }\n      (**(code **)(puVar8 + 0x42714))(uVar2);\n      iVar4 = 1;\n      goto LAB_0007d33c;\n    }\n    if (*piStack_2c != 0) {\nLAB_0007d3d8:\n      pcVar9 = *(code **)(puVar8 + 0x4267c);\n      goto LAB_0007d3dc;\n    }\n    iVar4 = (**(code **)(puVar8 + 0x4325c))();\n    *piStack_2c = iVar4;\n    if (iVar4 != 0) goto LAB_0007d3d8;\n    pcVar9 = *(code **)(puVar8 + 0x42714);\nLAB_0007d5d8:\n    (*pcVar9)(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\nLAB_0007d4f8:\n    __gp_1 = 0;\n    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);\n    (**(code **)(puVar8 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar8 + 0x42a64));\n    uVar2 = *puVar6;\n    *piStack_2c = 0;\n    iVar4 = *(int *)(puVar8 + 0x420ec);\n  }" ({ "{") (expression_statement "pcVar9 = *(code **)(puVar8 + 0x4267c);" (assignment_expression "pcVar9 = *(code **)(puVar8 + 0x4267c)" (identifier "pcVar9") (= "=") (pointer_expression "*(code **)(puVar8 + 0x4267c)" (* "*") (cast_expression "(code **)(puVar8 + 0x4267c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + 0x4267c)" (( "(") (binary_expression "puVar8 + 0x4267c" (identifier "puVar8") (+ "+") (number_literal "0x4267c")) () ")"))))) (; ";")) (if_statement "if (piStack_2c == (int *)0x0) {\nLAB_0007d3dc:\n      iVar5 = 0;\n      iVar4 = (*pcVar9)(uVar2);\n      if (0 < iVar4) {\n        do {\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        } while (iVar5 < iVar4);\n      }\n      iVar4 = (**(code **)(puVar8 + 0x4267c))(__gp_1);\n      if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }\n      (**(code **)(puVar8 + 0x42714))(uVar2);\n      iVar4 = 1;\n      goto LAB_0007d33c;\n    }" (if "if") (parenthesized_expression "(piStack_2c == (int *)0x0)" (( "(") (binary_expression "piStack_2c == (int *)0x0" (identifier "piStack_2c") (== "==") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\nLAB_0007d3dc:\n      iVar5 = 0;\n      iVar4 = (*pcVar9)(uVar2);\n      if (0 < iVar4) {\n        do {\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        } while (iVar5 < iVar4);\n      }\n      iVar4 = (**(code **)(puVar8 + 0x4267c))(__gp_1);\n      if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }\n      (**(code **)(puVar8 + 0x42714))(uVar2);\n      iVar4 = 1;\n      goto LAB_0007d33c;\n    }" ({ "{") (labeled_statement "LAB_0007d3dc:\n      iVar5 = 0;" (statement_identifier "LAB_0007d3dc") (: ":") (expression_statement "iVar5 = 0;" (assignment_expression "iVar5 = 0" (identifier "iVar5") (= "=") (number_literal "0")) (; ";"))) (expression_statement "iVar4 = (*pcVar9)(uVar2);" (assignment_expression "iVar4 = (*pcVar9)(uVar2)" (identifier "iVar4") (= "=") (call_expression "(*pcVar9)(uVar2)" (parenthesized_expression "(*pcVar9)" (( "(") (pointer_expression "*pcVar9" (* "*") (identifier "pcVar9")) () ")")) (argument_list "(uVar2)" (( "(") (identifier "uVar2") () ")")))) (; ";")) (if_statement "if (0 < iVar4) {\n        do {\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        } while (iVar5 < iVar4);\n      }" (if "if") (parenthesized_expression "(0 < iVar4)" (( "(") (binary_expression "0 < iVar4" (number_literal "0") (< "<") (identifier "iVar4")) () ")")) (compound_statement "{\n        do {\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        } while (iVar5 < iVar4);\n      }" ({ "{") (do_statement "do {\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        } while (iVar5 < iVar4);" (do "do") (compound_statement "{\n          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);\n          if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }\nLAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);\n          if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }\n          iVar5 = iVar5 + 1;\n          iVar4 = (*pcVar9)(uVar2);\n        }" ({ "{") (expression_statement "piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);" (assignment_expression "piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5)" (identifier "piVar3") (= "=") (cast_expression "(int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(puVar8 + 0x43914))(uVar2,iVar5)" (parenthesized_expression "(**(code **)(puVar8 + 0x43914))" (( "(") (pointer_expression "**(code **)(puVar8 + 0x43914)" (* "*") (pointer_expression "*(code **)(puVar8 + 0x43914)" (* "*") (cast_expression "(code **)(puVar8 + 0x43914)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + 0x43914)" (( "(") (binary_expression "puVar8 + 0x43914" (identifier "puVar8") (+ "+") (number_literal "0x43914")) () ")"))))) () ")")) (argument_list "(uVar2,iVar5)" (( "(") (identifier "uVar2") (, ",") (identifier "iVar5") () ")"))))) (; ";")) (if_statement "if (*piVar3 != 0) {\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }" (if "if") (parenthesized_expression "(*piVar3 != 0)" (( "(") (binary_expression "*piVar3 != 0" (pointer_expression "*piVar3" (* "*") (identifier "piVar3")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);\n            if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }\nLAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n            goto LAB_0007d4dc;\n          }" ({ "{") (expression_statement "iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);" (assignment_expression "iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1)" (identifier "iVar4") (= "=") (call_expression "(**(code **)(puVar8 + 0x42a8c))(__gp_1)" (parenthesized_expression "(**(code **)(puVar8 + 0x42a8c))" (( "(") (pointer_expression "**(code **)(puVar8 + 0x42a8c)" (* "*") (pointer_expression "*(code **)(puVar8 + 0x42a8c)" (* "*") (cast_expression "(code **)(puVar8 + 0x42a8c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + 0x42a8c)" (( "(") (binary_expression "puVar8 + 0x42a8c" (identifier "puVar8") (+ "+") (number_literal "0x42a8c")) () ")"))))) () ")")) (argument_list "(__gp_1)" (( "(") (identifier "__gp_1") () ")")))) (; ";")) (if_statement "if (iVar4 != 0) {\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }" (if "if") (parenthesized_expression "(iVar4 != 0)" (( "(") (binary_expression "iVar4 != 0" (identifier "iVar4") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n              *piVar3 = 0;\n              goto LAB_0007d430;\n            }" ({ "{") (expression_statement "*piVar3 = 0;" (assignment_expression "*piVar3 = 0" (pointer_expression "*piVar3" (* "*") (identifier "piVar3")) (= "=") (number_literal "0")) (; ";")) (goto_statement "goto LAB_0007d430;" (goto "goto") (statement_identifier "LAB_0007d430") (; ";")) (} "}"))) (labeled_statement "LAB_0007d4c4:\n            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));" (statement_identifier "LAB_0007d4c4") (: ":") (expression_statement "(**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));" (call_expression "(**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc))" (parenthesized_expression "(**(code **)(puVar8 + 0x42714))" (( "(") (pointer_expression "**(code **)(puVar8 + 0x42714)" (* "*") (pointer_expression "*(code **)(puVar8 + 0x42714)" (* "*") (cast_expression "(code **)(puVar8 + 0x42714)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + 0x42714)" (( "(") (binary_expression "puVar8 + 0x42714" (identifier "puVar8") (+ "+") (number_literal "0x42714")) () ")"))))) () ")")) (argument_list "(uVar2,*(undefined4 *)(puVar8 + 0x434fc))" (( "(") (identifier "uVar2") (, ",") (pointer_expression "*(undefined4 *)(puVar8 + 0x434fc)" (* "*") (cast_expression "(undefined4 *)(puVar8 + 0x434fc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + 0x434fc)" (( "(") (binary_expression "puVar8 + 0x434fc" (identifier "puVar8") (+ "+") (number_literal "0x434fc")) () ")")))) () ")"))) (; ";"))) (goto_statement "goto LAB_0007d4dc;" (goto "goto") (statement_identifier "LAB_0007d4dc") (; ";")) (} "}"))) (labeled_statement "LAB_0007d430:\n          pcVar9 = *(code **)(puVar8 + 0x4267c);" (statement_identifier "LAB_0007d430") (: ":") (expression_statement "pcVar9 = *(code **)(puVar8 + 0x4267c);" (assignment_expression "pcVar9 = *(code **)(puVar8 + 0x4267c)" (identifier "pcVar9") (= "=") (pointer_expression "*(code **)(puVar8 + 0x4267c)" (* "*") (cast_expression "(code **)(puVar8 + 0x4267c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + 0x4267c)" (( "(") (binary_expression "puVar8 + 0x4267c" (identifier "puVar8") (+ "+") (number_literal "0x4267c")) () ")"))))) (; ";"))) (if_statement "if (piVar3[1] != 0) {\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }" (if "if") (parenthesized_expression "(piVar3[1] != 0)" (( "(") (binary_expression "piVar3[1] != 0" (subscript_expression "piVar3[1]" (identifier "piVar3") ([ "[") (number_literal "1") (] "]")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }\n            pcVar9 = *(code **)(puVar8 + 0x4267c);\n          }" ({ "{") (if_statement "if (piStack_2c != (int *)0x0) {\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }" (if "if") (parenthesized_expression "(piStack_2c != (int *)0x0)" (( "(") (binary_expression "piStack_2c != (int *)0x0" (identifier "piStack_2c") (!= "!=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);\n              if (iVar4 == 0) goto LAB_0007d4c4;\n              piVar3[1] = 0;\n            }" ({ "{") (expression_statement "iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);" (assignment_expression "iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c)" (identifier "iVar4") (= "=") (call_expression "(**(code **)(puVar8 + 0x42a8c))(*piStack_2c)" (parenthesized_expression "(**(code **)(puVar8 + 0x42a8c))" (( "(") (pointer_expression "**(code **)(puVar8 + 0x42a8c)" (* "*") (pointer_expression "*(code **)(puVar8 + 0x42a8c)" (* "*") (cast_expression "(code **)(puVar8 + 0x42a8c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + 0x42a8c)" (( "(") (binary_expression "puVar8 + 0x42a8c" (identifier "puVar8") (+ "+") (number_literal "0x42a8c")) () ")"))))) () ")")) (argument_list "(*piStack_2c)" (( "(") (pointer_expression "*piStack_2c" (* "*") (identifier "piStack_2c")) () ")")))) (; ";")) (if_statement "if (iVar4 == 0) goto LAB_0007d4c4;" (if "if") (parenthesized_expression "(iVar4 == 0)" (( "(") (binary_expression "iVar4 == 0" (identifier "iVar4") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_0007d4c4;" (goto "goto") (statement_identifier "LAB_0007d4c4") (; ";"))) (expression_statement "piVar3[1] = 0;" (assignment_expression "piVar3[1] = 0" (subscript_expression "piVar3[1]" (identifier "piVar3") ([ "[") (number_literal "1") (] "]")) (= "=") (number_literal "0")) (; ";")) (} "}"))) (expression_statement "pcVar9 = *(code **)(puVar8 + 0x4267c);" (assignment_expression "pcVar9 = *(code **)(puVar8 + 0x4267c)" (identifier "pcVar9") (= "=") (pointer_expression "*(code **)(puVar8 + 0x4267c)" (* "*") (cast_expression "(code **)(puVar8 + 0x4267c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + 0x4267c)" (( "(") (binary_expression "puVar8 + 0x4267c" (identifier "puVar8") (+ "+") (number_literal "0x4267c")) () ")"))))) (; ";")) (} "}"))) (expression_statement "iVar5 = iVar5 + 1;" (assignment_expression "iVar5 = iVar5 + 1" (identifier "iVar5") (= "=") (binary_expression "iVar5 + 1" (identifier "iVar5") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "iVar4 = (*pcVar9)(uVar2);" (assignment_expression "iVar4 = (*pcVar9)(uVar2)" (identifier "iVar4") (= "=") (call_expression "(*pcVar9)(uVar2)" (parenthesized_expression "(*pcVar9)" (( "(") (pointer_expression "*pcVar9" (* "*") (identifier "pcVar9")) () ")")) (argument_list "(uVar2)" (( "(") (identifier "uVar2") () ")")))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar5 < iVar4)" (( "(") (binary_expression "iVar5 < iVar4" (identifier "iVar5") (< "<") (identifier "iVar4")) () ")")) (; ";")) (} "}"))) (expression_statement "iVar4 = (**(code **)(puVar8 + 0x4267c))(__gp_1);" (assignment_expression "iVar4 = (**(code **)(puVar8 + 0x4267c))(__gp_1)" (identifier "iVar4") (= "=") (call_expression "(**(code **)(puVar8 + 0x4267c))(__gp_1)" (parenthesized_expression "(**(code **)(puVar8 + 0x4267c))" (( "(") (pointer_expression "**(code **)(puVar8 + 0x4267c)" (* "*") (pointer_expression "*(code **)(puVar8 + 0x4267c)" (* "*") (cast_expression "(code **)(puVar8 + 0x4267c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + 0x4267c)" (( "(") (binary_expression "puVar8 + 0x4267c" (identifier "puVar8") (+ "+") (number_literal "0x4267c")) () ")"))))) () ")")) (argument_list "(__gp_1)" (( "(") (identifier "__gp_1") () ")")))) (; ";")) (if_statement "if (iVar4 < 1) {\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }\n      else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }" (if "if") (parenthesized_expression "(iVar4 < 1)" (( "(") (binary_expression "iVar4 < 1" (identifier "iVar4") (< "<") (number_literal "1")) () ")")) (compound_statement "{\n        if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }\n        iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n        if (iVar4 < 1) {\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }\n      }" ({ "{") (if_statement "if (piStack_2c == (int *)0x0) {\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }" (if "if") (parenthesized_expression "(piStack_2c == (int *)0x0)" (( "(") (binary_expression "piStack_2c == (int *)0x0" (identifier "piStack_2c") (== "==") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));\n          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));\n          goto LAB_0007d63c;\n        }" ({ "{") (expression_statement "(**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));" (call_expression "(**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc))" (parenthesized_expression "(**(code **)(puVar8 + 0x42714))" (( "(") (pointer_expression "**(code **)(puVar8 + 0x42714)" (* "*") (pointer_expression "*(code **)(puVar8 + 0x42714)" (* "*") (cast_expression "(code **)(puVar8 + 0x42714)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + 0x42714)" (( "(") (binary_expression "puVar8 + 0x42714" (identifier "puVar8") (+ "+") (number_literal "0x42714")) () ")"))))) () ")")) (argument_list "(uVar2,*(undefined4 *)(puVar8 + 0x434fc))" (( "(") (identifier "uVar2") (, ",") (pointer_expression "*(undefined4 *)(puVar8 + 0x434fc)" (* "*") (cast_expression "(undefined4 *)(puVar8 + 0x434fc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + 0x434fc)" (( "(") (binary_expression "puVar8 + 0x434fc" (identifier "puVar8") (+ "+") (number_literal "0x434fc")) () ")")))) () ")"))) (; ";")) (expression_statement "(**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));" (call_expression "(**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4))" (parenthesized_expression "(**(code **)(puVar8 + 0x42714))" (( "(") (pointer_expression "**(code **)(puVar8 + 0x42714)" (* "*") (pointer_expression "*(code **)(puVar8 + 0x42714)" (* "*") (cast_expression "(code **)(puVar8 + 0x42714)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + 0x42714)" (( "(") (binary_expression "puVar8 + 0x42714" (identifier "puVar8") (+ "+") (number_literal "0x42714")) () ")"))))) () ")")) (argument_list "(__gp_1,*(undefined4 *)(puVar8 + 0x425e4))" (( "(") (identifier "__gp_1") (, ",") (pointer_expression "*(undefined4 *)(puVar8 + 0x425e4)" (* "*") (cast_expression "(undefined4 *)(puVar8 + 0x425e4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + 0x425e4)" (( "(") (binary_expression "puVar8 + 0x425e4" (identifier "puVar8") (+ "+") (number_literal "0x425e4")) () ")")))) () ")"))) (; ";")) (goto_statement "goto LAB_0007d63c;" (goto "goto") (statement_identifier "LAB_0007d63c") (; ";")) (} "}"))) (expression_statement "iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);" (assignment_expression "iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c)" (identifier "iVar4") (= "=") (call_expression "(**(code **)(puVar8 + 0x4267c))(*piStack_2c)" (parenthesized_expression "(**(code **)(puVar8 + 0x4267c))" (( "(") (pointer_expression "**(code **)(puVar8 + 0x4267c)" (* "*") (pointer_expression "*(code **)(puVar8 + 0x4267c)" (* "*") (cast_expression "(code **)(puVar8 + 0x4267c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + 0x4267c)" (( "(") (binary_expression "puVar8 + 0x4267c" (identifier "puVar8") (+ "+") (number_literal "0x4267c")) () ")"))))) () ")")) (argument_list "(*piStack_2c)" (( "(") (pointer_expression "*piStack_2c" (* "*") (identifier "piStack_2c")) () ")")))) (; ";")) (if_statement "if (iVar4 < 1) {\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }" (if "if") (parenthesized_expression "(iVar4 < 1)" (( "(") (binary_expression "iVar4 < 1" (identifier "iVar4") (< "<") (number_literal "1")) () ")")) (compound_statement "{\n          pcVar9 = *(code **)(puVar8 + 0x42714);\n          goto LAB_0007d5d8;\n        }" ({ "{") (expression_statement "pcVar9 = *(code **)(puVar8 + 0x42714);" (assignment_expression "pcVar9 = *(code **)(puVar8 + 0x42714)" (identifier "pcVar9") (= "=") (pointer_expression "*(code **)(puVar8 + 0x42714)" (* "*") (cast_expression "(code **)(puVar8 + 0x42714)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + 0x42714)" (( "(") (binary_expression "puVar8 + 0x42714" (identifier "puVar8") (+ "+") (number_literal "0x42714")) () ")"))))) (; ";")) (goto_statement "goto LAB_0007d5d8;" (goto "goto") (statement_identifier "LAB_0007d5d8") (; ";")) (} "}"))) (} "}")) (else_clause "else if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }" (else "else") (if_statement "if (piStack_2c != (int *)0x0) {\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }" (if "if") (parenthesized_expression "(piStack_2c != (int *)0x0)" (( "(") (binary_expression "piStack_2c != (int *)0x0" (identifier "piStack_2c") (!= "!=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);\n      }" ({ "{") (expression_statement "(**(code **)(puVar8 + 0x4267c))(*piStack_2c);" (call_expression "(**(code **)(puVar8 + 0x4267c))(*piStack_2c)" (parenthesized_expression "(**(code **)(puVar8 + 0x4267c))" (( "(") (pointer_expression "**(code **)(puVar8 + 0x4267c)" (* "*") (pointer_expression "*(code **)(puVar8 + 0x4267c)" (* "*") (cast_expression "(code **)(puVar8 + 0x4267c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + 0x4267c)" (( "(") (binary_expression "puVar8 + 0x4267c" (identifier "puVar8") (+ "+") (number_literal "0x4267c")) () ")"))))) () ")")) (argument_list "(*piStack_2c)" (( "(") (pointer_expression "*piStack_2c" (* "*") (identifier "piStack_2c")) () ")"))) (; ";")) (} "}"))))) (expression_statement "(**(code **)(puVar8 + 0x42714))(uVar2);" (call_expression "(**(code **)(puVar8 + 0x42714))(uVar2)" (parenthesized_expression "(**(code **)(puVar8 + 0x42714))" (( "(") (pointer_expression "**(code **)(puVar8 + 0x42714)" (* "*") (pointer_expression "*(code **)(puVar8 + 0x42714)" (* "*") (cast_expression "(code **)(puVar8 + 0x42714)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + 0x42714)" (( "(") (binary_expression "puVar8 + 0x42714" (identifier "puVar8") (+ "+") (number_literal "0x42714")) () ")"))))) () ")")) (argument_list "(uVar2)" (( "(") (identifier "uVar2") () ")"))) (; ";")) (expression_statement "iVar4 = 1;" (assignment_expression "iVar4 = 1" (identifier "iVar4") (= "=") (number_literal "1")) (; ";")) (goto_statement "goto LAB_0007d33c;" (goto "goto") (statement_identifier "LAB_0007d33c") (; ";")) (} "}"))) (if_statement "if (*piStack_2c != 0) {\nLAB_0007d3d8:\n      pcVar9 = *(code **)(puVar8 + 0x4267c);\n      goto LAB_0007d3dc;\n    }" (if "if") (parenthesized_expression "(*piStack_2c != 0)" (( "(") (binary_expression "*piStack_2c != 0" (pointer_expression "*piStack_2c" (* "*") (identifier "piStack_2c")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\nLAB_0007d3d8:\n      pcVar9 = *(code **)(puVar8 + 0x4267c);\n      goto LAB_0007d3dc;\n    }" ({ "{") (labeled_statement "LAB_0007d3d8:\n      pcVar9 = *(code **)(puVar8 + 0x4267c);" (statement_identifier "LAB_0007d3d8") (: ":") (expression_statement "pcVar9 = *(code **)(puVar8 + 0x4267c);" (assignment_expression "pcVar9 = *(code **)(puVar8 + 0x4267c)" (identifier "pcVar9") (= "=") (pointer_expression "*(code **)(puVar8 + 0x4267c)" (* "*") (cast_expression "(code **)(puVar8 + 0x4267c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + 0x4267c)" (( "(") (binary_expression "puVar8 + 0x4267c" (identifier "puVar8") (+ "+") (number_literal "0x4267c")) () ")"))))) (; ";"))) (goto_statement "goto LAB_0007d3dc;" (goto "goto") (statement_identifier "LAB_0007d3dc") (; ";")) (} "}"))) (expression_statement "iVar4 = (**(code **)(puVar8 + 0x4325c))();" (assignment_expression "iVar4 = (**(code **)(puVar8 + 0x4325c))()" (identifier "iVar4") (= "=") (call_expression "(**(code **)(puVar8 + 0x4325c))()" (parenthesized_expression "(**(code **)(puVar8 + 0x4325c))" (( "(") (pointer_expression "**(code **)(puVar8 + 0x4325c)" (* "*") (pointer_expression "*(code **)(puVar8 + 0x4325c)" (* "*") (cast_expression "(code **)(puVar8 + 0x4325c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + 0x4325c)" (( "(") (binary_expression "puVar8 + 0x4325c" (identifier "puVar8") (+ "+") (number_literal "0x4325c")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*piStack_2c = iVar4;" (assignment_expression "*piStack_2c = iVar4" (pointer_expression "*piStack_2c" (* "*") (identifier "piStack_2c")) (= "=") (identifier "iVar4")) (; ";")) (if_statement "if (iVar4 != 0) goto LAB_0007d3d8;" (if "if") (parenthesized_expression "(iVar4 != 0)" (( "(") (binary_expression "iVar4 != 0" (identifier "iVar4") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_0007d3d8;" (goto "goto") (statement_identifier "LAB_0007d3d8") (; ";"))) (expression_statement "pcVar9 = *(code **)(puVar8 + 0x42714);" (assignment_expression "pcVar9 = *(code **)(puVar8 + 0x42714)" (identifier "pcVar9") (= "=") (pointer_expression "*(code **)(puVar8 + 0x42714)" (* "*") (cast_expression "(code **)(puVar8 + 0x42714)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + 0x42714)" (( "(") (binary_expression "puVar8 + 0x42714" (identifier "puVar8") (+ "+") (number_literal "0x42714")) () ")"))))) (; ";")) (labeled_statement "LAB_0007d5d8:\n    (*pcVar9)(uVar2,*(undefined4 *)(puVar8 + 0x434fc));" (statement_identifier "LAB_0007d5d8") (: ":") (expression_statement "(*pcVar9)(uVar2,*(undefined4 *)(puVar8 + 0x434fc));" (call_expression "(*pcVar9)(uVar2,*(undefined4 *)(puVar8 + 0x434fc))" (parenthesized_expression "(*pcVar9)" (( "(") (pointer_expression "*pcVar9" (* "*") (identifier "pcVar9")) () ")")) (argument_list "(uVar2,*(undefined4 *)(puVar8 + 0x434fc))" (( "(") (identifier "uVar2") (, ",") (pointer_expression "*(undefined4 *)(puVar8 + 0x434fc)" (* "*") (cast_expression "(undefined4 *)(puVar8 + 0x434fc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + 0x434fc)" (( "(") (binary_expression "puVar8 + 0x434fc" (identifier "puVar8") (+ "+") (number_literal "0x434fc")) () ")")))) () ")"))) (; ";"))) (expression_statement "(**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));" (call_expression "(**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4))" (parenthesized_expression "(**(code **)(puVar8 + 0x42714))" (( "(") (pointer_expression "**(code **)(puVar8 + 0x42714)" (* "*") (pointer_expression "*(code **)(puVar8 + 0x42714)" (* "*") (cast_expression "(code **)(puVar8 + 0x42714)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + 0x42714)" (( "(") (binary_expression "puVar8 + 0x42714" (identifier "puVar8") (+ "+") (number_literal "0x42714")) () ")"))))) () ")")) (argument_list "(__gp_1,*(undefined4 *)(puVar8 + 0x425e4))" (( "(") (identifier "__gp_1") (, ",") (pointer_expression "*(undefined4 *)(puVar8 + 0x425e4)" (* "*") (cast_expression "(undefined4 *)(puVar8 + 0x425e4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + 0x425e4)" (( "(") (binary_expression "puVar8 + 0x425e4" (identifier "puVar8") (+ "+") (number_literal "0x425e4")) () ")")))) () ")"))) (; ";")) (labeled_statement "LAB_0007d4f8:\n    __gp_1 = 0;" (statement_identifier "LAB_0007d4f8") (: ":") (expression_statement "__gp_1 = 0;" (assignment_expression "__gp_1 = 0" (identifier "__gp_1") (= "=") (number_literal "0")) (; ";"))) (expression_statement "puVar6 = *(undefined4 **)(puVar8 + 0x420f0);" (assignment_expression "puVar6 = *(undefined4 **)(puVar8 + 0x420f0)" (identifier "puVar6") (= "=") (pointer_expression "*(undefined4 **)(puVar8 + 0x420f0)" (* "*") (cast_expression "(undefined4 **)(puVar8 + 0x420f0)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + 0x420f0)" (( "(") (binary_expression "puVar8 + 0x420f0" (identifier "puVar8") (+ "+") (number_literal "0x420f0")) () ")"))))) (; ";")) (expression_statement "(**(code **)(puVar8 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar8 + 0x42a64));" (call_expression "(**(code **)(puVar8 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar8 + 0x42a64))" (parenthesized_expression "(**(code **)(puVar8 + 0x42714))" (( "(") (pointer_expression "**(code **)(puVar8 + 0x42714)" (* "*") (pointer_expression "*(code **)(puVar8 + 0x42714)" (* "*") (cast_expression "(code **)(puVar8 + 0x42714)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + 0x42714)" (( "(") (binary_expression "puVar8 + 0x42714" (identifier "puVar8") (+ "+") (number_literal "0x42714")) () ")"))))) () ")")) (argument_list "(*piStack_2c,*(undefined4 *)(puVar8 + 0x42a64))" (( "(") (pointer_expression "*piStack_2c" (* "*") (identifier "piStack_2c")) (, ",") (pointer_expression "*(undefined4 *)(puVar8 + 0x42a64)" (* "*") (cast_expression "(undefined4 *)(puVar8 + 0x42a64)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + 0x42a64)" (( "(") (binary_expression "puVar8 + 0x42a64" (identifier "puVar8") (+ "+") (number_literal "0x42a64")) () ")")))) () ")"))) (; ";")) (expression_statement "uVar2 = *puVar6;" (assignment_expression "uVar2 = *puVar6" (identifier "uVar2") (= "=") (pointer_expression "*puVar6" (* "*") (identifier "puVar6"))) (; ";")) (expression_statement "*piStack_2c = 0;" (assignment_expression "*piStack_2c = 0" (pointer_expression "*piStack_2c" (* "*") (identifier "piStack_2c")) (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar4 = *(int *)(puVar8 + 0x420ec);" (assignment_expression "iVar4 = *(int *)(puVar8 + 0x420ec)" (identifier "iVar4") (= "=") (pointer_expression "*(int *)(puVar8 + 0x420ec)" (* "*") (cast_expression "(int *)(puVar8 + 0x420ec)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + 0x420ec)" (( "(") (binary_expression "puVar8 + 0x420ec" (identifier "puVar8") (+ "+") (number_literal "0x420ec")) () ")"))))) (; ";")) (} "}")))) (expression_statement "(**(code **)(puVar8 + 0x438d4))(uVar2,*(int *)(puVar8 + 0x420ec) + -0x428,iVar4 + -0x1db4);" (call_expression "(**(code **)(puVar8 + 0x438d4))(uVar2,*(int *)(puVar8 + 0x420ec) + -0x428,iVar4 + -0x1db4)" (parenthesized_expression "(**(code **)(puVar8 + 0x438d4))" (( "(") (pointer_expression "**(code **)(puVar8 + 0x438d4)" (* "*") (pointer_expression "*(code **)(puVar8 + 0x438d4)" (* "*") (cast_expression "(code **)(puVar8 + 0x438d4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + 0x438d4)" (( "(") (binary_expression "puVar8 + 0x438d4" (identifier "puVar8") (+ "+") (number_literal "0x438d4")) () ")"))))) () ")")) (argument_list "(uVar2,*(int *)(puVar8 + 0x420ec) + -0x428,iVar4 + -0x1db4)" (( "(") (identifier "uVar2") (, ",") (binary_expression "*(int *)(puVar8 + 0x420ec) + -0x428" (pointer_expression "*(int *)(puVar8 + 0x420ec)" (* "*") (cast_expression "(int *)(puVar8 + 0x420ec)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + 0x420ec)" (( "(") (binary_expression "puVar8 + 0x420ec" (identifier "puVar8") (+ "+") (number_literal "0x420ec")) () ")")))) (+ "+") (number_literal "-0x428")) (, ",") (binary_expression "iVar4 + -0x1db4" (identifier "iVar4") (+ "+") (number_literal "-0x1db4")) () ")"))) (; ";")) (expression_statement "(**(code **)(puVar8 + 0x42484))(*puVar6);" (call_expression "(**(code **)(puVar8 + 0x42484))(*puVar6)" (parenthesized_expression "(**(code **)(puVar8 + 0x42484))" (( "(") (pointer_expression "**(code **)(puVar8 + 0x42484)" (* "*") (pointer_expression "*(code **)(puVar8 + 0x42484)" (* "*") (cast_expression "(code **)(puVar8 + 0x42484)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + 0x42484)" (( "(") (binary_expression "puVar8 + 0x42484" (identifier "puVar8") (+ "+") (number_literal "0x42484")) () ")"))))) () ")")) (argument_list "(*puVar6)" (( "(") (pointer_expression "*puVar6" (* "*") (identifier "puVar6")) () ")"))) (; ";")) (expression_statement "iVar4 = 0;" (assignment_expression "iVar4 = 0" (identifier "iVar4") (= "=") (number_literal "0")) (; ";")) (labeled_statement "LAB_0007d33c:\n  if (iStack_64 != *piVar7) {\n    (**(code **)(puVar8 + 0x42b38))();\n    iVar4 = FUN_0007d2c0();\n    return iVar4;\n  }" (statement_identifier "LAB_0007d33c") (: ":") (if_statement "if (iStack_64 != *piVar7) {\n    (**(code **)(puVar8 + 0x42b38))();\n    iVar4 = FUN_0007d2c0();\n    return iVar4;\n  }" (if "if") (parenthesized_expression "(iStack_64 != *piVar7)" (( "(") (binary_expression "iStack_64 != *piVar7" (identifier "iStack_64") (!= "!=") (pointer_expression "*piVar7" (* "*") (identifier "piVar7"))) () ")")) (compound_statement "{\n    (**(code **)(puVar8 + 0x42b38))();\n    iVar4 = FUN_0007d2c0();\n    return iVar4;\n  }" ({ "{") (expression_statement "(**(code **)(puVar8 + 0x42b38))();" (call_expression "(**(code **)(puVar8 + 0x42b38))()" (parenthesized_expression "(**(code **)(puVar8 + 0x42b38))" (( "(") (pointer_expression "**(code **)(puVar8 + 0x42b38)" (* "*") (pointer_expression "*(code **)(puVar8 + 0x42b38)" (* "*") (cast_expression "(code **)(puVar8 + 0x42b38)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar8 + 0x42b38)" (( "(") (binary_expression "puVar8 + 0x42b38" (identifier "puVar8") (+ "+") (number_literal "0x42b38")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "iVar4 = FUN_0007d2c0();" (assignment_expression "iVar4 = FUN_0007d2c0()" (identifier "iVar4") (= "=") (call_expression "FUN_0007d2c0()" (identifier "FUN_0007d2c0") (argument_list "()" (( "(") () ")")))) (; ";")) (return_statement "return iVar4;" (return "return") (identifier "iVar4") (; ";")) (} "}")))) (return_statement "return iVar4;" (return "return") (identifier "iVar4") (; ";")) (} "}")))
(translation_unit (function_definition type: (primitive_type) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))) (parameter_declaration type: (primitive_type) declarator: (identifier)) (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))))) body: (compound_statement (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) right: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))) (binary_expression left: (identifier) right: (number_literal))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (number_literal))))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier))))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (goto_statement label: (statement_identifier)))))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (number_literal) (identifier) (identifier)))))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (number_literal) (identifier) (identifier))))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier))))) (goto_statement label: (statement_identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (pointer_expression argument: (identifier)))))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))) (binary_expression left: (identifier) right: (number_literal))))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (number_literal))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (identifier) (identifier) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))) (binary_expression left: (identifier) right: (number_literal)) (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (pointer_expression argument: (identifier))))) (goto_statement label: (statement_identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (number_literal))))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))))) consequence: (compound_statement (return_statement (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal) (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))))) (pointer_expression argument: (identifier)))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list))) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (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 declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) consequence: (compound_statement (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) (goto_statement label: (statement_identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (goto_statement label: (statement_identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (pointer_expression argument: (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) 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 declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier)))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (pointer_expression argument: (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (goto_statement label: (statement_identifier))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (pointer_expression argument: (identifier))))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) 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: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (labeled_statement label: (statement_identifier) (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 declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (pointer_expression argument: (identifier)) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (identifier)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (return_statement (identifier))))) (return_statement (identifier)))))

/* WARNING: Removing unreachable block (ram,0x0007d54c) */
/* WARNING: Removing unreachable block (ram,0x0007d59c) */
/* WARNING: Removing unreachable block (ram,0x0007d554) */
/* WARNING: Removing unreachable block (ram,0x0007d650) */
/* WARNING: Removing unreachable block (ram,0x0007d658) */
/* WARNING: Removing unreachable block (ram,0x0007d5ac) */
/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */

int MASKED(undefined *param_1,undefined *param_2,undefined *param_3,undefined4 *****param_4,
               int param_5,undefined *param_6)

{
  undefined *puVar1;
  undefined4 uVar2;
  int *piVar3;
  int iVar4;
  int iVar5;
  undefined4 *puVar6;
  int unaff_s2;
  undefined *unaff_s4;
  int *piVar7;
  undefined *puVar8;
  code *pcVar9;
  undefined *puStack_6c;
  int iStack_68;
  int iStack_64;
  int iStack_5c;
  undefined *puStack_58;
  int iStack_54;
  undefined *puStack_50;
  undefined *puStack_4c;
  int *piStack_2c;
  undefined4 ****local_24;
  undefined *local_20;
  int local_1c;
  
  puVar1 = PTR___stack_chk_guard_000c008c;
  puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;
  local_1c = *(int *)PTR___stack_chk_guard_000c008c;
  local_24 = param_4;
  local_20 = param_1;
  if (param_1 == (undefined *)0x0) {
    if ((param_3 == (undefined *)0x0) || (param_2 == (undefined *)0x8)) {
      (*(code *)PTR_BIO_printf_000c0b94)
                (*(undefined4 *)PTR_bio_err_000bf3b0,
                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x4a0);
      goto LAB_0007d24c;
    }
    param_1 = param_2;
    unbuffer(*(undefined4 *)PTR_stdin_000bfcc8);
    unaff_s2 = dup_bio_in(param_2);
LAB_0007d018:
    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;
    if (unaff_s2 == 0) {
      (*(code *)PTR_BIO_free_000bf96c)(0);
    }
    else {
      if (param_2 == (undefined *)0x4) {
        param_1 = (undefined *)0x0;
        iVar4 = (*(code *)PTR_d2i_PUBKEY_bio_000c08f0)(unaff_s2);
        goto LAB_0007d17c;
      }
      if (param_2 == (undefined *)0xa) {
        param_1 = (undefined *)0x0;
        unaff_s4 = (undefined *)(*(code *)PTR_d2i_RSAPublicKey_bio_000bfa0c)(unaff_s2);
joined_r0x0007d138:
        if (unaff_s4 != (undefined *)0x0) {
          iVar4 = (*(code *)PTR_EVP_PKEY_new_000c0864)();
          if (iVar4 != 0) {
            param_1 = unaff_s4;
            (*(code *)PTR_EVP_PKEY_set1_RSA_000c0448)(iVar4);
          }
          (*(code *)PTR_RSA_free_000bf9e0)(unaff_s4);
LAB_0007d17c:
          (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);
          puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;
          if (iVar4 != 0) goto LAB_0007d07c;
          goto LAB_0007d05c;
        }
      }
      else {
        if (param_2 == (undefined *)0x8009) {
          param_4 = &local_24;
          param_1 = (undefined *)0x0;
          param_3 = PTR_password_callback_000bf534;
          unaff_s4 = (undefined *)
                     (*(code *)PTR_PEM_read_bio_RSAPublicKey_000c0b48)
                               (unaff_s2,0,PTR_password_callback_000bf534,param_4);
          goto joined_r0x0007d138;
        }
        if (param_2 == (undefined *)0x8005) {
          param_4 = &local_24;
          param_1 = (undefined *)0x0;
          param_3 = PTR_password_callback_000bf534;
          iVar4 = (*(code *)PTR_PEM_read_bio_PUBKEY_000bf71c)
                            (unaff_s2,0,PTR_password_callback_000bf534,param_4);
          goto LAB_0007d17c;
        }
        if (param_2 == (undefined *)0xb) {
          iVar4 = (*(code *)PTR_b2i_PublicKey_bio_000c0248)(unaff_s2);
          goto LAB_0007d17c;
        }
      }
      puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;
      (*(code *)PTR_BIO_free_000bf96c)(unaff_s2);
    }
LAB_0007d05c:
    iVar4 = 0;
    param_1 = PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x428;
    param_3 = param_6;
    (*(code *)PTR_BIO_printf_000c0b94)(*puVar6);
  }
  else {
    if (param_2 != (undefined *)0x8) {
      param_1 = (undefined *)0x72;
      param_3 = param_2;
      unaff_s2 = bio_open_default();
      goto LAB_0007d018;
    }
    if (param_5 == 0) {
      (*(code *)PTR_BIO_printf_000c0b94)
                (*(undefined4 *)PTR_bio_err_000bf3b0,
                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x488);
LAB_0007d24c:
      (*(code *)PTR_BIO_free_000bf96c)(0);
      goto LAB_0007d05c;
    }
    param_4 = &local_24;
    param_3 = *(undefined **)(PTR_PTR_EVP_PKEY_decrypt_init_000bf388 + 0x2118);
    iVar4 = (*(code *)PTR_ENGINE_load_public_key_000bfd2c)(param_5,param_1,param_3,param_4);
    puVar6 = (undefined4 *)PTR_bio_err_000bf3b0;
    if (iVar4 == 0) {
      (*(code *)PTR_BIO_printf_000c0b94)
                (*(undefined4 *)PTR_bio_err_000bf3b0,
                 PTR_s_Can_t_parse___s__as_a_number_000bf3ac + -0x470,param_6);
      (*(code *)PTR_ERR_print_errors_000bf744)(*puVar6);
      goto LAB_0007d24c;
    }
    (*(code *)PTR_BIO_free_000bf96c)(0);
  }
LAB_0007d07c:
  if (local_1c == *(int *)puVar1) {
    return iVar4;
  }
  iVar5 = local_1c;
  puVar8 = PTR___stack_chk_fail_000bfdf8;
  (*(code *)PTR___stack_chk_fail_000bfdf8)();
  piVar7 = *(int **)(puVar8 + 0x42dcc);
  puStack_50 = param_6;
  puStack_58 = puVar1;
  iStack_64 = *piVar7;
  puStack_6c = param_3;
  iStack_68 = iVar5;
  iStack_5c = iVar4;
  iStack_54 = unaff_s2;
  puStack_4c = unaff_s4;
  if (param_1 != (undefined *)0x8005) {
    (**(code **)(puVar8 + 0x438d4))
              (**(undefined4 **)(puVar8 + 0x420f0),*(int *)(puVar8 + 0x420ec) + -0x514,param_4);
    iVar4 = 0;
    goto LAB_0007d33c;
  }
  iVar4 = bio_open_default();
  if (iVar4 == 0) {
    iVar4 = 0;
    goto LAB_0007d33c;
  }
  uVar2 = (**(code **)(puVar8 + 0x43538))(iVar4,0,*(undefined4 *)(puVar8 + 0x42274),&puStack_6c);
  (**(code **)(puVar8 + 0x426ac))(iVar4);
  if ((__gp_1 == 0) && (__gp_1 = (**(code **)(puVar8 + 0x4325c))(), __gp_1 == 0)) {
    (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));
LAB_0007d4dc:
    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));
    if (piStack_2c != (int *)0x0) goto LAB_0007d4f8;
LAB_0007d63c:
    __gp_1 = 0;
    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);
    iVar4 = *(int *)(puVar8 + 0x420ec);
    uVar2 = *puVar6;
  }
  else {
    pcVar9 = *(code **)(puVar8 + 0x4267c);
    if (piStack_2c == (int *)0x0) {
LAB_0007d3dc:
      iVar5 = 0;
      iVar4 = (*pcVar9)(uVar2);
      if (0 < iVar4) {
        do {
          piVar3 = (int *)(**(code **)(puVar8 + 0x43914))(uVar2,iVar5);
          if (*piVar3 != 0) {
            iVar4 = (**(code **)(puVar8 + 0x42a8c))(__gp_1);
            if (iVar4 != 0) {
              *piVar3 = 0;
              goto LAB_0007d430;
            }
LAB_0007d4c4:
            (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));
            goto LAB_0007d4dc;
          }
LAB_0007d430:
          pcVar9 = *(code **)(puVar8 + 0x4267c);
          if (piVar3[1] != 0) {
            if (piStack_2c != (int *)0x0) {
              iVar4 = (**(code **)(puVar8 + 0x42a8c))(*piStack_2c);
              if (iVar4 == 0) goto LAB_0007d4c4;
              piVar3[1] = 0;
            }
            pcVar9 = *(code **)(puVar8 + 0x4267c);
          }
          iVar5 = iVar5 + 1;
          iVar4 = (*pcVar9)(uVar2);
        } while (iVar5 < iVar4);
      }
      iVar4 = (**(code **)(puVar8 + 0x4267c))(__gp_1);
      if (iVar4 < 1) {
        if (piStack_2c == (int *)0x0) {
          (**(code **)(puVar8 + 0x42714))(uVar2,*(undefined4 *)(puVar8 + 0x434fc));
          (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));
          goto LAB_0007d63c;
        }
        iVar4 = (**(code **)(puVar8 + 0x4267c))(*piStack_2c);
        if (iVar4 < 1) {
          pcVar9 = *(code **)(puVar8 + 0x42714);
          goto LAB_0007d5d8;
        }
      }
      else if (piStack_2c != (int *)0x0) {
        (**(code **)(puVar8 + 0x4267c))(*piStack_2c);
      }
      (**(code **)(puVar8 + 0x42714))(uVar2);
      iVar4 = 1;
      goto LAB_0007d33c;
    }
    if (*piStack_2c != 0) {
LAB_0007d3d8:
      pcVar9 = *(code **)(puVar8 + 0x4267c);
      goto LAB_0007d3dc;
    }
    iVar4 = (**(code **)(puVar8 + 0x4325c))();
    *piStack_2c = iVar4;
    if (iVar4 != 0) goto LAB_0007d3d8;
    pcVar9 = *(code **)(puVar8 + 0x42714);
LAB_0007d5d8:
    (*pcVar9)(uVar2,*(undefined4 *)(puVar8 + 0x434fc));
    (**(code **)(puVar8 + 0x42714))(__gp_1,*(undefined4 *)(puVar8 + 0x425e4));
LAB_0007d4f8:
    __gp_1 = 0;
    puVar6 = *(undefined4 **)(puVar8 + 0x420f0);
    (**(code **)(puVar8 + 0x42714))(*piStack_2c,*(undefined4 *)(puVar8 + 0x42a64));
    uVar2 = *puVar6;
    *piStack_2c = 0;
    iVar4 = *(int *)(puVar8 + 0x420ec);
  }
  (**(code **)(puVar8 + 0x438d4))(uVar2,*(int *)(puVar8 + 0x420ec) + -0x428,iVar4 + -0x1db4);
  (**(code **)(puVar8 + 0x42484))(*puVar6);
  iVar4 = 0;
LAB_0007d33c:
  if (iStack_64 != *piVar7) {
    (**(code **)(puVar8 + 0x42b38))();
    iVar4 = FUN_0007d2c0();
    return iVar4;
  }
  return iVar4;
}

