
/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */
/* WARNING: Unknown calling convention */

int unpack_revinfo(ASN1_TIME **prevtm,int *preason,ASN1_OBJECT **phold,ASN1_GENERALIZEDTIME **pinvtm
                  ,char *str)

{
  char *__s;
  char *pcVar1;
  ASN1_UTCTIME *s;
  int iVar2;
  int iVar3;
  ASN1_OBJECT *a;
  ASN1_GENERALIZEDTIME *s_00;
  char *__s_00;
  char *pcVar4;
  char *local_24;
  int local_20;
  
  pcVar4 = (char *)0x9cc;
  __s = CRYPTO_strdup(str,"../apps/ca.c",0x9cc);
  if (__s == (char *)0x0) {
    pcVar1 = "memory allocation failure\n";
LAB_0002f51e:
    s_00 = (ASN1_GENERALIZEDTIME *)0x0;
    BIO_printf((BIO *)bio_err,pcVar1,pcVar4);
    local_20 = 0;
    goto LAB_0002f576;
  }
  pcVar1 = strchr(__s,0x2c);
  if (pcVar1 == (char *)0x0) {
    local_24 = (char *)0x0;
    __s_00 = (char *)0x0;
    if (prevtm != (ASN1_TIME **)0x0) goto LAB_0002f4ae;
LAB_0002f54c:
    s_00 = (ASN1_GENERALIZEDTIME *)0x0;
    iVar2 = -1;
  }
  else {
    __s_00 = pcVar1 + 1;
    *pcVar1 = '\0';
    local_24 = strchr(__s_00,0x2c);
    if (local_24 != (char *)0x0) {
      *local_24 = '\0';
      local_24 = local_24 + 1;
    }
    if (prevtm != (ASN1_TIME **)0x0) {
LAB_0002f4ae:
      s = ASN1_UTCTIME_new();
      *prevtm = (ASN1_TIME *)s;
      if (s == (ASN1_UTCTIME *)0x0) {
        BIO_printf((BIO *)bio_err,"memory allocation failure\n");
        local_20 = 0;
        s_00 = (ASN1_GENERALIZEDTIME *)0x0;
        goto LAB_0002f576;
      }
      iVar2 = ASN1_UTCTIME_set_string(s,__s);
      if (iVar2 != 0) {
        if (__s_00 == (char *)0x0) goto LAB_0002f54c;
        goto LAB_0002f4dc;
      }
      pcVar1 = "invalid revocation date %s\n";
      pcVar4 = __s;
LAB_0002f6c6:
      local_24 = (char *)0x0;
      s_00 = (ASN1_GENERALIZEDTIME *)0x0;
      BIO_printf((BIO *)bio_err,pcVar1,pcVar4);
      local_20 = (int)local_24;
      goto LAB_0002f576;
    }
LAB_0002f4dc:
    pcVar1 = "unspecified";
    iVar2 = 0;
    while( true ) {
      iVar3 = strcasecmp(__s_00,pcVar1);
      if (iVar3 == 0) break;
      iVar2 = iVar2 + 1;
      if (iVar2 == 0xb) {
        pcVar1 = "invalid reason code %s\n";
        pcVar4 = __s_00;
        goto LAB_0002f51e;
      }
      pcVar1 = crl_reasons[iVar2];
    }
    if (iVar2 == 7) {
      s_00 = (ASN1_GENERALIZEDTIME *)0x0;
      iVar2 = 8;
    }
    else {
      local_20 = 0;
      if (iVar2 == 8) {
        if (local_24 == (char *)0x0) {
          pcVar1 = "missing hold instruction\n";
          goto LAB_0002f6c6;
        }
        a = OBJ_txt2obj(local_24,0);
        if (a == (ASN1_OBJECT *)0x0) {
          pcVar4 = "invalid object identifier %s\n";
          s_00 = (ASN1_GENERALIZEDTIME *)0x0;
LAB_0002f6f3:
          local_20 = 0;
          BIO_printf((BIO *)bio_err,pcVar4,local_24);
          goto LAB_0002f576;
        }
        if (phold == (ASN1_OBJECT **)0x0) {
          iVar2 = 6;
          s_00 = (ASN1_GENERALIZEDTIME *)0x0;
          ASN1_OBJECT_free(a);
        }
        else {
          iVar2 = 6;
          *phold = (ASN1_OBJECT *)a;
          s_00 = (ASN1_GENERALIZEDTIME *)0x0;
        }
      }
      else {
        s_00 = (ASN1_GENERALIZEDTIME *)0x0;
        if (iVar2 - 9U < 2) {
          if (local_24 == (char *)0x0) {
            pcVar4 = "missing compromised time\n";
          }
          else {
            s_00 = ASN1_GENERALIZEDTIME_new();
            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {
              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);
              if (iVar3 == 0) {
                pcVar4 = "invalid compromised time %s\n";
                goto LAB_0002f6f3;
              }
              iVar2 = (iVar2 != 9) + 1;
              goto LAB_0002f553;
            }
            pcVar4 = "memory allocation failure\n";
          }
          BIO_printf((BIO *)bio_err,pcVar4);
          goto LAB_0002f576;
        }
      }
    }
  }
LAB_0002f553:
  if (preason != (int *)0x0) {
    *preason = iVar2;
  }
  local_20 = 1;
  if (pinvtm != (ASN1_GENERALIZEDTIME **)0x0) {
    *pinvtm = (ASN1_GENERALIZEDTIME *)s_00;
    s_00 = (ASN1_GENERALIZEDTIME *)0x0;
  }
LAB_0002f576:
  CRYPTO_free(__s);
  ASN1_GENERALIZEDTIME_free(s_00);
  return local_20;
}



/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */

undefined4
FUN_0002f430(undefined4 *param_1,int *param_2,undefined4 *param_3,undefined4 *param_4,char *param_5)

{
  char *__s;
  char *pcVar1;
  ASN1_UTCTIME *s;
  int iVar2;
  int iVar3;
  ASN1_OBJECT *a;
  ASN1_GENERALIZEDTIME *s_00;
  char *__s_00;
  char *pcVar4;
  char *local_24;
  undefined4 local_20;
  
  pcVar4 = (char *)0x9cc;
  __s = CRYPTO_strdup(param_5,"../apps/ca.c",0x9cc);
  if (__s == (char *)0x0) {
    pcVar1 = "memory allocation failure\n";
LAB_0002f51e:
    s_00 = (ASN1_GENERALIZEDTIME *)0x0;
    BIO_printf(DAT_000c458c,pcVar1,pcVar4);
    local_20 = (char *)0x0;
    goto LAB_0002f576;
  }
  pcVar1 = strchr(__s,0x2c);
  if (pcVar1 == (char *)0x0) {
    local_24 = (char *)0x0;
    __s_00 = (char *)0x0;
    if (param_1 != (undefined4 *)0x0) goto LAB_0002f4ae;
LAB_0002f54c:
    s_00 = (ASN1_GENERALIZEDTIME *)0x0;
    iVar2 = -1;
  }
  else {
    __s_00 = pcVar1 + 1;
    *pcVar1 = '\0';
    local_24 = strchr(__s_00,0x2c);
    if (local_24 != (char *)0x0) {
      *local_24 = '\0';
      local_24 = local_24 + 1;
    }
    if (param_1 != (undefined4 *)0x0) {
LAB_0002f4ae:
      s = ASN1_UTCTIME_new();
      *param_1 = s;
      if (s == (ASN1_UTCTIME *)0x0) {
        BIO_printf(DAT_000c458c,"memory allocation failure\n");
        local_20 = (char *)0x0;
        s_00 = (ASN1_GENERALIZEDTIME *)0x0;
        goto LAB_0002f576;
      }
      iVar2 = ASN1_UTCTIME_set_string(s,__s);
      if (iVar2 != 0) {
        if (__s_00 == (char *)0x0) goto LAB_0002f54c;
        goto LAB_0002f4dc;
      }
      pcVar1 = "invalid revocation date %s\n";
      pcVar4 = __s;
LAB_0002f6c6:
      local_24 = (char *)0x0;
      s_00 = (ASN1_GENERALIZEDTIME *)0x0;
      BIO_printf(DAT_000c458c,pcVar1,pcVar4);
      local_20 = local_24;
      goto LAB_0002f576;
    }
LAB_0002f4dc:
    pcVar1 = "unspecified";
    iVar2 = 0;
    while( true ) {
      iVar3 = strcasecmp(__s_00,pcVar1);
      if (iVar3 == 0) break;
      iVar2 = iVar2 + 1;
      if (iVar2 == 0xb) {
        pcVar1 = "invalid reason code %s\n";
        pcVar4 = __s_00;
        goto LAB_0002f51e;
      }
      pcVar1 = (&PTR_s_unspecified_000b6320)[iVar2];
    }
    if (iVar2 == 7) {
      s_00 = (ASN1_GENERALIZEDTIME *)0x0;
      iVar2 = 8;
    }
    else {
      local_20 = (char *)0x0;
      if (iVar2 == 8) {
        if (local_24 == (char *)0x0) {
          pcVar1 = "missing hold instruction\n";
          goto LAB_0002f6c6;
        }
        a = OBJ_txt2obj(local_24,0);
        if (a == (ASN1_OBJECT *)0x0) {
          pcVar4 = "invalid object identifier %s\n";
          s_00 = (ASN1_GENERALIZEDTIME *)0x0;
LAB_0002f6f3:
          local_20 = (char *)0x0;
          BIO_printf(DAT_000c458c,pcVar4,local_24);
          goto LAB_0002f576;
        }
        if (param_3 == (undefined4 *)0x0) {
          iVar2 = 6;
          s_00 = (ASN1_GENERALIZEDTIME *)0x0;
          ASN1_OBJECT_free(a);
        }
        else {
          iVar2 = 6;
          *param_3 = a;
          s_00 = (ASN1_GENERALIZEDTIME *)0x0;
        }
      }
      else {
        s_00 = (ASN1_GENERALIZEDTIME *)0x0;
        if (iVar2 - 9U < 2) {
          if (local_24 == (char *)0x0) {
            pcVar4 = "missing compromised time\n";
          }
          else {
            s_00 = ASN1_GENERALIZEDTIME_new();
            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {
              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);
              if (iVar3 == 0) {
                pcVar4 = "invalid compromised time %s\n";
                goto LAB_0002f6f3;
              }
              iVar2 = (iVar2 != 9) + 1;
              goto LAB_0002f553;
            }
            pcVar4 = "memory allocation failure\n";
          }
          BIO_printf(DAT_000c458c,pcVar4);
          goto LAB_0002f576;
        }
      }
    }
  }
LAB_0002f553:
  if (param_2 != (int *)0x0) {
    *param_2 = iVar2;
  }
  local_20 = (char *)0x1;
  if (param_4 != (undefined4 *)0x0) {
    *param_4 = s_00;
    s_00 = (ASN1_GENERALIZEDTIME *)0x0;
  }
LAB_0002f576:
  CRYPTO_free(__s);
  ASN1_GENERALIZEDTIME_free(s_00);
  return local_20;
}


PUSH EBP
PUSH EDI
PUSH ESI
PUSH EBX
CALL 0x0002c7d0
ADD EBX,0x8d63f
SUB ESP,0x20
PUSH 0x9cc
LEA EAX,[EBX + 0xfffc19c2]
MOV dword ptr [ESP + 0xc],EAX
PUSH EAX
PUSH dword ptr [ESP + 0x4c]
CALL 0x000289e0
ADD ESP,0x10
MOV EBP,EAX
TEST EAX,EAX
JZ 0x0002f678
SUB ESP,0x8
PUSH 0x2c
PUSH EAX
CALL 0x00027df0
ADD ESP,0x10
MOV EDI,EAX
TEST EAX,EAX
JZ 0x0002f538
SUB ESP,0x8
ADD EDI,0x1
MOV byte ptr [EAX],0x0
PUSH 0x2c
PUSH EDI
CALL 0x00027df0
ADD ESP,0x10
MOV dword ptr [ESP + 0x8],EAX
TEST EAX,EAX
JZ 0x0002f4a6
MOV byte ptr [EAX],0x0
ADD EAX,0x1
MOV dword ptr [ESP + 0x8],EAX
MOV EDX,dword ptr [ESP + 0x30]
TEST EDX,EDX
JZ 0x0002f4dc
CALL 0x0002b0c0
MOV ESI,EAX
MOV EAX,dword ptr [ESP + 0x30]
MOV dword ptr [EAX],ESI
TEST ESI,ESI
JZ 0x0002f690
SUB ESP,0x8
PUSH EBP
PUSH ESI
CALL 0x0002a210
ADD ESP,0x10
TEST EAX,EAX
JZ 0x0002f6b8
TEST EDI,EDI
JZ 0x0002f54c
LEA EAX,[EBX + 0xfffc199c]
XOR ESI,ESI
JMP 0x0002f4f7
MOV EAX,dword ptr [EBX + ESI*0x4 + 0xffff98a8]
SUB ESP,0x8
PUSH EAX
PUSH EDI
CALL 0x00029f50
ADD ESP,0x10
TEST EAX,EAX
JZ 0x0002f5a8
ADD ESI,0x1
CMP ESI,0xb
JNZ 0x0002f4f0
SUB ESP,0x4
LEA EAX,[EBX + 0xfffc1cd0]
PUSH EDI
PUSH EAX
LEA EAX,[EBX + 0x7b14]
XOR ESI,ESI
PUSH dword ptr [EAX]
CALL 0x00027240
ADD ESP,0x10
XOR EDX,EDX
JMP 0x0002f576
MOV EAX,dword ptr [ESP + 0x30]
MOV dword ptr [ESP + 0x8],0x0
TEST EAX,EAX
JNZ 0x0002f4ae
XOR ESI,ESI
MOV EDI,0xffffffff
MOV EAX,dword ptr [ESP + 0x34]
TEST EAX,EAX
JZ 0x0002f561
MOV EAX,dword ptr [ESP + 0x34]
MOV dword ptr [EAX],EDI
MOV ECX,dword ptr [ESP + 0x3c]
MOV EDX,0x1
TEST ECX,ECX
JZ 0x0002f576
MOV EAX,dword ptr [ESP + 0x3c]
MOV dword ptr [EAX],ESI
XOR ESI,ESI
MOV dword ptr [ESP + 0x8],EDX
SUB ESP,0x4
PUSH 0xa2a
PUSH dword ptr [ESP + 0xc]
PUSH EBP
CALL 0x00028c20
MOV dword ptr [ESP],ESI
CALL 0x0002a040
MOV EDX,dword ptr [ESP + 0x18]
ADD ESP,0x2c
POP EBX
POP ESI
MOV EAX,EDX
POP EDI
POP EBP
RET
MOV EDX,EAX
MOV EDI,ESI
CMP ESI,0x7
JZ 0x0002f668
CMP ESI,0x8
JZ 0x0002f618
LEA EAX,[ESI + -0x9]
XOR ESI,ESI
CMP EAX,0x1
JA 0x0002f553
MOV EAX,dword ptr [ESP + 0x8]
TEST EAX,EAX
JZ 0x0002f71c
MOV dword ptr [ESP + 0xc],EDX
CALL 0x00027d60
MOV EDX,dword ptr [ESP + 0xc]
TEST EAX,EAX
MOV ESI,EAX
JZ 0x0002f75b
SUB ESP,0x8
PUSH dword ptr [ESP + 0x10]
PUSH EAX
CALL 0x00029fe0
ADD ESP,0x10
TEST EAX,EAX
JZ 0x0002f6e2
XOR EAX,EAX
CMP EDI,0x9
SETNZ AL
MOV EDI,EAX
ADD EDI,0x1
JMP 0x0002f553
MOV EAX,dword ptr [ESP + 0x8]
TEST EAX,EAX
JZ 0x0002f70d
MOV dword ptr [ESP + 0xc],EDX
SUB ESP,0x8
PUSH 0x0
PUSH dword ptr [ESP + 0x14]
CALL 0x00029eb0
ADD ESP,0x10
MOV ESI,EAX
TEST EAX,EAX
JZ 0x0002f76a
MOV EAX,dword ptr [ESP + 0x38]
TEST EAX,EAX
JZ 0x0002f743
MOV EAX,dword ptr [ESP + 0x38]
MOV EDI,0x6
MOV dword ptr [EAX],ESI
XOR ESI,ESI
JMP 0x0002f553
XOR ESI,ESI
MOV EDI,0x8
JMP 0x0002f553
SUB ESP,0x8
LEA EAX,[EBX + 0xfffc1c2a]
JMP 0x0002f51e
SUB ESP,0x8
LEA EAX,[EBX + 0xfffc1c2a]
PUSH EAX
LEA EAX,[EBX + 0x7b14]
PUSH dword ptr [EAX]
CALL 0x00027240
ADD ESP,0x10
XOR EDX,EDX
JMP 0x0002f576
MOV dword ptr [ESP + 0x8],EAX
SUB ESP,0x4
LEA EAX,[EBX + 0xfffc1c45]
PUSH EBP
PUSH EAX
LEA EAX,[EBX + 0x7b14]
XOR ESI,ESI
PUSH dword ptr [EAX]
CALL 0x00027240
ADD ESP,0x10
MOV EDX,dword ptr [ESP + 0x8]
JMP 0x0002f576
MOV dword ptr [ESP + 0xc],EAX
SUB ESP,0x4
LEA EAX,[EBX + 0xfffc1cb3]
PUSH dword ptr [ESP + 0xc]
PUSH EAX
LEA EAX,[EBX + 0x7b14]
PUSH dword ptr [EAX]
CALL 0x00027240
ADD ESP,0x10
MOV EDX,dword ptr [ESP + 0xc]
JMP 0x0002f576
MOV dword ptr [ESP + 0x8],EDX
LEA EAX,[EBX + 0xfffc1c61]
SUB ESP,0x8
JMP 0x0002f6c6
MOV dword ptr [ESP + 0x8],EDX
LEA EAX,[EBX + 0xfffc1c99]
SUB ESP,0x8
PUSH EAX
LEA EAX,[EBX + 0x7b14]
PUSH dword ptr [EAX]
CALL 0x00027240
ADD ESP,0x10
MOV EDX,dword ptr [ESP + 0x8]
JMP 0x0002f576
SUB ESP,0xc
MOV EDI,0x6
PUSH ESI
XOR ESI,ESI
CALL 0x0002c2a8
ADD ESP,0x10
JMP 0x0002f553
MOV dword ptr [ESP + 0x8],EDX
LEA EAX,[EBX + 0xfffc1c2a]
SUB ESP,0x8
JMP 0x0002f729
SUB ESP,0x4
LEA EAX,[EBX + 0xfffc1c7b]
PUSH dword ptr [ESP + 0xc]
JMP 0x0002f6f3
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nundefined4\nFUN_0002f430(undefined4 *param_1,int *param_2,undefined4 *param_3,undefined4 *param_4,char *param_5)\n\n{\n  char *__s;\n  char *pcVar1;\n  ASN1_UTCTIME *s;\n  int iVar2;\n  int iVar3;\n  ASN1_OBJECT *a;\n  ASN1_GENERALIZEDTIME *s_00;\n  char *__s_00;\n  char *pcVar4;\n  char *local_24;\n  undefined4 local_20;\n  \n  pcVar4 = (char *)0x9cc;\n  __s = CRYPTO_strdup(param_5,"../apps/ca.c",0x9cc);\n  if (__s == (char *)0x0) {\n    pcVar1 = "memory allocation failure\n";\nLAB_0002f51e:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n    local_20 = (char *)0x0;\n    goto LAB_0002f576;\n  }\n  pcVar1 = strchr(__s,0x2c);\n  if (pcVar1 == (char *)0x0) {\n    local_24 = (char *)0x0;\n    __s_00 = (char *)0x0;\n    if (param_1 != (undefined4 *)0x0) goto LAB_0002f4ae;\nLAB_0002f54c:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    iVar2 = -1;\n  }\n  else {\n    __s_00 = pcVar1 + 1;\n    *pcVar1 = '\0';\n    local_24 = strchr(__s_00,0x2c);\n    if (local_24 != (char *)0x0) {\n      *local_24 = '\0';\n      local_24 = local_24 + 1;\n    }\n    if (param_1 != (undefined4 *)0x0) {\nLAB_0002f4ae:\n      s = ASN1_UTCTIME_new();\n      *param_1 = s;\n      if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf(DAT_000c458c,"memory allocation failure\n");\n        local_20 = (char *)0x0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }\n      iVar2 = ASN1_UTCTIME_set_string(s,__s);\n      if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }\n      pcVar1 = "invalid revocation date %s\n";\n      pcVar4 = __s;\nLAB_0002f6c6:\n      local_24 = (char *)0x0;\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n      local_20 = local_24;\n      goto LAB_0002f576;\n    }\nLAB_0002f4dc:\n    pcVar1 = "unspecified";\n    iVar2 = 0;\n    while( true ) {\n      iVar3 = strcasecmp(__s_00,pcVar1);\n      if (iVar3 == 0) break;\n      iVar2 = iVar2 + 1;\n      if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }\n      pcVar1 = (&PTR_s_unspecified_000b6320)[iVar2];\n    }\n    if (iVar2 == 7) {\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      iVar2 = 8;\n    }\n    else {\n      local_20 = (char *)0x0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }\n  }\nLAB_0002f553:\n  if (param_2 != (int *)0x0) {\n    *param_2 = iVar2;\n  }\n  local_20 = (char *)0x1;\n  if (param_4 != (undefined4 *)0x0) {\n    *param_4 = s_00;\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n  }\nLAB_0002f576:\n  CRYPTO_free(__s);\n  ASN1_GENERALIZEDTIME_free(s_00);\n  return local_20;\n}\n\n" comment (function_definition "undefined4\nFUN_0002f430(undefined4 *param_1,int *param_2,undefined4 *param_3,undefined4 *param_4,char *param_5)\n\n{\n  char *__s;\n  char *pcVar1;\n  ASN1_UTCTIME *s;\n  int iVar2;\n  int iVar3;\n  ASN1_OBJECT *a;\n  ASN1_GENERALIZEDTIME *s_00;\n  char *__s_00;\n  char *pcVar4;\n  char *local_24;\n  undefined4 local_20;\n  \n  pcVar4 = (char *)0x9cc;\n  __s = CRYPTO_strdup(param_5,"../apps/ca.c",0x9cc);\n  if (__s == (char *)0x0) {\n    pcVar1 = "memory allocation failure\n";\nLAB_0002f51e:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n    local_20 = (char *)0x0;\n    goto LAB_0002f576;\n  }\n  pcVar1 = strchr(__s,0x2c);\n  if (pcVar1 == (char *)0x0) {\n    local_24 = (char *)0x0;\n    __s_00 = (char *)0x0;\n    if (param_1 != (undefined4 *)0x0) goto LAB_0002f4ae;\nLAB_0002f54c:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    iVar2 = -1;\n  }\n  else {\n    __s_00 = pcVar1 + 1;\n    *pcVar1 = '\0';\n    local_24 = strchr(__s_00,0x2c);\n    if (local_24 != (char *)0x0) {\n      *local_24 = '\0';\n      local_24 = local_24 + 1;\n    }\n    if (param_1 != (undefined4 *)0x0) {\nLAB_0002f4ae:\n      s = ASN1_UTCTIME_new();\n      *param_1 = s;\n      if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf(DAT_000c458c,"memory allocation failure\n");\n        local_20 = (char *)0x0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }\n      iVar2 = ASN1_UTCTIME_set_string(s,__s);\n      if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }\n      pcVar1 = "invalid revocation date %s\n";\n      pcVar4 = __s;\nLAB_0002f6c6:\n      local_24 = (char *)0x0;\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n      local_20 = local_24;\n      goto LAB_0002f576;\n    }\nLAB_0002f4dc:\n    pcVar1 = "unspecified";\n    iVar2 = 0;\n    while( true ) {\n      iVar3 = strcasecmp(__s_00,pcVar1);\n      if (iVar3 == 0) break;\n      iVar2 = iVar2 + 1;\n      if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }\n      pcVar1 = (&PTR_s_unspecified_000b6320)[iVar2];\n    }\n    if (iVar2 == 7) {\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      iVar2 = 8;\n    }\n    else {\n      local_20 = (char *)0x0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }\n  }\nLAB_0002f553:\n  if (param_2 != (int *)0x0) {\n    *param_2 = iVar2;\n  }\n  local_20 = (char *)0x1;\n  if (param_4 != (undefined4 *)0x0) {\n    *param_4 = s_00;\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n  }\nLAB_0002f576:\n  CRYPTO_free(__s);\n  ASN1_GENERALIZEDTIME_free(s_00);\n  return local_20;\n}" type_identifier (function_declarator "FUN_0002f430(undefined4 *param_1,int *param_2,undefined4 *param_3,undefined4 *param_4,char *param_5)" identifier (parameter_list "(undefined4 *param_1,int *param_2,undefined4 *param_3,undefined4 *param_4,char *param_5)" ( (parameter_declaration "undefined4 *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "int *param_2" primitive_type (pointer_declarator "*param_2" * identifier)) , (parameter_declaration "undefined4 *param_3" type_identifier (pointer_declarator "*param_3" * identifier)) , (parameter_declaration "undefined4 *param_4" type_identifier (pointer_declarator "*param_4" * identifier)) , (parameter_declaration "char *param_5" primitive_type (pointer_declarator "*param_5" * identifier)) ))) (compound_statement "{\n  char *__s;\n  char *pcVar1;\n  ASN1_UTCTIME *s;\n  int iVar2;\n  int iVar3;\n  ASN1_OBJECT *a;\n  ASN1_GENERALIZEDTIME *s_00;\n  char *__s_00;\n  char *pcVar4;\n  char *local_24;\n  undefined4 local_20;\n  \n  pcVar4 = (char *)0x9cc;\n  __s = CRYPTO_strdup(param_5,"../apps/ca.c",0x9cc);\n  if (__s == (char *)0x0) {\n    pcVar1 = "memory allocation failure\n";\nLAB_0002f51e:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n    local_20 = (char *)0x0;\n    goto LAB_0002f576;\n  }\n  pcVar1 = strchr(__s,0x2c);\n  if (pcVar1 == (char *)0x0) {\n    local_24 = (char *)0x0;\n    __s_00 = (char *)0x0;\n    if (param_1 != (undefined4 *)0x0) goto LAB_0002f4ae;\nLAB_0002f54c:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    iVar2 = -1;\n  }\n  else {\n    __s_00 = pcVar1 + 1;\n    *pcVar1 = '\0';\n    local_24 = strchr(__s_00,0x2c);\n    if (local_24 != (char *)0x0) {\n      *local_24 = '\0';\n      local_24 = local_24 + 1;\n    }\n    if (param_1 != (undefined4 *)0x0) {\nLAB_0002f4ae:\n      s = ASN1_UTCTIME_new();\n      *param_1 = s;\n      if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf(DAT_000c458c,"memory allocation failure\n");\n        local_20 = (char *)0x0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }\n      iVar2 = ASN1_UTCTIME_set_string(s,__s);\n      if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }\n      pcVar1 = "invalid revocation date %s\n";\n      pcVar4 = __s;\nLAB_0002f6c6:\n      local_24 = (char *)0x0;\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n      local_20 = local_24;\n      goto LAB_0002f576;\n    }\nLAB_0002f4dc:\n    pcVar1 = "unspecified";\n    iVar2 = 0;\n    while( true ) {\n      iVar3 = strcasecmp(__s_00,pcVar1);\n      if (iVar3 == 0) break;\n      iVar2 = iVar2 + 1;\n      if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }\n      pcVar1 = (&PTR_s_unspecified_000b6320)[iVar2];\n    }\n    if (iVar2 == 7) {\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      iVar2 = 8;\n    }\n    else {\n      local_20 = (char *)0x0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }\n  }\nLAB_0002f553:\n  if (param_2 != (int *)0x0) {\n    *param_2 = iVar2;\n  }\n  local_20 = (char *)0x1;\n  if (param_4 != (undefined4 *)0x0) {\n    *param_4 = s_00;\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n  }\nLAB_0002f576:\n  CRYPTO_free(__s);\n  ASN1_GENERALIZEDTIME_free(s_00);\n  return local_20;\n}" { (declaration "char *__s;" primitive_type (pointer_declarator "*__s" * identifier) ;) (declaration "char *pcVar1;" primitive_type (pointer_declarator "*pcVar1" * identifier) ;) (declaration "ASN1_UTCTIME *s;" type_identifier (pointer_declarator "*s" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "ASN1_OBJECT *a;" type_identifier (pointer_declarator "*a" * identifier) ;) (declaration "ASN1_GENERALIZEDTIME *s_00;" type_identifier (pointer_declarator "*s_00" * identifier) ;) (declaration "char *__s_00;" primitive_type (pointer_declarator "*__s_00" * identifier) ;) (declaration "char *pcVar4;" primitive_type (pointer_declarator "*pcVar4" * identifier) ;) (declaration "char *local_24;" primitive_type (pointer_declarator "*local_24" * identifier) ;) (declaration "undefined4 local_20;" type_identifier identifier ;) (expression_statement "pcVar4 = (char *)0x9cc;" (assignment_expression "pcVar4 = (char *)0x9cc" identifier = (cast_expression "(char *)0x9cc" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "__s = CRYPTO_strdup(param_5,"../apps/ca.c",0x9cc);" (assignment_expression "__s = CRYPTO_strdup(param_5,"../apps/ca.c",0x9cc)" identifier = (call_expression "CRYPTO_strdup(param_5,"../apps/ca.c",0x9cc)" identifier (argument_list "(param_5,"../apps/ca.c",0x9cc)" ( identifier , (string_literal ""../apps/ca.c"" " string_content ") , number_literal )))) ;) (if_statement "if (__s == (char *)0x0) {\n    pcVar1 = "memory allocation failure\n";\nLAB_0002f51e:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n    local_20 = (char *)0x0;\n    goto LAB_0002f576;\n  }" if (parenthesized_expression "(__s == (char *)0x0)" ( (binary_expression "__s == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    pcVar1 = "memory allocation failure\n";\nLAB_0002f51e:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n    local_20 = (char *)0x0;\n    goto LAB_0002f576;\n  }" { (expression_statement "pcVar1 = "memory allocation failure\n";" (assignment_expression "pcVar1 = "memory allocation failure\n"" identifier = (string_literal ""memory allocation failure\n"" " string_content escape_sequence ")) ;) (labeled_statement "LAB_0002f51e:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;" statement_identifier : (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" identifier = (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "BIO_printf(DAT_000c458c,pcVar1,pcVar4);" (call_expression "BIO_printf(DAT_000c458c,pcVar1,pcVar4)" identifier (argument_list "(DAT_000c458c,pcVar1,pcVar4)" ( identifier , identifier , identifier ))) ;) (expression_statement "local_20 = (char *)0x0;" (assignment_expression "local_20 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_0002f576;" goto statement_identifier ;) })) (expression_statement "pcVar1 = strchr(__s,0x2c);" (assignment_expression "pcVar1 = strchr(__s,0x2c)" identifier = (call_expression "strchr(__s,0x2c)" identifier (argument_list "(__s,0x2c)" ( identifier , number_literal )))) ;) (if_statement "if (pcVar1 == (char *)0x0) {\n    local_24 = (char *)0x0;\n    __s_00 = (char *)0x0;\n    if (param_1 != (undefined4 *)0x0) goto LAB_0002f4ae;\nLAB_0002f54c:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    iVar2 = -1;\n  }\n  else {\n    __s_00 = pcVar1 + 1;\n    *pcVar1 = '\0';\n    local_24 = strchr(__s_00,0x2c);\n    if (local_24 != (char *)0x0) {\n      *local_24 = '\0';\n      local_24 = local_24 + 1;\n    }\n    if (param_1 != (undefined4 *)0x0) {\nLAB_0002f4ae:\n      s = ASN1_UTCTIME_new();\n      *param_1 = s;\n      if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf(DAT_000c458c,"memory allocation failure\n");\n        local_20 = (char *)0x0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }\n      iVar2 = ASN1_UTCTIME_set_string(s,__s);\n      if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }\n      pcVar1 = "invalid revocation date %s\n";\n      pcVar4 = __s;\nLAB_0002f6c6:\n      local_24 = (char *)0x0;\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n      local_20 = local_24;\n      goto LAB_0002f576;\n    }\nLAB_0002f4dc:\n    pcVar1 = "unspecified";\n    iVar2 = 0;\n    while( true ) {\n      iVar3 = strcasecmp(__s_00,pcVar1);\n      if (iVar3 == 0) break;\n      iVar2 = iVar2 + 1;\n      if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }\n      pcVar1 = (&PTR_s_unspecified_000b6320)[iVar2];\n    }\n    if (iVar2 == 7) {\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      iVar2 = 8;\n    }\n    else {\n      local_20 = (char *)0x0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }\n  }" if (parenthesized_expression "(pcVar1 == (char *)0x0)" ( (binary_expression "pcVar1 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    local_24 = (char *)0x0;\n    __s_00 = (char *)0x0;\n    if (param_1 != (undefined4 *)0x0) goto LAB_0002f4ae;\nLAB_0002f54c:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    iVar2 = -1;\n  }" { (expression_statement "local_24 = (char *)0x0;" (assignment_expression "local_24 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "__s_00 = (char *)0x0;" (assignment_expression "__s_00 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (param_1 != (undefined4 *)0x0) goto LAB_0002f4ae;" if (parenthesized_expression "(param_1 != (undefined4 *)0x0)" ( (binary_expression "param_1 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_0002f4ae;" goto statement_identifier ;)) (labeled_statement "LAB_0002f54c:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;" statement_identifier : (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" identifier = (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "iVar2 = -1;" (assignment_expression "iVar2 = -1" identifier = number_literal) ;) }) (else_clause "else {\n    __s_00 = pcVar1 + 1;\n    *pcVar1 = '\0';\n    local_24 = strchr(__s_00,0x2c);\n    if (local_24 != (char *)0x0) {\n      *local_24 = '\0';\n      local_24 = local_24 + 1;\n    }\n    if (param_1 != (undefined4 *)0x0) {\nLAB_0002f4ae:\n      s = ASN1_UTCTIME_new();\n      *param_1 = s;\n      if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf(DAT_000c458c,"memory allocation failure\n");\n        local_20 = (char *)0x0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }\n      iVar2 = ASN1_UTCTIME_set_string(s,__s);\n      if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }\n      pcVar1 = "invalid revocation date %s\n";\n      pcVar4 = __s;\nLAB_0002f6c6:\n      local_24 = (char *)0x0;\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n      local_20 = local_24;\n      goto LAB_0002f576;\n    }\nLAB_0002f4dc:\n    pcVar1 = "unspecified";\n    iVar2 = 0;\n    while( true ) {\n      iVar3 = strcasecmp(__s_00,pcVar1);\n      if (iVar3 == 0) break;\n      iVar2 = iVar2 + 1;\n      if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }\n      pcVar1 = (&PTR_s_unspecified_000b6320)[iVar2];\n    }\n    if (iVar2 == 7) {\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      iVar2 = 8;\n    }\n    else {\n      local_20 = (char *)0x0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }\n  }" else (compound_statement "{\n    __s_00 = pcVar1 + 1;\n    *pcVar1 = '\0';\n    local_24 = strchr(__s_00,0x2c);\n    if (local_24 != (char *)0x0) {\n      *local_24 = '\0';\n      local_24 = local_24 + 1;\n    }\n    if (param_1 != (undefined4 *)0x0) {\nLAB_0002f4ae:\n      s = ASN1_UTCTIME_new();\n      *param_1 = s;\n      if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf(DAT_000c458c,"memory allocation failure\n");\n        local_20 = (char *)0x0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }\n      iVar2 = ASN1_UTCTIME_set_string(s,__s);\n      if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }\n      pcVar1 = "invalid revocation date %s\n";\n      pcVar4 = __s;\nLAB_0002f6c6:\n      local_24 = (char *)0x0;\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n      local_20 = local_24;\n      goto LAB_0002f576;\n    }\nLAB_0002f4dc:\n    pcVar1 = "unspecified";\n    iVar2 = 0;\n    while( true ) {\n      iVar3 = strcasecmp(__s_00,pcVar1);\n      if (iVar3 == 0) break;\n      iVar2 = iVar2 + 1;\n      if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }\n      pcVar1 = (&PTR_s_unspecified_000b6320)[iVar2];\n    }\n    if (iVar2 == 7) {\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      iVar2 = 8;\n    }\n    else {\n      local_20 = (char *)0x0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }\n  }" { (expression_statement "__s_00 = pcVar1 + 1;" (assignment_expression "__s_00 = pcVar1 + 1" identifier = (binary_expression "pcVar1 + 1" identifier + number_literal)) ;) (expression_statement "*pcVar1 = '\0';" (assignment_expression "*pcVar1 = '\0'" (pointer_expression "*pcVar1" * identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "local_24 = strchr(__s_00,0x2c);" (assignment_expression "local_24 = strchr(__s_00,0x2c)" identifier = (call_expression "strchr(__s_00,0x2c)" identifier (argument_list "(__s_00,0x2c)" ( identifier , number_literal )))) ;) (if_statement "if (local_24 != (char *)0x0) {\n      *local_24 = '\0';\n      local_24 = local_24 + 1;\n    }" if (parenthesized_expression "(local_24 != (char *)0x0)" ( (binary_expression "local_24 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      *local_24 = '\0';\n      local_24 = local_24 + 1;\n    }" { (expression_statement "*local_24 = '\0';" (assignment_expression "*local_24 = '\0'" (pointer_expression "*local_24" * identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "local_24 = local_24 + 1;" (assignment_expression "local_24 = local_24 + 1" identifier = (binary_expression "local_24 + 1" identifier + number_literal)) ;) })) (if_statement "if (param_1 != (undefined4 *)0x0) {\nLAB_0002f4ae:\n      s = ASN1_UTCTIME_new();\n      *param_1 = s;\n      if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf(DAT_000c458c,"memory allocation failure\n");\n        local_20 = (char *)0x0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }\n      iVar2 = ASN1_UTCTIME_set_string(s,__s);\n      if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }\n      pcVar1 = "invalid revocation date %s\n";\n      pcVar4 = __s;\nLAB_0002f6c6:\n      local_24 = (char *)0x0;\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n      local_20 = local_24;\n      goto LAB_0002f576;\n    }" if (parenthesized_expression "(param_1 != (undefined4 *)0x0)" ( (binary_expression "param_1 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_0002f4ae:\n      s = ASN1_UTCTIME_new();\n      *param_1 = s;\n      if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf(DAT_000c458c,"memory allocation failure\n");\n        local_20 = (char *)0x0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }\n      iVar2 = ASN1_UTCTIME_set_string(s,__s);\n      if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }\n      pcVar1 = "invalid revocation date %s\n";\n      pcVar4 = __s;\nLAB_0002f6c6:\n      local_24 = (char *)0x0;\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n      local_20 = local_24;\n      goto LAB_0002f576;\n    }" { (labeled_statement "LAB_0002f4ae:\n      s = ASN1_UTCTIME_new();" statement_identifier : (expression_statement "s = ASN1_UTCTIME_new();" (assignment_expression "s = ASN1_UTCTIME_new()" identifier = (call_expression "ASN1_UTCTIME_new()" identifier (argument_list "()" ( )))) ;)) (expression_statement "*param_1 = s;" (assignment_expression "*param_1 = s" (pointer_expression "*param_1" * identifier) = identifier) ;) (if_statement "if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf(DAT_000c458c,"memory allocation failure\n");\n        local_20 = (char *)0x0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }" if (parenthesized_expression "(s == (ASN1_UTCTIME *)0x0)" ( (binary_expression "s == (ASN1_UTCTIME *)0x0" identifier == (cast_expression "(ASN1_UTCTIME *)0x0" ( (type_descriptor "ASN1_UTCTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        BIO_printf(DAT_000c458c,"memory allocation failure\n");\n        local_20 = (char *)0x0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }" { (expression_statement "BIO_printf(DAT_000c458c,"memory allocation failure\n");" (call_expression "BIO_printf(DAT_000c458c,"memory allocation failure\n")" identifier (argument_list "(DAT_000c458c,"memory allocation failure\n")" ( identifier , (string_literal ""memory allocation failure\n"" " string_content escape_sequence ") ))) ;) (expression_statement "local_20 = (char *)0x0;" (assignment_expression "local_20 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" identifier = (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_0002f576;" goto statement_identifier ;) })) (expression_statement "iVar2 = ASN1_UTCTIME_set_string(s,__s);" (assignment_expression "iVar2 = ASN1_UTCTIME_set_string(s,__s)" identifier = (call_expression "ASN1_UTCTIME_set_string(s,__s)" identifier (argument_list "(s,__s)" ( identifier , identifier )))) ;) (if_statement "if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (compound_statement "{\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }" { (if_statement "if (__s_00 == (char *)0x0) goto LAB_0002f54c;" if (parenthesized_expression "(__s_00 == (char *)0x0)" ( (binary_expression "__s_00 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_0002f54c;" goto statement_identifier ;)) (goto_statement "goto LAB_0002f4dc;" goto statement_identifier ;) })) (expression_statement "pcVar1 = "invalid revocation date %s\n";" (assignment_expression "pcVar1 = "invalid revocation date %s\n"" identifier = (string_literal ""invalid revocation date %s\n"" " string_content escape_sequence ")) ;) (expression_statement "pcVar4 = __s;" (assignment_expression "pcVar4 = __s" identifier = identifier) ;) (labeled_statement "LAB_0002f6c6:\n      local_24 = (char *)0x0;" statement_identifier : (expression_statement "local_24 = (char *)0x0;" (assignment_expression "local_24 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" identifier = (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "BIO_printf(DAT_000c458c,pcVar1,pcVar4);" (call_expression "BIO_printf(DAT_000c458c,pcVar1,pcVar4)" identifier (argument_list "(DAT_000c458c,pcVar1,pcVar4)" ( identifier , identifier , identifier ))) ;) (expression_statement "local_20 = local_24;" (assignment_expression "local_20 = local_24" identifier = identifier) ;) (goto_statement "goto LAB_0002f576;" goto statement_identifier ;) })) (labeled_statement "LAB_0002f4dc:\n    pcVar1 = "unspecified";" statement_identifier : (expression_statement "pcVar1 = "unspecified";" (assignment_expression "pcVar1 = "unspecified"" identifier = (string_literal ""unspecified"" " string_content ")) ;)) (expression_statement "iVar2 = 0;" (assignment_expression "iVar2 = 0" identifier = number_literal) ;) (while_statement "while( true ) {\n      iVar3 = strcasecmp(__s_00,pcVar1);\n      if (iVar3 == 0) break;\n      iVar2 = iVar2 + 1;\n      if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }\n      pcVar1 = (&PTR_s_unspecified_000b6320)[iVar2];\n    }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n      iVar3 = strcasecmp(__s_00,pcVar1);\n      if (iVar3 == 0) break;\n      iVar2 = iVar2 + 1;\n      if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }\n      pcVar1 = (&PTR_s_unspecified_000b6320)[iVar2];\n    }" { (expression_statement "iVar3 = strcasecmp(__s_00,pcVar1);" (assignment_expression "iVar3 = strcasecmp(__s_00,pcVar1)" identifier = (call_expression "strcasecmp(__s_00,pcVar1)" identifier (argument_list "(__s_00,pcVar1)" ( identifier , identifier )))) ;) (if_statement "if (iVar3 == 0) break;" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar2 = iVar2 + 1;" (assignment_expression "iVar2 = iVar2 + 1" identifier = (binary_expression "iVar2 + 1" identifier + number_literal)) ;) (if_statement "if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }" if (parenthesized_expression "(iVar2 == 0xb)" ( (binary_expression "iVar2 == 0xb" identifier == number_literal) )) (compound_statement "{\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }" { (expression_statement "pcVar1 = "invalid reason code %s\n";" (assignment_expression "pcVar1 = "invalid reason code %s\n"" identifier = (string_literal ""invalid reason code %s\n"" " string_content escape_sequence ")) ;) (expression_statement "pcVar4 = __s_00;" (assignment_expression "pcVar4 = __s_00" identifier = identifier) ;) (goto_statement "goto LAB_0002f51e;" goto statement_identifier ;) })) (expression_statement "pcVar1 = (&PTR_s_unspecified_000b6320)[iVar2];" (assignment_expression "pcVar1 = (&PTR_s_unspecified_000b6320)[iVar2]" identifier = (subscript_expression "(&PTR_s_unspecified_000b6320)[iVar2]" (parenthesized_expression "(&PTR_s_unspecified_000b6320)" ( (pointer_expression "&PTR_s_unspecified_000b6320" & identifier) )) [ identifier ])) ;) })) (if_statement "if (iVar2 == 7) {\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      iVar2 = 8;\n    }\n    else {\n      local_20 = (char *)0x0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }" if (parenthesized_expression "(iVar2 == 7)" ( (binary_expression "iVar2 == 7" identifier == number_literal) )) (compound_statement "{\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      iVar2 = 8;\n    }" { (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" identifier = (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iVar2 = 8;" (assignment_expression "iVar2 = 8" identifier = number_literal) ;) }) (else_clause "else {\n      local_20 = (char *)0x0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }" else (compound_statement "{\n      local_20 = (char *)0x0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }" { (expression_statement "local_20 = (char *)0x0;" (assignment_expression "local_20 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }" if (parenthesized_expression "(iVar2 == 8)" ( (binary_expression "iVar2 == 8" identifier == number_literal) )) (compound_statement "{\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }" { (if_statement "if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }" if (parenthesized_expression "(local_24 == (char *)0x0)" ( (binary_expression "local_24 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }" { (expression_statement "pcVar1 = "missing hold instruction\n";" (assignment_expression "pcVar1 = "missing hold instruction\n"" identifier = (string_literal ""missing hold instruction\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0002f6c6;" goto statement_identifier ;) })) (expression_statement "a = OBJ_txt2obj(local_24,0);" (assignment_expression "a = OBJ_txt2obj(local_24,0)" identifier = (call_expression "OBJ_txt2obj(local_24,0)" identifier (argument_list "(local_24,0)" ( identifier , number_literal )))) ;) (if_statement "if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }" if (parenthesized_expression "(a == (ASN1_OBJECT *)0x0)" ( (binary_expression "a == (ASN1_OBJECT *)0x0" identifier == (cast_expression "(ASN1_OBJECT *)0x0" ( (type_descriptor "ASN1_OBJECT *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }" { (expression_statement "pcVar4 = "invalid object identifier %s\n";" (assignment_expression "pcVar4 = "invalid object identifier %s\n"" identifier = (string_literal ""invalid object identifier %s\n"" " string_content escape_sequence ")) ;) (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" identifier = (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_0002f6f3:\n          local_20 = (char *)0x0;" statement_identifier : (expression_statement "local_20 = (char *)0x0;" (assignment_expression "local_20 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "BIO_printf(DAT_000c458c,pcVar4,local_24);" (call_expression "BIO_printf(DAT_000c458c,pcVar4,local_24)" identifier (argument_list "(DAT_000c458c,pcVar4,local_24)" ( identifier , identifier , identifier ))) ;) (goto_statement "goto LAB_0002f576;" goto statement_identifier ;) })) (if_statement "if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }" if (parenthesized_expression "(param_3 == (undefined4 *)0x0)" ( (binary_expression "param_3 == (undefined4 *)0x0" identifier == (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }" { (expression_statement "iVar2 = 6;" (assignment_expression "iVar2 = 6" identifier = number_literal) ;) (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" identifier = (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ASN1_OBJECT_free(a);" (call_expression "ASN1_OBJECT_free(a)" identifier (argument_list "(a)" ( identifier ))) ;) }) (else_clause "else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }" else (compound_statement "{\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }" { (expression_statement "iVar2 = 6;" (assignment_expression "iVar2 = 6" identifier = number_literal) ;) (expression_statement "*param_3 = a;" (assignment_expression "*param_3 = a" (pointer_expression "*param_3" * identifier) = identifier) ;) (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" identifier = (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }))) }) (else_clause "else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }" else (compound_statement "{\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }" { (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" identifier = (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }" if (parenthesized_expression "(iVar2 - 9U < 2)" ( (binary_expression "iVar2 - 9U < 2" (binary_expression "iVar2 - 9U" identifier - number_literal) < number_literal) )) (compound_statement "{\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }" { (if_statement "if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }" if (parenthesized_expression "(local_24 == (char *)0x0)" ( (binary_expression "local_24 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            pcVar4 = "missing compromised time\n";\n          }" { (expression_statement "pcVar4 = "missing compromised time\n";" (assignment_expression "pcVar4 = "missing compromised time\n"" identifier = (string_literal ""missing compromised time\n"" " string_content escape_sequence ")) ;) }) (else_clause "else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }" else (compound_statement "{\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }" { (expression_statement "s_00 = ASN1_GENERALIZEDTIME_new();" (assignment_expression "s_00 = ASN1_GENERALIZEDTIME_new()" identifier = (call_expression "ASN1_GENERALIZEDTIME_new()" identifier (argument_list "()" ( )))) ;) (if_statement "if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }" if (parenthesized_expression "(s_00 != (ASN1_GENERALIZEDTIME *)0x0)" ( (binary_expression "s_00 != (ASN1_GENERALIZEDTIME *)0x0" identifier != (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }" { (expression_statement "iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);" (assignment_expression "iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24)" identifier = (call_expression "ASN1_GENERALIZEDTIME_set_string(s_00,local_24)" identifier (argument_list "(s_00,local_24)" ( identifier , identifier )))) ;) (if_statement "if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }" { (expression_statement "pcVar4 = "invalid compromised time %s\n";" (assignment_expression "pcVar4 = "invalid compromised time %s\n"" identifier = (string_literal ""invalid compromised time %s\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0002f6f3;" goto statement_identifier ;) })) (expression_statement "iVar2 = (iVar2 != 9) + 1;" (assignment_expression "iVar2 = (iVar2 != 9) + 1" identifier = (binary_expression "(iVar2 != 9) + 1" (parenthesized_expression "(iVar2 != 9)" ( (binary_expression "iVar2 != 9" identifier != number_literal) )) + number_literal)) ;) (goto_statement "goto LAB_0002f553;" goto statement_identifier ;) })) (expression_statement "pcVar4 = "memory allocation failure\n";" (assignment_expression "pcVar4 = "memory allocation failure\n"" identifier = (string_literal ""memory allocation failure\n"" " string_content escape_sequence ")) ;) }))) (expression_statement "BIO_printf(DAT_000c458c,pcVar4);" (call_expression "BIO_printf(DAT_000c458c,pcVar4)" identifier (argument_list "(DAT_000c458c,pcVar4)" ( identifier , identifier ))) ;) (goto_statement "goto LAB_0002f576;" goto statement_identifier ;) })) }))) }))) }))) (labeled_statement "LAB_0002f553:\n  if (param_2 != (int *)0x0) {\n    *param_2 = iVar2;\n  }" statement_identifier : (if_statement "if (param_2 != (int *)0x0) {\n    *param_2 = iVar2;\n  }" if (parenthesized_expression "(param_2 != (int *)0x0)" ( (binary_expression "param_2 != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    *param_2 = iVar2;\n  }" { (expression_statement "*param_2 = iVar2;" (assignment_expression "*param_2 = iVar2" (pointer_expression "*param_2" * identifier) = identifier) ;) }))) (expression_statement "local_20 = (char *)0x1;" (assignment_expression "local_20 = (char *)0x1" identifier = (cast_expression "(char *)0x1" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (param_4 != (undefined4 *)0x0) {\n    *param_4 = s_00;\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n  }" if (parenthesized_expression "(param_4 != (undefined4 *)0x0)" ( (binary_expression "param_4 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    *param_4 = s_00;\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n  }" { (expression_statement "*param_4 = s_00;" (assignment_expression "*param_4 = s_00" (pointer_expression "*param_4" * identifier) = identifier) ;) (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" identifier = (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (labeled_statement "LAB_0002f576:\n  CRYPTO_free(__s);" statement_identifier : (expression_statement "CRYPTO_free(__s);" (call_expression "CRYPTO_free(__s)" identifier (argument_list "(__s)" ( identifier ))) ;)) (expression_statement "ASN1_GENERALIZEDTIME_free(s_00);" (call_expression "ASN1_GENERALIZEDTIME_free(s_00)" identifier (argument_list "(s_00)" ( identifier ))) ;) (return_statement "return local_20;" return identifier ;) })))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n/* WARNING: Unknown calling convention */\n\nint unpack_revinfo(ASN1_TIME **prevtm,int *preason,ASN1_OBJECT **phold,ASN1_GENERALIZEDTIME **pinvtm\n                  ,char *str)\n\n{\n  char *__s;\n  char *pcVar1;\n  ASN1_UTCTIME *s;\n  int iVar2;\n  int iVar3;\n  ASN1_OBJECT *a;\n  ASN1_GENERALIZEDTIME *s_00;\n  char *__s_00;\n  char *pcVar4;\n  char *local_24;\n  int local_20;\n  \n  pcVar4 = (char *)0x9cc;\n  __s = CRYPTO_strdup(str,"../apps/ca.c",0x9cc);\n  if (__s == (char *)0x0) {\n    pcVar1 = "memory allocation failure\n";\nLAB_0002f51e:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    BIO_printf((BIO *)bio_err,pcVar1,pcVar4);\n    local_20 = 0;\n    goto LAB_0002f576;\n  }\n  pcVar1 = strchr(__s,0x2c);\n  if (pcVar1 == (char *)0x0) {\n    local_24 = (char *)0x0;\n    __s_00 = (char *)0x0;\n    if (prevtm != (ASN1_TIME **)0x0) goto LAB_0002f4ae;\nLAB_0002f54c:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    iVar2 = -1;\n  }\n  else {\n    __s_00 = pcVar1 + 1;\n    *pcVar1 = '\0';\n    local_24 = strchr(__s_00,0x2c);\n    if (local_24 != (char *)0x0) {\n      *local_24 = '\0';\n      local_24 = local_24 + 1;\n    }\n    if (prevtm != (ASN1_TIME **)0x0) {\nLAB_0002f4ae:\n      s = ASN1_UTCTIME_new();\n      *prevtm = (ASN1_TIME *)s;\n      if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf((BIO *)bio_err,"memory allocation failure\n");\n        local_20 = 0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }\n      iVar2 = ASN1_UTCTIME_set_string(s,__s);\n      if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }\n      pcVar1 = "invalid revocation date %s\n";\n      pcVar4 = __s;\nLAB_0002f6c6:\n      local_24 = (char *)0x0;\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      BIO_printf((BIO *)bio_err,pcVar1,pcVar4);\n      local_20 = (int)local_24;\n      goto LAB_0002f576;\n    }\nLAB_0002f4dc:\n    pcVar1 = "unspecified";\n    iVar2 = 0;\n    while( true ) {\n      iVar3 = strcasecmp(__s_00,pcVar1);\n      if (iVar3 == 0) break;\n      iVar2 = iVar2 + 1;\n      if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }\n      pcVar1 = crl_reasons[iVar2];\n    }\n    if (iVar2 == 7) {\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      iVar2 = 8;\n    }\n    else {\n      local_20 = 0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = 0;\n          BIO_printf((BIO *)bio_err,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (phold == (ASN1_OBJECT **)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *phold = (ASN1_OBJECT *)a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf((BIO *)bio_err,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }\n  }\nLAB_0002f553:\n  if (preason != (int *)0x0) {\n    *preason = iVar2;\n  }\n  local_20 = 1;\n  if (pinvtm != (ASN1_GENERALIZEDTIME **)0x0) {\n    *pinvtm = (ASN1_GENERALIZEDTIME *)s_00;\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n  }\nLAB_0002f576:\n  CRYPTO_free(__s);\n  ASN1_GENERALIZEDTIME_free(s_00);\n  return local_20;\n}\n\n" comment comment (function_definition "int unpack_revinfo(ASN1_TIME **prevtm,int *preason,ASN1_OBJECT **phold,ASN1_GENERALIZEDTIME **pinvtm\n                  ,char *str)\n\n{\n  char *__s;\n  char *pcVar1;\n  ASN1_UTCTIME *s;\n  int iVar2;\n  int iVar3;\n  ASN1_OBJECT *a;\n  ASN1_GENERALIZEDTIME *s_00;\n  char *__s_00;\n  char *pcVar4;\n  char *local_24;\n  int local_20;\n  \n  pcVar4 = (char *)0x9cc;\n  __s = CRYPTO_strdup(str,"../apps/ca.c",0x9cc);\n  if (__s == (char *)0x0) {\n    pcVar1 = "memory allocation failure\n";\nLAB_0002f51e:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    BIO_printf((BIO *)bio_err,pcVar1,pcVar4);\n    local_20 = 0;\n    goto LAB_0002f576;\n  }\n  pcVar1 = strchr(__s,0x2c);\n  if (pcVar1 == (char *)0x0) {\n    local_24 = (char *)0x0;\n    __s_00 = (char *)0x0;\n    if (prevtm != (ASN1_TIME **)0x0) goto LAB_0002f4ae;\nLAB_0002f54c:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    iVar2 = -1;\n  }\n  else {\n    __s_00 = pcVar1 + 1;\n    *pcVar1 = '\0';\n    local_24 = strchr(__s_00,0x2c);\n    if (local_24 != (char *)0x0) {\n      *local_24 = '\0';\n      local_24 = local_24 + 1;\n    }\n    if (prevtm != (ASN1_TIME **)0x0) {\nLAB_0002f4ae:\n      s = ASN1_UTCTIME_new();\n      *prevtm = (ASN1_TIME *)s;\n      if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf((BIO *)bio_err,"memory allocation failure\n");\n        local_20 = 0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }\n      iVar2 = ASN1_UTCTIME_set_string(s,__s);\n      if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }\n      pcVar1 = "invalid revocation date %s\n";\n      pcVar4 = __s;\nLAB_0002f6c6:\n      local_24 = (char *)0x0;\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      BIO_printf((BIO *)bio_err,pcVar1,pcVar4);\n      local_20 = (int)local_24;\n      goto LAB_0002f576;\n    }\nLAB_0002f4dc:\n    pcVar1 = "unspecified";\n    iVar2 = 0;\n    while( true ) {\n      iVar3 = strcasecmp(__s_00,pcVar1);\n      if (iVar3 == 0) break;\n      iVar2 = iVar2 + 1;\n      if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }\n      pcVar1 = crl_reasons[iVar2];\n    }\n    if (iVar2 == 7) {\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      iVar2 = 8;\n    }\n    else {\n      local_20 = 0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = 0;\n          BIO_printf((BIO *)bio_err,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (phold == (ASN1_OBJECT **)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *phold = (ASN1_OBJECT *)a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf((BIO *)bio_err,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }\n  }\nLAB_0002f553:\n  if (preason != (int *)0x0) {\n    *preason = iVar2;\n  }\n  local_20 = 1;\n  if (pinvtm != (ASN1_GENERALIZEDTIME **)0x0) {\n    *pinvtm = (ASN1_GENERALIZEDTIME *)s_00;\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n  }\nLAB_0002f576:\n  CRYPTO_free(__s);\n  ASN1_GENERALIZEDTIME_free(s_00);\n  return local_20;\n}" primitive_type (function_declarator "unpack_revinfo(ASN1_TIME **prevtm,int *preason,ASN1_OBJECT **phold,ASN1_GENERALIZEDTIME **pinvtm\n                  ,char *str)" identifier (parameter_list "(ASN1_TIME **prevtm,int *preason,ASN1_OBJECT **phold,ASN1_GENERALIZEDTIME **pinvtm\n                  ,char *str)" ( (parameter_declaration "ASN1_TIME **prevtm" type_identifier (pointer_declarator "**prevtm" * (pointer_declarator "*prevtm" * identifier))) , (parameter_declaration "int *preason" primitive_type (pointer_declarator "*preason" * identifier)) , (parameter_declaration "ASN1_OBJECT **phold" type_identifier (pointer_declarator "**phold" * (pointer_declarator "*phold" * identifier))) , (parameter_declaration "ASN1_GENERALIZEDTIME **pinvtm" type_identifier (pointer_declarator "**pinvtm" * (pointer_declarator "*pinvtm" * identifier))) , (parameter_declaration "char *str" primitive_type (pointer_declarator "*str" * identifier)) ))) (compound_statement "{\n  char *__s;\n  char *pcVar1;\n  ASN1_UTCTIME *s;\n  int iVar2;\n  int iVar3;\n  ASN1_OBJECT *a;\n  ASN1_GENERALIZEDTIME *s_00;\n  char *__s_00;\n  char *pcVar4;\n  char *local_24;\n  int local_20;\n  \n  pcVar4 = (char *)0x9cc;\n  __s = CRYPTO_strdup(str,"../apps/ca.c",0x9cc);\n  if (__s == (char *)0x0) {\n    pcVar1 = "memory allocation failure\n";\nLAB_0002f51e:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    BIO_printf((BIO *)bio_err,pcVar1,pcVar4);\n    local_20 = 0;\n    goto LAB_0002f576;\n  }\n  pcVar1 = strchr(__s,0x2c);\n  if (pcVar1 == (char *)0x0) {\n    local_24 = (char *)0x0;\n    __s_00 = (char *)0x0;\n    if (prevtm != (ASN1_TIME **)0x0) goto LAB_0002f4ae;\nLAB_0002f54c:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    iVar2 = -1;\n  }\n  else {\n    __s_00 = pcVar1 + 1;\n    *pcVar1 = '\0';\n    local_24 = strchr(__s_00,0x2c);\n    if (local_24 != (char *)0x0) {\n      *local_24 = '\0';\n      local_24 = local_24 + 1;\n    }\n    if (prevtm != (ASN1_TIME **)0x0) {\nLAB_0002f4ae:\n      s = ASN1_UTCTIME_new();\n      *prevtm = (ASN1_TIME *)s;\n      if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf((BIO *)bio_err,"memory allocation failure\n");\n        local_20 = 0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }\n      iVar2 = ASN1_UTCTIME_set_string(s,__s);\n      if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }\n      pcVar1 = "invalid revocation date %s\n";\n      pcVar4 = __s;\nLAB_0002f6c6:\n      local_24 = (char *)0x0;\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      BIO_printf((BIO *)bio_err,pcVar1,pcVar4);\n      local_20 = (int)local_24;\n      goto LAB_0002f576;\n    }\nLAB_0002f4dc:\n    pcVar1 = "unspecified";\n    iVar2 = 0;\n    while( true ) {\n      iVar3 = strcasecmp(__s_00,pcVar1);\n      if (iVar3 == 0) break;\n      iVar2 = iVar2 + 1;\n      if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }\n      pcVar1 = crl_reasons[iVar2];\n    }\n    if (iVar2 == 7) {\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      iVar2 = 8;\n    }\n    else {\n      local_20 = 0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = 0;\n          BIO_printf((BIO *)bio_err,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (phold == (ASN1_OBJECT **)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *phold = (ASN1_OBJECT *)a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf((BIO *)bio_err,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }\n  }\nLAB_0002f553:\n  if (preason != (int *)0x0) {\n    *preason = iVar2;\n  }\n  local_20 = 1;\n  if (pinvtm != (ASN1_GENERALIZEDTIME **)0x0) {\n    *pinvtm = (ASN1_GENERALIZEDTIME *)s_00;\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n  }\nLAB_0002f576:\n  CRYPTO_free(__s);\n  ASN1_GENERALIZEDTIME_free(s_00);\n  return local_20;\n}" { (declaration "char *__s;" primitive_type (pointer_declarator "*__s" * identifier) ;) (declaration "char *pcVar1;" primitive_type (pointer_declarator "*pcVar1" * identifier) ;) (declaration "ASN1_UTCTIME *s;" type_identifier (pointer_declarator "*s" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "ASN1_OBJECT *a;" type_identifier (pointer_declarator "*a" * identifier) ;) (declaration "ASN1_GENERALIZEDTIME *s_00;" type_identifier (pointer_declarator "*s_00" * identifier) ;) (declaration "char *__s_00;" primitive_type (pointer_declarator "*__s_00" * identifier) ;) (declaration "char *pcVar4;" primitive_type (pointer_declarator "*pcVar4" * identifier) ;) (declaration "char *local_24;" primitive_type (pointer_declarator "*local_24" * identifier) ;) (declaration "int local_20;" primitive_type identifier ;) (expression_statement "pcVar4 = (char *)0x9cc;" (assignment_expression "pcVar4 = (char *)0x9cc" identifier = (cast_expression "(char *)0x9cc" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "__s = CRYPTO_strdup(str,"../apps/ca.c",0x9cc);" (assignment_expression "__s = CRYPTO_strdup(str,"../apps/ca.c",0x9cc)" identifier = (call_expression "CRYPTO_strdup(str,"../apps/ca.c",0x9cc)" identifier (argument_list "(str,"../apps/ca.c",0x9cc)" ( identifier , (string_literal ""../apps/ca.c"" " string_content ") , number_literal )))) ;) (if_statement "if (__s == (char *)0x0) {\n    pcVar1 = "memory allocation failure\n";\nLAB_0002f51e:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    BIO_printf((BIO *)bio_err,pcVar1,pcVar4);\n    local_20 = 0;\n    goto LAB_0002f576;\n  }" if (parenthesized_expression "(__s == (char *)0x0)" ( (binary_expression "__s == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    pcVar1 = "memory allocation failure\n";\nLAB_0002f51e:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    BIO_printf((BIO *)bio_err,pcVar1,pcVar4);\n    local_20 = 0;\n    goto LAB_0002f576;\n  }" { (expression_statement "pcVar1 = "memory allocation failure\n";" (assignment_expression "pcVar1 = "memory allocation failure\n"" identifier = (string_literal ""memory allocation failure\n"" " string_content escape_sequence ")) ;) (labeled_statement "LAB_0002f51e:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;" statement_identifier : (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" identifier = (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "BIO_printf((BIO *)bio_err,pcVar1,pcVar4);" (call_expression "BIO_printf((BIO *)bio_err,pcVar1,pcVar4)" identifier (argument_list "((BIO *)bio_err,pcVar1,pcVar4)" ( (cast_expression "(BIO *)bio_err" ( (type_descriptor "BIO *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier , identifier ))) ;) (expression_statement "local_20 = 0;" (assignment_expression "local_20 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_0002f576;" goto statement_identifier ;) })) (expression_statement "pcVar1 = strchr(__s,0x2c);" (assignment_expression "pcVar1 = strchr(__s,0x2c)" identifier = (call_expression "strchr(__s,0x2c)" identifier (argument_list "(__s,0x2c)" ( identifier , number_literal )))) ;) (if_statement "if (pcVar1 == (char *)0x0) {\n    local_24 = (char *)0x0;\n    __s_00 = (char *)0x0;\n    if (prevtm != (ASN1_TIME **)0x0) goto LAB_0002f4ae;\nLAB_0002f54c:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    iVar2 = -1;\n  }\n  else {\n    __s_00 = pcVar1 + 1;\n    *pcVar1 = '\0';\n    local_24 = strchr(__s_00,0x2c);\n    if (local_24 != (char *)0x0) {\n      *local_24 = '\0';\n      local_24 = local_24 + 1;\n    }\n    if (prevtm != (ASN1_TIME **)0x0) {\nLAB_0002f4ae:\n      s = ASN1_UTCTIME_new();\n      *prevtm = (ASN1_TIME *)s;\n      if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf((BIO *)bio_err,"memory allocation failure\n");\n        local_20 = 0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }\n      iVar2 = ASN1_UTCTIME_set_string(s,__s);\n      if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }\n      pcVar1 = "invalid revocation date %s\n";\n      pcVar4 = __s;\nLAB_0002f6c6:\n      local_24 = (char *)0x0;\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      BIO_printf((BIO *)bio_err,pcVar1,pcVar4);\n      local_20 = (int)local_24;\n      goto LAB_0002f576;\n    }\nLAB_0002f4dc:\n    pcVar1 = "unspecified";\n    iVar2 = 0;\n    while( true ) {\n      iVar3 = strcasecmp(__s_00,pcVar1);\n      if (iVar3 == 0) break;\n      iVar2 = iVar2 + 1;\n      if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }\n      pcVar1 = crl_reasons[iVar2];\n    }\n    if (iVar2 == 7) {\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      iVar2 = 8;\n    }\n    else {\n      local_20 = 0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = 0;\n          BIO_printf((BIO *)bio_err,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (phold == (ASN1_OBJECT **)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *phold = (ASN1_OBJECT *)a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf((BIO *)bio_err,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }\n  }" if (parenthesized_expression "(pcVar1 == (char *)0x0)" ( (binary_expression "pcVar1 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    local_24 = (char *)0x0;\n    __s_00 = (char *)0x0;\n    if (prevtm != (ASN1_TIME **)0x0) goto LAB_0002f4ae;\nLAB_0002f54c:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    iVar2 = -1;\n  }" { (expression_statement "local_24 = (char *)0x0;" (assignment_expression "local_24 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "__s_00 = (char *)0x0;" (assignment_expression "__s_00 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (prevtm != (ASN1_TIME **)0x0) goto LAB_0002f4ae;" if (parenthesized_expression "(prevtm != (ASN1_TIME **)0x0)" ( (binary_expression "prevtm != (ASN1_TIME **)0x0" identifier != (cast_expression "(ASN1_TIME **)0x0" ( (type_descriptor "ASN1_TIME **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (goto_statement "goto LAB_0002f4ae;" goto statement_identifier ;)) (labeled_statement "LAB_0002f54c:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;" statement_identifier : (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" identifier = (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "iVar2 = -1;" (assignment_expression "iVar2 = -1" identifier = number_literal) ;) }) (else_clause "else {\n    __s_00 = pcVar1 + 1;\n    *pcVar1 = '\0';\n    local_24 = strchr(__s_00,0x2c);\n    if (local_24 != (char *)0x0) {\n      *local_24 = '\0';\n      local_24 = local_24 + 1;\n    }\n    if (prevtm != (ASN1_TIME **)0x0) {\nLAB_0002f4ae:\n      s = ASN1_UTCTIME_new();\n      *prevtm = (ASN1_TIME *)s;\n      if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf((BIO *)bio_err,"memory allocation failure\n");\n        local_20 = 0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }\n      iVar2 = ASN1_UTCTIME_set_string(s,__s);\n      if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }\n      pcVar1 = "invalid revocation date %s\n";\n      pcVar4 = __s;\nLAB_0002f6c6:\n      local_24 = (char *)0x0;\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      BIO_printf((BIO *)bio_err,pcVar1,pcVar4);\n      local_20 = (int)local_24;\n      goto LAB_0002f576;\n    }\nLAB_0002f4dc:\n    pcVar1 = "unspecified";\n    iVar2 = 0;\n    while( true ) {\n      iVar3 = strcasecmp(__s_00,pcVar1);\n      if (iVar3 == 0) break;\n      iVar2 = iVar2 + 1;\n      if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }\n      pcVar1 = crl_reasons[iVar2];\n    }\n    if (iVar2 == 7) {\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      iVar2 = 8;\n    }\n    else {\n      local_20 = 0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = 0;\n          BIO_printf((BIO *)bio_err,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (phold == (ASN1_OBJECT **)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *phold = (ASN1_OBJECT *)a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf((BIO *)bio_err,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }\n  }" else (compound_statement "{\n    __s_00 = pcVar1 + 1;\n    *pcVar1 = '\0';\n    local_24 = strchr(__s_00,0x2c);\n    if (local_24 != (char *)0x0) {\n      *local_24 = '\0';\n      local_24 = local_24 + 1;\n    }\n    if (prevtm != (ASN1_TIME **)0x0) {\nLAB_0002f4ae:\n      s = ASN1_UTCTIME_new();\n      *prevtm = (ASN1_TIME *)s;\n      if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf((BIO *)bio_err,"memory allocation failure\n");\n        local_20 = 0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }\n      iVar2 = ASN1_UTCTIME_set_string(s,__s);\n      if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }\n      pcVar1 = "invalid revocation date %s\n";\n      pcVar4 = __s;\nLAB_0002f6c6:\n      local_24 = (char *)0x0;\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      BIO_printf((BIO *)bio_err,pcVar1,pcVar4);\n      local_20 = (int)local_24;\n      goto LAB_0002f576;\n    }\nLAB_0002f4dc:\n    pcVar1 = "unspecified";\n    iVar2 = 0;\n    while( true ) {\n      iVar3 = strcasecmp(__s_00,pcVar1);\n      if (iVar3 == 0) break;\n      iVar2 = iVar2 + 1;\n      if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }\n      pcVar1 = crl_reasons[iVar2];\n    }\n    if (iVar2 == 7) {\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      iVar2 = 8;\n    }\n    else {\n      local_20 = 0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = 0;\n          BIO_printf((BIO *)bio_err,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (phold == (ASN1_OBJECT **)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *phold = (ASN1_OBJECT *)a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf((BIO *)bio_err,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }\n  }" { (expression_statement "__s_00 = pcVar1 + 1;" (assignment_expression "__s_00 = pcVar1 + 1" identifier = (binary_expression "pcVar1 + 1" identifier + number_literal)) ;) (expression_statement "*pcVar1 = '\0';" (assignment_expression "*pcVar1 = '\0'" (pointer_expression "*pcVar1" * identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "local_24 = strchr(__s_00,0x2c);" (assignment_expression "local_24 = strchr(__s_00,0x2c)" identifier = (call_expression "strchr(__s_00,0x2c)" identifier (argument_list "(__s_00,0x2c)" ( identifier , number_literal )))) ;) (if_statement "if (local_24 != (char *)0x0) {\n      *local_24 = '\0';\n      local_24 = local_24 + 1;\n    }" if (parenthesized_expression "(local_24 != (char *)0x0)" ( (binary_expression "local_24 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      *local_24 = '\0';\n      local_24 = local_24 + 1;\n    }" { (expression_statement "*local_24 = '\0';" (assignment_expression "*local_24 = '\0'" (pointer_expression "*local_24" * identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "local_24 = local_24 + 1;" (assignment_expression "local_24 = local_24 + 1" identifier = (binary_expression "local_24 + 1" identifier + number_literal)) ;) })) (if_statement "if (prevtm != (ASN1_TIME **)0x0) {\nLAB_0002f4ae:\n      s = ASN1_UTCTIME_new();\n      *prevtm = (ASN1_TIME *)s;\n      if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf((BIO *)bio_err,"memory allocation failure\n");\n        local_20 = 0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }\n      iVar2 = ASN1_UTCTIME_set_string(s,__s);\n      if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }\n      pcVar1 = "invalid revocation date %s\n";\n      pcVar4 = __s;\nLAB_0002f6c6:\n      local_24 = (char *)0x0;\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      BIO_printf((BIO *)bio_err,pcVar1,pcVar4);\n      local_20 = (int)local_24;\n      goto LAB_0002f576;\n    }" if (parenthesized_expression "(prevtm != (ASN1_TIME **)0x0)" ( (binary_expression "prevtm != (ASN1_TIME **)0x0" identifier != (cast_expression "(ASN1_TIME **)0x0" ( (type_descriptor "ASN1_TIME **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (compound_statement "{\nLAB_0002f4ae:\n      s = ASN1_UTCTIME_new();\n      *prevtm = (ASN1_TIME *)s;\n      if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf((BIO *)bio_err,"memory allocation failure\n");\n        local_20 = 0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }\n      iVar2 = ASN1_UTCTIME_set_string(s,__s);\n      if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }\n      pcVar1 = "invalid revocation date %s\n";\n      pcVar4 = __s;\nLAB_0002f6c6:\n      local_24 = (char *)0x0;\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      BIO_printf((BIO *)bio_err,pcVar1,pcVar4);\n      local_20 = (int)local_24;\n      goto LAB_0002f576;\n    }" { (labeled_statement "LAB_0002f4ae:\n      s = ASN1_UTCTIME_new();" statement_identifier : (expression_statement "s = ASN1_UTCTIME_new();" (assignment_expression "s = ASN1_UTCTIME_new()" identifier = (call_expression "ASN1_UTCTIME_new()" identifier (argument_list "()" ( )))) ;)) (expression_statement "*prevtm = (ASN1_TIME *)s;" (assignment_expression "*prevtm = (ASN1_TIME *)s" (pointer_expression "*prevtm" * identifier) = (cast_expression "(ASN1_TIME *)s" ( (type_descriptor "ASN1_TIME *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf((BIO *)bio_err,"memory allocation failure\n");\n        local_20 = 0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }" if (parenthesized_expression "(s == (ASN1_UTCTIME *)0x0)" ( (binary_expression "s == (ASN1_UTCTIME *)0x0" identifier == (cast_expression "(ASN1_UTCTIME *)0x0" ( (type_descriptor "ASN1_UTCTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        BIO_printf((BIO *)bio_err,"memory allocation failure\n");\n        local_20 = 0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }" { (expression_statement "BIO_printf((BIO *)bio_err,"memory allocation failure\n");" (call_expression "BIO_printf((BIO *)bio_err,"memory allocation failure\n")" identifier (argument_list "((BIO *)bio_err,"memory allocation failure\n")" ( (cast_expression "(BIO *)bio_err" ( (type_descriptor "BIO *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""memory allocation failure\n"" " string_content escape_sequence ") ))) ;) (expression_statement "local_20 = 0;" (assignment_expression "local_20 = 0" identifier = number_literal) ;) (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" identifier = (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_0002f576;" goto statement_identifier ;) })) (expression_statement "iVar2 = ASN1_UTCTIME_set_string(s,__s);" (assignment_expression "iVar2 = ASN1_UTCTIME_set_string(s,__s)" identifier = (call_expression "ASN1_UTCTIME_set_string(s,__s)" identifier (argument_list "(s,__s)" ( identifier , identifier )))) ;) (if_statement "if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (compound_statement "{\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }" { (if_statement "if (__s_00 == (char *)0x0) goto LAB_0002f54c;" if (parenthesized_expression "(__s_00 == (char *)0x0)" ( (binary_expression "__s_00 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_0002f54c;" goto statement_identifier ;)) (goto_statement "goto LAB_0002f4dc;" goto statement_identifier ;) })) (expression_statement "pcVar1 = "invalid revocation date %s\n";" (assignment_expression "pcVar1 = "invalid revocation date %s\n"" identifier = (string_literal ""invalid revocation date %s\n"" " string_content escape_sequence ")) ;) (expression_statement "pcVar4 = __s;" (assignment_expression "pcVar4 = __s" identifier = identifier) ;) (labeled_statement "LAB_0002f6c6:\n      local_24 = (char *)0x0;" statement_identifier : (expression_statement "local_24 = (char *)0x0;" (assignment_expression "local_24 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" identifier = (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "BIO_printf((BIO *)bio_err,pcVar1,pcVar4);" (call_expression "BIO_printf((BIO *)bio_err,pcVar1,pcVar4)" identifier (argument_list "((BIO *)bio_err,pcVar1,pcVar4)" ( (cast_expression "(BIO *)bio_err" ( (type_descriptor "BIO *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier , identifier ))) ;) (expression_statement "local_20 = (int)local_24;" (assignment_expression "local_20 = (int)local_24" identifier = (cast_expression "(int)local_24" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (goto_statement "goto LAB_0002f576;" goto statement_identifier ;) })) (labeled_statement "LAB_0002f4dc:\n    pcVar1 = "unspecified";" statement_identifier : (expression_statement "pcVar1 = "unspecified";" (assignment_expression "pcVar1 = "unspecified"" identifier = (string_literal ""unspecified"" " string_content ")) ;)) (expression_statement "iVar2 = 0;" (assignment_expression "iVar2 = 0" identifier = number_literal) ;) (while_statement "while( true ) {\n      iVar3 = strcasecmp(__s_00,pcVar1);\n      if (iVar3 == 0) break;\n      iVar2 = iVar2 + 1;\n      if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }\n      pcVar1 = crl_reasons[iVar2];\n    }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n      iVar3 = strcasecmp(__s_00,pcVar1);\n      if (iVar3 == 0) break;\n      iVar2 = iVar2 + 1;\n      if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }\n      pcVar1 = crl_reasons[iVar2];\n    }" { (expression_statement "iVar3 = strcasecmp(__s_00,pcVar1);" (assignment_expression "iVar3 = strcasecmp(__s_00,pcVar1)" identifier = (call_expression "strcasecmp(__s_00,pcVar1)" identifier (argument_list "(__s_00,pcVar1)" ( identifier , identifier )))) ;) (if_statement "if (iVar3 == 0) break;" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar2 = iVar2 + 1;" (assignment_expression "iVar2 = iVar2 + 1" identifier = (binary_expression "iVar2 + 1" identifier + number_literal)) ;) (if_statement "if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }" if (parenthesized_expression "(iVar2 == 0xb)" ( (binary_expression "iVar2 == 0xb" identifier == number_literal) )) (compound_statement "{\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }" { (expression_statement "pcVar1 = "invalid reason code %s\n";" (assignment_expression "pcVar1 = "invalid reason code %s\n"" identifier = (string_literal ""invalid reason code %s\n"" " string_content escape_sequence ")) ;) (expression_statement "pcVar4 = __s_00;" (assignment_expression "pcVar4 = __s_00" identifier = identifier) ;) (goto_statement "goto LAB_0002f51e;" goto statement_identifier ;) })) (expression_statement "pcVar1 = crl_reasons[iVar2];" (assignment_expression "pcVar1 = crl_reasons[iVar2]" identifier = (subscript_expression "crl_reasons[iVar2]" identifier [ identifier ])) ;) })) (if_statement "if (iVar2 == 7) {\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      iVar2 = 8;\n    }\n    else {\n      local_20 = 0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = 0;\n          BIO_printf((BIO *)bio_err,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (phold == (ASN1_OBJECT **)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *phold = (ASN1_OBJECT *)a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf((BIO *)bio_err,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }" if (parenthesized_expression "(iVar2 == 7)" ( (binary_expression "iVar2 == 7" identifier == number_literal) )) (compound_statement "{\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      iVar2 = 8;\n    }" { (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" identifier = (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iVar2 = 8;" (assignment_expression "iVar2 = 8" identifier = number_literal) ;) }) (else_clause "else {\n      local_20 = 0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = 0;\n          BIO_printf((BIO *)bio_err,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (phold == (ASN1_OBJECT **)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *phold = (ASN1_OBJECT *)a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf((BIO *)bio_err,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }" else (compound_statement "{\n      local_20 = 0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = 0;\n          BIO_printf((BIO *)bio_err,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (phold == (ASN1_OBJECT **)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *phold = (ASN1_OBJECT *)a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf((BIO *)bio_err,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }" { (expression_statement "local_20 = 0;" (assignment_expression "local_20 = 0" identifier = number_literal) ;) (if_statement "if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = 0;\n          BIO_printf((BIO *)bio_err,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (phold == (ASN1_OBJECT **)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *phold = (ASN1_OBJECT *)a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf((BIO *)bio_err,pcVar4);\n          goto LAB_0002f576;\n        }\n      }" if (parenthesized_expression "(iVar2 == 8)" ( (binary_expression "iVar2 == 8" identifier == number_literal) )) (compound_statement "{\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = 0;\n          BIO_printf((BIO *)bio_err,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (phold == (ASN1_OBJECT **)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *phold = (ASN1_OBJECT *)a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }" { (if_statement "if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }" if (parenthesized_expression "(local_24 == (char *)0x0)" ( (binary_expression "local_24 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }" { (expression_statement "pcVar1 = "missing hold instruction\n";" (assignment_expression "pcVar1 = "missing hold instruction\n"" identifier = (string_literal ""missing hold instruction\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0002f6c6;" goto statement_identifier ;) })) (expression_statement "a = OBJ_txt2obj(local_24,0);" (assignment_expression "a = OBJ_txt2obj(local_24,0)" identifier = (call_expression "OBJ_txt2obj(local_24,0)" identifier (argument_list "(local_24,0)" ( identifier , number_literal )))) ;) (if_statement "if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = 0;\n          BIO_printf((BIO *)bio_err,pcVar4,local_24);\n          goto LAB_0002f576;\n        }" if (parenthesized_expression "(a == (ASN1_OBJECT *)0x0)" ( (binary_expression "a == (ASN1_OBJECT *)0x0" identifier == (cast_expression "(ASN1_OBJECT *)0x0" ( (type_descriptor "ASN1_OBJECT *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = 0;\n          BIO_printf((BIO *)bio_err,pcVar4,local_24);\n          goto LAB_0002f576;\n        }" { (expression_statement "pcVar4 = "invalid object identifier %s\n";" (assignment_expression "pcVar4 = "invalid object identifier %s\n"" identifier = (string_literal ""invalid object identifier %s\n"" " string_content escape_sequence ")) ;) (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" identifier = (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_0002f6f3:\n          local_20 = 0;" statement_identifier : (expression_statement "local_20 = 0;" (assignment_expression "local_20 = 0" identifier = number_literal) ;)) (expression_statement "BIO_printf((BIO *)bio_err,pcVar4,local_24);" (call_expression "BIO_printf((BIO *)bio_err,pcVar4,local_24)" identifier (argument_list "((BIO *)bio_err,pcVar4,local_24)" ( (cast_expression "(BIO *)bio_err" ( (type_descriptor "BIO *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier , identifier ))) ;) (goto_statement "goto LAB_0002f576;" goto statement_identifier ;) })) (if_statement "if (phold == (ASN1_OBJECT **)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *phold = (ASN1_OBJECT *)a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }" if (parenthesized_expression "(phold == (ASN1_OBJECT **)0x0)" ( (binary_expression "phold == (ASN1_OBJECT **)0x0" identifier == (cast_expression "(ASN1_OBJECT **)0x0" ( (type_descriptor "ASN1_OBJECT **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (compound_statement "{\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }" { (expression_statement "iVar2 = 6;" (assignment_expression "iVar2 = 6" identifier = number_literal) ;) (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" identifier = (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ASN1_OBJECT_free(a);" (call_expression "ASN1_OBJECT_free(a)" identifier (argument_list "(a)" ( identifier ))) ;) }) (else_clause "else {\n          iVar2 = 6;\n          *phold = (ASN1_OBJECT *)a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }" else (compound_statement "{\n          iVar2 = 6;\n          *phold = (ASN1_OBJECT *)a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }" { (expression_statement "iVar2 = 6;" (assignment_expression "iVar2 = 6" identifier = number_literal) ;) (expression_statement "*phold = (ASN1_OBJECT *)a;" (assignment_expression "*phold = (ASN1_OBJECT *)a" (pointer_expression "*phold" * identifier) = (cast_expression "(ASN1_OBJECT *)a" ( (type_descriptor "ASN1_OBJECT *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" identifier = (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }))) }) (else_clause "else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf((BIO *)bio_err,pcVar4);\n          goto LAB_0002f576;\n        }\n      }" else (compound_statement "{\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf((BIO *)bio_err,pcVar4);\n          goto LAB_0002f576;\n        }\n      }" { (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" identifier = (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf((BIO *)bio_err,pcVar4);\n          goto LAB_0002f576;\n        }" if (parenthesized_expression "(iVar2 - 9U < 2)" ( (binary_expression "iVar2 - 9U < 2" (binary_expression "iVar2 - 9U" identifier - number_literal) < number_literal) )) (compound_statement "{\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf((BIO *)bio_err,pcVar4);\n          goto LAB_0002f576;\n        }" { (if_statement "if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }" if (parenthesized_expression "(local_24 == (char *)0x0)" ( (binary_expression "local_24 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            pcVar4 = "missing compromised time\n";\n          }" { (expression_statement "pcVar4 = "missing compromised time\n";" (assignment_expression "pcVar4 = "missing compromised time\n"" identifier = (string_literal ""missing compromised time\n"" " string_content escape_sequence ")) ;) }) (else_clause "else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }" else (compound_statement "{\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }" { (expression_statement "s_00 = ASN1_GENERALIZEDTIME_new();" (assignment_expression "s_00 = ASN1_GENERALIZEDTIME_new()" identifier = (call_expression "ASN1_GENERALIZEDTIME_new()" identifier (argument_list "()" ( )))) ;) (if_statement "if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }" if (parenthesized_expression "(s_00 != (ASN1_GENERALIZEDTIME *)0x0)" ( (binary_expression "s_00 != (ASN1_GENERALIZEDTIME *)0x0" identifier != (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }" { (expression_statement "iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);" (assignment_expression "iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24)" identifier = (call_expression "ASN1_GENERALIZEDTIME_set_string(s_00,local_24)" identifier (argument_list "(s_00,local_24)" ( identifier , identifier )))) ;) (if_statement "if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }" { (expression_statement "pcVar4 = "invalid compromised time %s\n";" (assignment_expression "pcVar4 = "invalid compromised time %s\n"" identifier = (string_literal ""invalid compromised time %s\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0002f6f3;" goto statement_identifier ;) })) (expression_statement "iVar2 = (iVar2 != 9) + 1;" (assignment_expression "iVar2 = (iVar2 != 9) + 1" identifier = (binary_expression "(iVar2 != 9) + 1" (parenthesized_expression "(iVar2 != 9)" ( (binary_expression "iVar2 != 9" identifier != number_literal) )) + number_literal)) ;) (goto_statement "goto LAB_0002f553;" goto statement_identifier ;) })) (expression_statement "pcVar4 = "memory allocation failure\n";" (assignment_expression "pcVar4 = "memory allocation failure\n"" identifier = (string_literal ""memory allocation failure\n"" " string_content escape_sequence ")) ;) }))) (expression_statement "BIO_printf((BIO *)bio_err,pcVar4);" (call_expression "BIO_printf((BIO *)bio_err,pcVar4)" identifier (argument_list "((BIO *)bio_err,pcVar4)" ( (cast_expression "(BIO *)bio_err" ( (type_descriptor "BIO *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier ))) ;) (goto_statement "goto LAB_0002f576;" goto statement_identifier ;) })) }))) }))) }))) (labeled_statement "LAB_0002f553:\n  if (preason != (int *)0x0) {\n    *preason = iVar2;\n  }" statement_identifier : (if_statement "if (preason != (int *)0x0) {\n    *preason = iVar2;\n  }" if (parenthesized_expression "(preason != (int *)0x0)" ( (binary_expression "preason != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    *preason = iVar2;\n  }" { (expression_statement "*preason = iVar2;" (assignment_expression "*preason = iVar2" (pointer_expression "*preason" * identifier) = identifier) ;) }))) (expression_statement "local_20 = 1;" (assignment_expression "local_20 = 1" identifier = number_literal) ;) (if_statement "if (pinvtm != (ASN1_GENERALIZEDTIME **)0x0) {\n    *pinvtm = (ASN1_GENERALIZEDTIME *)s_00;\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n  }" if (parenthesized_expression "(pinvtm != (ASN1_GENERALIZEDTIME **)0x0)" ( (binary_expression "pinvtm != (ASN1_GENERALIZEDTIME **)0x0" identifier != (cast_expression "(ASN1_GENERALIZEDTIME **)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (compound_statement "{\n    *pinvtm = (ASN1_GENERALIZEDTIME *)s_00;\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n  }" { (expression_statement "*pinvtm = (ASN1_GENERALIZEDTIME *)s_00;" (assignment_expression "*pinvtm = (ASN1_GENERALIZEDTIME *)s_00" (pointer_expression "*pinvtm" * identifier) = (cast_expression "(ASN1_GENERALIZEDTIME *)s_00" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" identifier = (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (labeled_statement "LAB_0002f576:\n  CRYPTO_free(__s);" statement_identifier : (expression_statement "CRYPTO_free(__s);" (call_expression "CRYPTO_free(__s)" identifier (argument_list "(__s)" ( identifier ))) ;)) (expression_statement "ASN1_GENERALIZEDTIME_free(s_00);" (call_expression "ASN1_GENERALIZEDTIME_free(s_00)" identifier (argument_list "(s_00)" ( identifier ))) ;) (return_statement "return local_20;" return identifier ;) })))
(translation_unit "undefined4\nFUN_0002f430(undefined4 *param_1,int *param_2,undefined4 *param_3,undefined4 *param_4,char *param_5)\n\n{\n  char *__s;\n  char *pcVar1;\n  ASN1_UTCTIME *s;\n  int iVar2;\n  int iVar3;\n  ASN1_OBJECT *a;\n  ASN1_GENERALIZEDTIME *s_00;\n  char *__s_00;\n  char *pcVar4;\n  char *local_24;\n  undefined4 local_20;\n  \n  pcVar4 = (char *)0x9cc;\n  __s = CRYPTO_strdup(param_5,"../apps/ca.c",0x9cc);\n  if (__s == (char *)0x0) {\n    pcVar1 = "memory allocation failure\n";\nLAB_0002f51e:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n    local_20 = (char *)0x0;\n    goto LAB_0002f576;\n  }\n  pcVar1 = strchr(__s,0x2c);\n  if (pcVar1 == (char *)0x0) {\n    local_24 = (char *)0x0;\n    __s_00 = (char *)0x0;\n    if (param_1 != (undefined4 *)0x0) goto LAB_0002f4ae;\nLAB_0002f54c:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    iVar2 = -1;\n  }\n  else {\n    __s_00 = pcVar1 + 1;\n    *pcVar1 = '\0';\n    local_24 = strchr(__s_00,0x2c);\n    if (local_24 != (char *)0x0) {\n      *local_24 = '\0';\n      local_24 = local_24 + 1;\n    }\n    if (param_1 != (undefined4 *)0x0) {\nLAB_0002f4ae:\n      s = ASN1_UTCTIME_new();\n      *param_1 = s;\n      if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf(DAT_000c458c,"memory allocation failure\n");\n        local_20 = (char *)0x0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }\n      iVar2 = ASN1_UTCTIME_set_string(s,__s);\n      if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }\n      pcVar1 = "invalid revocation date %s\n";\n      pcVar4 = __s;\nLAB_0002f6c6:\n      local_24 = (char *)0x0;\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n      local_20 = local_24;\n      goto LAB_0002f576;\n    }\nLAB_0002f4dc:\n    pcVar1 = "unspecified";\n    iVar2 = 0;\n    while( true ) {\n      iVar3 = strcasecmp(__s_00,pcVar1);\n      if (iVar3 == 0) break;\n      iVar2 = iVar2 + 1;\n      if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }\n      pcVar1 = (&PTR_s_unspecified_000b6320)[iVar2];\n    }\n    if (iVar2 == 7) {\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      iVar2 = 8;\n    }\n    else {\n      local_20 = (char *)0x0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }\n  }\nLAB_0002f553:\n  if (param_2 != (int *)0x0) {\n    *param_2 = iVar2;\n  }\n  local_20 = (char *)0x1;\n  if (param_4 != (undefined4 *)0x0) {\n    *param_4 = s_00;\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n  }\nLAB_0002f576:\n  CRYPTO_free(__s);\n  ASN1_GENERALIZEDTIME_free(s_00);\n  return local_20;\n}\n\n" (function_definition "undefined4\nFUN_0002f430(undefined4 *param_1,int *param_2,undefined4 *param_3,undefined4 *param_4,char *param_5)\n\n{\n  char *__s;\n  char *pcVar1;\n  ASN1_UTCTIME *s;\n  int iVar2;\n  int iVar3;\n  ASN1_OBJECT *a;\n  ASN1_GENERALIZEDTIME *s_00;\n  char *__s_00;\n  char *pcVar4;\n  char *local_24;\n  undefined4 local_20;\n  \n  pcVar4 = (char *)0x9cc;\n  __s = CRYPTO_strdup(param_5,"../apps/ca.c",0x9cc);\n  if (__s == (char *)0x0) {\n    pcVar1 = "memory allocation failure\n";\nLAB_0002f51e:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n    local_20 = (char *)0x0;\n    goto LAB_0002f576;\n  }\n  pcVar1 = strchr(__s,0x2c);\n  if (pcVar1 == (char *)0x0) {\n    local_24 = (char *)0x0;\n    __s_00 = (char *)0x0;\n    if (param_1 != (undefined4 *)0x0) goto LAB_0002f4ae;\nLAB_0002f54c:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    iVar2 = -1;\n  }\n  else {\n    __s_00 = pcVar1 + 1;\n    *pcVar1 = '\0';\n    local_24 = strchr(__s_00,0x2c);\n    if (local_24 != (char *)0x0) {\n      *local_24 = '\0';\n      local_24 = local_24 + 1;\n    }\n    if (param_1 != (undefined4 *)0x0) {\nLAB_0002f4ae:\n      s = ASN1_UTCTIME_new();\n      *param_1 = s;\n      if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf(DAT_000c458c,"memory allocation failure\n");\n        local_20 = (char *)0x0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }\n      iVar2 = ASN1_UTCTIME_set_string(s,__s);\n      if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }\n      pcVar1 = "invalid revocation date %s\n";\n      pcVar4 = __s;\nLAB_0002f6c6:\n      local_24 = (char *)0x0;\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n      local_20 = local_24;\n      goto LAB_0002f576;\n    }\nLAB_0002f4dc:\n    pcVar1 = "unspecified";\n    iVar2 = 0;\n    while( true ) {\n      iVar3 = strcasecmp(__s_00,pcVar1);\n      if (iVar3 == 0) break;\n      iVar2 = iVar2 + 1;\n      if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }\n      pcVar1 = (&PTR_s_unspecified_000b6320)[iVar2];\n    }\n    if (iVar2 == 7) {\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      iVar2 = 8;\n    }\n    else {\n      local_20 = (char *)0x0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }\n  }\nLAB_0002f553:\n  if (param_2 != (int *)0x0) {\n    *param_2 = iVar2;\n  }\n  local_20 = (char *)0x1;\n  if (param_4 != (undefined4 *)0x0) {\n    *param_4 = s_00;\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n  }\nLAB_0002f576:\n  CRYPTO_free(__s);\n  ASN1_GENERALIZEDTIME_free(s_00);\n  return local_20;\n}" type_identifier (function_declarator "FUN_0002f430(undefined4 *param_1,int *param_2,undefined4 *param_3,undefined4 *param_4,char *param_5)" identifier (parameter_list "(undefined4 *param_1,int *param_2,undefined4 *param_3,undefined4 *param_4,char *param_5)" ( (parameter_declaration "undefined4 *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "int *param_2" primitive_type (pointer_declarator "*param_2" * identifier)) , (parameter_declaration "undefined4 *param_3" type_identifier (pointer_declarator "*param_3" * identifier)) , (parameter_declaration "undefined4 *param_4" type_identifier (pointer_declarator "*param_4" * identifier)) , (parameter_declaration "char *param_5" primitive_type (pointer_declarator "*param_5" * identifier)) ))) (compound_statement "{\n  char *__s;\n  char *pcVar1;\n  ASN1_UTCTIME *s;\n  int iVar2;\n  int iVar3;\n  ASN1_OBJECT *a;\n  ASN1_GENERALIZEDTIME *s_00;\n  char *__s_00;\n  char *pcVar4;\n  char *local_24;\n  undefined4 local_20;\n  \n  pcVar4 = (char *)0x9cc;\n  __s = CRYPTO_strdup(param_5,"../apps/ca.c",0x9cc);\n  if (__s == (char *)0x0) {\n    pcVar1 = "memory allocation failure\n";\nLAB_0002f51e:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n    local_20 = (char *)0x0;\n    goto LAB_0002f576;\n  }\n  pcVar1 = strchr(__s,0x2c);\n  if (pcVar1 == (char *)0x0) {\n    local_24 = (char *)0x0;\n    __s_00 = (char *)0x0;\n    if (param_1 != (undefined4 *)0x0) goto LAB_0002f4ae;\nLAB_0002f54c:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    iVar2 = -1;\n  }\n  else {\n    __s_00 = pcVar1 + 1;\n    *pcVar1 = '\0';\n    local_24 = strchr(__s_00,0x2c);\n    if (local_24 != (char *)0x0) {\n      *local_24 = '\0';\n      local_24 = local_24 + 1;\n    }\n    if (param_1 != (undefined4 *)0x0) {\nLAB_0002f4ae:\n      s = ASN1_UTCTIME_new();\n      *param_1 = s;\n      if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf(DAT_000c458c,"memory allocation failure\n");\n        local_20 = (char *)0x0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }\n      iVar2 = ASN1_UTCTIME_set_string(s,__s);\n      if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }\n      pcVar1 = "invalid revocation date %s\n";\n      pcVar4 = __s;\nLAB_0002f6c6:\n      local_24 = (char *)0x0;\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n      local_20 = local_24;\n      goto LAB_0002f576;\n    }\nLAB_0002f4dc:\n    pcVar1 = "unspecified";\n    iVar2 = 0;\n    while( true ) {\n      iVar3 = strcasecmp(__s_00,pcVar1);\n      if (iVar3 == 0) break;\n      iVar2 = iVar2 + 1;\n      if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }\n      pcVar1 = (&PTR_s_unspecified_000b6320)[iVar2];\n    }\n    if (iVar2 == 7) {\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      iVar2 = 8;\n    }\n    else {\n      local_20 = (char *)0x0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }\n  }\nLAB_0002f553:\n  if (param_2 != (int *)0x0) {\n    *param_2 = iVar2;\n  }\n  local_20 = (char *)0x1;\n  if (param_4 != (undefined4 *)0x0) {\n    *param_4 = s_00;\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n  }\nLAB_0002f576:\n  CRYPTO_free(__s);\n  ASN1_GENERALIZEDTIME_free(s_00);\n  return local_20;\n}" { (declaration "char *__s;" primitive_type (pointer_declarator "*__s" * identifier) ;) (declaration "char *pcVar1;" primitive_type (pointer_declarator "*pcVar1" * identifier) ;) (declaration "ASN1_UTCTIME *s;" type_identifier (pointer_declarator "*s" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "ASN1_OBJECT *a;" type_identifier (pointer_declarator "*a" * identifier) ;) (declaration "ASN1_GENERALIZEDTIME *s_00;" type_identifier (pointer_declarator "*s_00" * identifier) ;) (declaration "char *__s_00;" primitive_type (pointer_declarator "*__s_00" * identifier) ;) (declaration "char *pcVar4;" primitive_type (pointer_declarator "*pcVar4" * identifier) ;) (declaration "char *local_24;" primitive_type (pointer_declarator "*local_24" * identifier) ;) (declaration "undefined4 local_20;" type_identifier identifier ;) (expression_statement "pcVar4 = (char *)0x9cc;" (assignment_expression "pcVar4 = (char *)0x9cc" identifier = (cast_expression "(char *)0x9cc" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "__s = CRYPTO_strdup(param_5,"../apps/ca.c",0x9cc);" (assignment_expression "__s = CRYPTO_strdup(param_5,"../apps/ca.c",0x9cc)" identifier = (call_expression "CRYPTO_strdup(param_5,"../apps/ca.c",0x9cc)" identifier (argument_list "(param_5,"../apps/ca.c",0x9cc)" ( identifier , (string_literal ""../apps/ca.c"" " string_content ") , number_literal )))) ;) (if_statement "if (__s == (char *)0x0) {\n    pcVar1 = "memory allocation failure\n";\nLAB_0002f51e:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n    local_20 = (char *)0x0;\n    goto LAB_0002f576;\n  }" if (parenthesized_expression "(__s == (char *)0x0)" ( (binary_expression "__s == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    pcVar1 = "memory allocation failure\n";\nLAB_0002f51e:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n    local_20 = (char *)0x0;\n    goto LAB_0002f576;\n  }" { (expression_statement "pcVar1 = "memory allocation failure\n";" (assignment_expression "pcVar1 = "memory allocation failure\n"" identifier = (string_literal ""memory allocation failure\n"" " string_content escape_sequence ")) ;) (labeled_statement "LAB_0002f51e:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;" statement_identifier : (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" identifier = (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "BIO_printf(DAT_000c458c,pcVar1,pcVar4);" (call_expression "BIO_printf(DAT_000c458c,pcVar1,pcVar4)" identifier (argument_list "(DAT_000c458c,pcVar1,pcVar4)" ( identifier , identifier , identifier ))) ;) (expression_statement "local_20 = (char *)0x0;" (assignment_expression "local_20 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_0002f576;" goto statement_identifier ;) })) (expression_statement "pcVar1 = strchr(__s,0x2c);" (assignment_expression "pcVar1 = strchr(__s,0x2c)" identifier = (call_expression "strchr(__s,0x2c)" identifier (argument_list "(__s,0x2c)" ( identifier , number_literal )))) ;) (if_statement "if (pcVar1 == (char *)0x0) {\n    local_24 = (char *)0x0;\n    __s_00 = (char *)0x0;\n    if (param_1 != (undefined4 *)0x0) goto LAB_0002f4ae;\nLAB_0002f54c:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    iVar2 = -1;\n  }\n  else {\n    __s_00 = pcVar1 + 1;\n    *pcVar1 = '\0';\n    local_24 = strchr(__s_00,0x2c);\n    if (local_24 != (char *)0x0) {\n      *local_24 = '\0';\n      local_24 = local_24 + 1;\n    }\n    if (param_1 != (undefined4 *)0x0) {\nLAB_0002f4ae:\n      s = ASN1_UTCTIME_new();\n      *param_1 = s;\n      if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf(DAT_000c458c,"memory allocation failure\n");\n        local_20 = (char *)0x0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }\n      iVar2 = ASN1_UTCTIME_set_string(s,__s);\n      if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }\n      pcVar1 = "invalid revocation date %s\n";\n      pcVar4 = __s;\nLAB_0002f6c6:\n      local_24 = (char *)0x0;\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n      local_20 = local_24;\n      goto LAB_0002f576;\n    }\nLAB_0002f4dc:\n    pcVar1 = "unspecified";\n    iVar2 = 0;\n    while( true ) {\n      iVar3 = strcasecmp(__s_00,pcVar1);\n      if (iVar3 == 0) break;\n      iVar2 = iVar2 + 1;\n      if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }\n      pcVar1 = (&PTR_s_unspecified_000b6320)[iVar2];\n    }\n    if (iVar2 == 7) {\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      iVar2 = 8;\n    }\n    else {\n      local_20 = (char *)0x0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }\n  }" if (parenthesized_expression "(pcVar1 == (char *)0x0)" ( (binary_expression "pcVar1 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    local_24 = (char *)0x0;\n    __s_00 = (char *)0x0;\n    if (param_1 != (undefined4 *)0x0) goto LAB_0002f4ae;\nLAB_0002f54c:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    iVar2 = -1;\n  }" { (expression_statement "local_24 = (char *)0x0;" (assignment_expression "local_24 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "__s_00 = (char *)0x0;" (assignment_expression "__s_00 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (param_1 != (undefined4 *)0x0) goto LAB_0002f4ae;" if (parenthesized_expression "(param_1 != (undefined4 *)0x0)" ( (binary_expression "param_1 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_0002f4ae;" goto statement_identifier ;)) (labeled_statement "LAB_0002f54c:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;" statement_identifier : (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" identifier = (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "iVar2 = -1;" (assignment_expression "iVar2 = -1" identifier = number_literal) ;) }) (else_clause "else {\n    __s_00 = pcVar1 + 1;\n    *pcVar1 = '\0';\n    local_24 = strchr(__s_00,0x2c);\n    if (local_24 != (char *)0x0) {\n      *local_24 = '\0';\n      local_24 = local_24 + 1;\n    }\n    if (param_1 != (undefined4 *)0x0) {\nLAB_0002f4ae:\n      s = ASN1_UTCTIME_new();\n      *param_1 = s;\n      if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf(DAT_000c458c,"memory allocation failure\n");\n        local_20 = (char *)0x0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }\n      iVar2 = ASN1_UTCTIME_set_string(s,__s);\n      if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }\n      pcVar1 = "invalid revocation date %s\n";\n      pcVar4 = __s;\nLAB_0002f6c6:\n      local_24 = (char *)0x0;\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n      local_20 = local_24;\n      goto LAB_0002f576;\n    }\nLAB_0002f4dc:\n    pcVar1 = "unspecified";\n    iVar2 = 0;\n    while( true ) {\n      iVar3 = strcasecmp(__s_00,pcVar1);\n      if (iVar3 == 0) break;\n      iVar2 = iVar2 + 1;\n      if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }\n      pcVar1 = (&PTR_s_unspecified_000b6320)[iVar2];\n    }\n    if (iVar2 == 7) {\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      iVar2 = 8;\n    }\n    else {\n      local_20 = (char *)0x0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }\n  }" else (compound_statement "{\n    __s_00 = pcVar1 + 1;\n    *pcVar1 = '\0';\n    local_24 = strchr(__s_00,0x2c);\n    if (local_24 != (char *)0x0) {\n      *local_24 = '\0';\n      local_24 = local_24 + 1;\n    }\n    if (param_1 != (undefined4 *)0x0) {\nLAB_0002f4ae:\n      s = ASN1_UTCTIME_new();\n      *param_1 = s;\n      if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf(DAT_000c458c,"memory allocation failure\n");\n        local_20 = (char *)0x0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }\n      iVar2 = ASN1_UTCTIME_set_string(s,__s);\n      if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }\n      pcVar1 = "invalid revocation date %s\n";\n      pcVar4 = __s;\nLAB_0002f6c6:\n      local_24 = (char *)0x0;\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n      local_20 = local_24;\n      goto LAB_0002f576;\n    }\nLAB_0002f4dc:\n    pcVar1 = "unspecified";\n    iVar2 = 0;\n    while( true ) {\n      iVar3 = strcasecmp(__s_00,pcVar1);\n      if (iVar3 == 0) break;\n      iVar2 = iVar2 + 1;\n      if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }\n      pcVar1 = (&PTR_s_unspecified_000b6320)[iVar2];\n    }\n    if (iVar2 == 7) {\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      iVar2 = 8;\n    }\n    else {\n      local_20 = (char *)0x0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }\n  }" { (expression_statement "__s_00 = pcVar1 + 1;" (assignment_expression "__s_00 = pcVar1 + 1" identifier = (binary_expression "pcVar1 + 1" identifier + number_literal)) ;) (expression_statement "*pcVar1 = '\0';" (assignment_expression "*pcVar1 = '\0'" (pointer_expression "*pcVar1" * identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "local_24 = strchr(__s_00,0x2c);" (assignment_expression "local_24 = strchr(__s_00,0x2c)" identifier = (call_expression "strchr(__s_00,0x2c)" identifier (argument_list "(__s_00,0x2c)" ( identifier , number_literal )))) ;) (if_statement "if (local_24 != (char *)0x0) {\n      *local_24 = '\0';\n      local_24 = local_24 + 1;\n    }" if (parenthesized_expression "(local_24 != (char *)0x0)" ( (binary_expression "local_24 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      *local_24 = '\0';\n      local_24 = local_24 + 1;\n    }" { (expression_statement "*local_24 = '\0';" (assignment_expression "*local_24 = '\0'" (pointer_expression "*local_24" * identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "local_24 = local_24 + 1;" (assignment_expression "local_24 = local_24 + 1" identifier = (binary_expression "local_24 + 1" identifier + number_literal)) ;) })) (if_statement "if (param_1 != (undefined4 *)0x0) {\nLAB_0002f4ae:\n      s = ASN1_UTCTIME_new();\n      *param_1 = s;\n      if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf(DAT_000c458c,"memory allocation failure\n");\n        local_20 = (char *)0x0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }\n      iVar2 = ASN1_UTCTIME_set_string(s,__s);\n      if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }\n      pcVar1 = "invalid revocation date %s\n";\n      pcVar4 = __s;\nLAB_0002f6c6:\n      local_24 = (char *)0x0;\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n      local_20 = local_24;\n      goto LAB_0002f576;\n    }" if (parenthesized_expression "(param_1 != (undefined4 *)0x0)" ( (binary_expression "param_1 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_0002f4ae:\n      s = ASN1_UTCTIME_new();\n      *param_1 = s;\n      if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf(DAT_000c458c,"memory allocation failure\n");\n        local_20 = (char *)0x0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }\n      iVar2 = ASN1_UTCTIME_set_string(s,__s);\n      if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }\n      pcVar1 = "invalid revocation date %s\n";\n      pcVar4 = __s;\nLAB_0002f6c6:\n      local_24 = (char *)0x0;\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n      local_20 = local_24;\n      goto LAB_0002f576;\n    }" { (labeled_statement "LAB_0002f4ae:\n      s = ASN1_UTCTIME_new();" statement_identifier : (expression_statement "s = ASN1_UTCTIME_new();" (assignment_expression "s = ASN1_UTCTIME_new()" identifier = (call_expression "ASN1_UTCTIME_new()" identifier (argument_list "()" ( )))) ;)) (expression_statement "*param_1 = s;" (assignment_expression "*param_1 = s" (pointer_expression "*param_1" * identifier) = identifier) ;) (if_statement "if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf(DAT_000c458c,"memory allocation failure\n");\n        local_20 = (char *)0x0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }" if (parenthesized_expression "(s == (ASN1_UTCTIME *)0x0)" ( (binary_expression "s == (ASN1_UTCTIME *)0x0" identifier == (cast_expression "(ASN1_UTCTIME *)0x0" ( (type_descriptor "ASN1_UTCTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        BIO_printf(DAT_000c458c,"memory allocation failure\n");\n        local_20 = (char *)0x0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }" { (expression_statement "BIO_printf(DAT_000c458c,"memory allocation failure\n");" (call_expression "BIO_printf(DAT_000c458c,"memory allocation failure\n")" identifier (argument_list "(DAT_000c458c,"memory allocation failure\n")" ( identifier , (string_literal ""memory allocation failure\n"" " string_content escape_sequence ") ))) ;) (expression_statement "local_20 = (char *)0x0;" (assignment_expression "local_20 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" identifier = (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_0002f576;" goto statement_identifier ;) })) (expression_statement "iVar2 = ASN1_UTCTIME_set_string(s,__s);" (assignment_expression "iVar2 = ASN1_UTCTIME_set_string(s,__s)" identifier = (call_expression "ASN1_UTCTIME_set_string(s,__s)" identifier (argument_list "(s,__s)" ( identifier , identifier )))) ;) (if_statement "if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (compound_statement "{\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }" { (if_statement "if (__s_00 == (char *)0x0) goto LAB_0002f54c;" if (parenthesized_expression "(__s_00 == (char *)0x0)" ( (binary_expression "__s_00 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_0002f54c;" goto statement_identifier ;)) (goto_statement "goto LAB_0002f4dc;" goto statement_identifier ;) })) (expression_statement "pcVar1 = "invalid revocation date %s\n";" (assignment_expression "pcVar1 = "invalid revocation date %s\n"" identifier = (string_literal ""invalid revocation date %s\n"" " string_content escape_sequence ")) ;) (expression_statement "pcVar4 = __s;" (assignment_expression "pcVar4 = __s" identifier = identifier) ;) (labeled_statement "LAB_0002f6c6:\n      local_24 = (char *)0x0;" statement_identifier : (expression_statement "local_24 = (char *)0x0;" (assignment_expression "local_24 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" identifier = (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "BIO_printf(DAT_000c458c,pcVar1,pcVar4);" (call_expression "BIO_printf(DAT_000c458c,pcVar1,pcVar4)" identifier (argument_list "(DAT_000c458c,pcVar1,pcVar4)" ( identifier , identifier , identifier ))) ;) (expression_statement "local_20 = local_24;" (assignment_expression "local_20 = local_24" identifier = identifier) ;) (goto_statement "goto LAB_0002f576;" goto statement_identifier ;) })) (labeled_statement "LAB_0002f4dc:\n    pcVar1 = "unspecified";" statement_identifier : (expression_statement "pcVar1 = "unspecified";" (assignment_expression "pcVar1 = "unspecified"" identifier = (string_literal ""unspecified"" " string_content ")) ;)) (expression_statement "iVar2 = 0;" (assignment_expression "iVar2 = 0" identifier = number_literal) ;) (while_statement "while( true ) {\n      iVar3 = strcasecmp(__s_00,pcVar1);\n      if (iVar3 == 0) break;\n      iVar2 = iVar2 + 1;\n      if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }\n      pcVar1 = (&PTR_s_unspecified_000b6320)[iVar2];\n    }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n      iVar3 = strcasecmp(__s_00,pcVar1);\n      if (iVar3 == 0) break;\n      iVar2 = iVar2 + 1;\n      if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }\n      pcVar1 = (&PTR_s_unspecified_000b6320)[iVar2];\n    }" { (expression_statement "iVar3 = strcasecmp(__s_00,pcVar1);" (assignment_expression "iVar3 = strcasecmp(__s_00,pcVar1)" identifier = (call_expression "strcasecmp(__s_00,pcVar1)" identifier (argument_list "(__s_00,pcVar1)" ( identifier , identifier )))) ;) (if_statement "if (iVar3 == 0) break;" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar2 = iVar2 + 1;" (assignment_expression "iVar2 = iVar2 + 1" identifier = (binary_expression "iVar2 + 1" identifier + number_literal)) ;) (if_statement "if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }" if (parenthesized_expression "(iVar2 == 0xb)" ( (binary_expression "iVar2 == 0xb" identifier == number_literal) )) (compound_statement "{\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }" { (expression_statement "pcVar1 = "invalid reason code %s\n";" (assignment_expression "pcVar1 = "invalid reason code %s\n"" identifier = (string_literal ""invalid reason code %s\n"" " string_content escape_sequence ")) ;) (expression_statement "pcVar4 = __s_00;" (assignment_expression "pcVar4 = __s_00" identifier = identifier) ;) (goto_statement "goto LAB_0002f51e;" goto statement_identifier ;) })) (expression_statement "pcVar1 = (&PTR_s_unspecified_000b6320)[iVar2];" (assignment_expression "pcVar1 = (&PTR_s_unspecified_000b6320)[iVar2]" identifier = (subscript_expression "(&PTR_s_unspecified_000b6320)[iVar2]" (parenthesized_expression "(&PTR_s_unspecified_000b6320)" ( (pointer_expression "&PTR_s_unspecified_000b6320" & identifier) )) [ identifier ])) ;) })) (if_statement "if (iVar2 == 7) {\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      iVar2 = 8;\n    }\n    else {\n      local_20 = (char *)0x0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }" if (parenthesized_expression "(iVar2 == 7)" ( (binary_expression "iVar2 == 7" identifier == number_literal) )) (compound_statement "{\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      iVar2 = 8;\n    }" { (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" identifier = (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iVar2 = 8;" (assignment_expression "iVar2 = 8" identifier = number_literal) ;) }) (else_clause "else {\n      local_20 = (char *)0x0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }" else (compound_statement "{\n      local_20 = (char *)0x0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }" { (expression_statement "local_20 = (char *)0x0;" (assignment_expression "local_20 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }" if (parenthesized_expression "(iVar2 == 8)" ( (binary_expression "iVar2 == 8" identifier == number_literal) )) (compound_statement "{\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }" { (if_statement "if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }" if (parenthesized_expression "(local_24 == (char *)0x0)" ( (binary_expression "local_24 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }" { (expression_statement "pcVar1 = "missing hold instruction\n";" (assignment_expression "pcVar1 = "missing hold instruction\n"" identifier = (string_literal ""missing hold instruction\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0002f6c6;" goto statement_identifier ;) })) (expression_statement "a = OBJ_txt2obj(local_24,0);" (assignment_expression "a = OBJ_txt2obj(local_24,0)" identifier = (call_expression "OBJ_txt2obj(local_24,0)" identifier (argument_list "(local_24,0)" ( identifier , number_literal )))) ;) (if_statement "if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }" if (parenthesized_expression "(a == (ASN1_OBJECT *)0x0)" ( (binary_expression "a == (ASN1_OBJECT *)0x0" identifier == (cast_expression "(ASN1_OBJECT *)0x0" ( (type_descriptor "ASN1_OBJECT *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }" { (expression_statement "pcVar4 = "invalid object identifier %s\n";" (assignment_expression "pcVar4 = "invalid object identifier %s\n"" identifier = (string_literal ""invalid object identifier %s\n"" " string_content escape_sequence ")) ;) (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" identifier = (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_0002f6f3:\n          local_20 = (char *)0x0;" statement_identifier : (expression_statement "local_20 = (char *)0x0;" (assignment_expression "local_20 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "BIO_printf(DAT_000c458c,pcVar4,local_24);" (call_expression "BIO_printf(DAT_000c458c,pcVar4,local_24)" identifier (argument_list "(DAT_000c458c,pcVar4,local_24)" ( identifier , identifier , identifier ))) ;) (goto_statement "goto LAB_0002f576;" goto statement_identifier ;) })) (if_statement "if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }" if (parenthesized_expression "(param_3 == (undefined4 *)0x0)" ( (binary_expression "param_3 == (undefined4 *)0x0" identifier == (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }" { (expression_statement "iVar2 = 6;" (assignment_expression "iVar2 = 6" identifier = number_literal) ;) (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" identifier = (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ASN1_OBJECT_free(a);" (call_expression "ASN1_OBJECT_free(a)" identifier (argument_list "(a)" ( identifier ))) ;) }) (else_clause "else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }" else (compound_statement "{\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }" { (expression_statement "iVar2 = 6;" (assignment_expression "iVar2 = 6" identifier = number_literal) ;) (expression_statement "*param_3 = a;" (assignment_expression "*param_3 = a" (pointer_expression "*param_3" * identifier) = identifier) ;) (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" identifier = (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }))) }) (else_clause "else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }" else (compound_statement "{\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }" { (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" identifier = (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }" if (parenthesized_expression "(iVar2 - 9U < 2)" ( (binary_expression "iVar2 - 9U < 2" (binary_expression "iVar2 - 9U" identifier - number_literal) < number_literal) )) (compound_statement "{\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }" { (if_statement "if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }" if (parenthesized_expression "(local_24 == (char *)0x0)" ( (binary_expression "local_24 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            pcVar4 = "missing compromised time\n";\n          }" { (expression_statement "pcVar4 = "missing compromised time\n";" (assignment_expression "pcVar4 = "missing compromised time\n"" identifier = (string_literal ""missing compromised time\n"" " string_content escape_sequence ")) ;) }) (else_clause "else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }" else (compound_statement "{\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }" { (expression_statement "s_00 = ASN1_GENERALIZEDTIME_new();" (assignment_expression "s_00 = ASN1_GENERALIZEDTIME_new()" identifier = (call_expression "ASN1_GENERALIZEDTIME_new()" identifier (argument_list "()" ( )))) ;) (if_statement "if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }" if (parenthesized_expression "(s_00 != (ASN1_GENERALIZEDTIME *)0x0)" ( (binary_expression "s_00 != (ASN1_GENERALIZEDTIME *)0x0" identifier != (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }" { (expression_statement "iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);" (assignment_expression "iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24)" identifier = (call_expression "ASN1_GENERALIZEDTIME_set_string(s_00,local_24)" identifier (argument_list "(s_00,local_24)" ( identifier , identifier )))) ;) (if_statement "if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }" { (expression_statement "pcVar4 = "invalid compromised time %s\n";" (assignment_expression "pcVar4 = "invalid compromised time %s\n"" identifier = (string_literal ""invalid compromised time %s\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0002f6f3;" goto statement_identifier ;) })) (expression_statement "iVar2 = (iVar2 != 9) + 1;" (assignment_expression "iVar2 = (iVar2 != 9) + 1" identifier = (binary_expression "(iVar2 != 9) + 1" (parenthesized_expression "(iVar2 != 9)" ( (binary_expression "iVar2 != 9" identifier != number_literal) )) + number_literal)) ;) (goto_statement "goto LAB_0002f553;" goto statement_identifier ;) })) (expression_statement "pcVar4 = "memory allocation failure\n";" (assignment_expression "pcVar4 = "memory allocation failure\n"" identifier = (string_literal ""memory allocation failure\n"" " string_content escape_sequence ")) ;) }))) (expression_statement "BIO_printf(DAT_000c458c,pcVar4);" (call_expression "BIO_printf(DAT_000c458c,pcVar4)" identifier (argument_list "(DAT_000c458c,pcVar4)" ( identifier , identifier ))) ;) (goto_statement "goto LAB_0002f576;" goto statement_identifier ;) })) }))) }))) }))) (labeled_statement "LAB_0002f553:\n  if (param_2 != (int *)0x0) {\n    *param_2 = iVar2;\n  }" statement_identifier : (if_statement "if (param_2 != (int *)0x0) {\n    *param_2 = iVar2;\n  }" if (parenthesized_expression "(param_2 != (int *)0x0)" ( (binary_expression "param_2 != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    *param_2 = iVar2;\n  }" { (expression_statement "*param_2 = iVar2;" (assignment_expression "*param_2 = iVar2" (pointer_expression "*param_2" * identifier) = identifier) ;) }))) (expression_statement "local_20 = (char *)0x1;" (assignment_expression "local_20 = (char *)0x1" identifier = (cast_expression "(char *)0x1" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (param_4 != (undefined4 *)0x0) {\n    *param_4 = s_00;\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n  }" if (parenthesized_expression "(param_4 != (undefined4 *)0x0)" ( (binary_expression "param_4 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    *param_4 = s_00;\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n  }" { (expression_statement "*param_4 = s_00;" (assignment_expression "*param_4 = s_00" (pointer_expression "*param_4" * identifier) = identifier) ;) (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" identifier = (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" ( (type_descriptor "ASN1_GENERALIZEDTIME *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (labeled_statement "LAB_0002f576:\n  CRYPTO_free(__s);" statement_identifier : (expression_statement "CRYPTO_free(__s);" (call_expression "CRYPTO_free(__s)" identifier (argument_list "(__s)" ( identifier ))) ;)) (expression_statement "ASN1_GENERALIZEDTIME_free(s_00);" (call_expression "ASN1_GENERALIZEDTIME_free(s_00)" identifier (argument_list "(s_00)" ( identifier ))) ;) (return_statement "return local_20;" 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 * IDENT)) , (parameter_declaration TYPE (pointer_declarator * IDENT)) ))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (string_literal " string_content ") , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence ")) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;)) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) 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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;)) (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (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 = (call_expression IDENT (argument_list ( )))) ;)) (expression_statement (assignment_expression (pointer_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 IDENT (argument_list ( IDENT , (string_literal " string_content escape_sequence ") ))) ;) (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 *)) ) LIT)) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence ")) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (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 *)) ) LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (while_statement while (parenthesized_expression ( BOOL )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence ")) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (subscript_expression (parenthesized_expression ( (pointer_expression & IDENT) )) [ IDENT ])) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (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 (assignment_expression IDENT = (string_literal " string_content escape_sequence ")) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence ")) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;)) (expression_statement (call_expression IDENT (argument_list ( IDENT , 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 = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_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 = (string_literal " string_content escape_sequence ")) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (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 IDENT (argument_list ( IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence ")) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) + LIT)) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence ")) ;) }))) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (goto_statement goto statement_identifier ;) })) }))) }))) }))) (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 (pointer_expression * IDENT) = IDENT) ;) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) })) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;)) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (return_statement return IDENT ;) })))
(function_definition "undefined4\nFUN_0002f430(undefined4 *param_1,int *param_2,undefined4 *param_3,undefined4 *param_4,char *param_5)\n\n{\n  char *__s;\n  char *pcVar1;\n  ASN1_UTCTIME *s;\n  int iVar2;\n  int iVar3;\n  ASN1_OBJECT *a;\n  ASN1_GENERALIZEDTIME *s_00;\n  char *__s_00;\n  char *pcVar4;\n  char *local_24;\n  undefined4 local_20;\n  \n  pcVar4 = (char *)0x9cc;\n  __s = CRYPTO_strdup(param_5,"../apps/ca.c",0x9cc);\n  if (__s == (char *)0x0) {\n    pcVar1 = "memory allocation failure\n";\nLAB_0002f51e:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n    local_20 = (char *)0x0;\n    goto LAB_0002f576;\n  }\n  pcVar1 = strchr(__s,0x2c);\n  if (pcVar1 == (char *)0x0) {\n    local_24 = (char *)0x0;\n    __s_00 = (char *)0x0;\n    if (param_1 != (undefined4 *)0x0) goto LAB_0002f4ae;\nLAB_0002f54c:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    iVar2 = -1;\n  }\n  else {\n    __s_00 = pcVar1 + 1;\n    *pcVar1 = '\0';\n    local_24 = strchr(__s_00,0x2c);\n    if (local_24 != (char *)0x0) {\n      *local_24 = '\0';\n      local_24 = local_24 + 1;\n    }\n    if (param_1 != (undefined4 *)0x0) {\nLAB_0002f4ae:\n      s = ASN1_UTCTIME_new();\n      *param_1 = s;\n      if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf(DAT_000c458c,"memory allocation failure\n");\n        local_20 = (char *)0x0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }\n      iVar2 = ASN1_UTCTIME_set_string(s,__s);\n      if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }\n      pcVar1 = "invalid revocation date %s\n";\n      pcVar4 = __s;\nLAB_0002f6c6:\n      local_24 = (char *)0x0;\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n      local_20 = local_24;\n      goto LAB_0002f576;\n    }\nLAB_0002f4dc:\n    pcVar1 = "unspecified";\n    iVar2 = 0;\n    while( true ) {\n      iVar3 = strcasecmp(__s_00,pcVar1);\n      if (iVar3 == 0) break;\n      iVar2 = iVar2 + 1;\n      if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }\n      pcVar1 = (&PTR_s_unspecified_000b6320)[iVar2];\n    }\n    if (iVar2 == 7) {\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      iVar2 = 8;\n    }\n    else {\n      local_20 = (char *)0x0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }\n  }\nLAB_0002f553:\n  if (param_2 != (int *)0x0) {\n    *param_2 = iVar2;\n  }\n  local_20 = (char *)0x1;\n  if (param_4 != (undefined4 *)0x0) {\n    *param_4 = s_00;\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n  }\nLAB_0002f576:\n  CRYPTO_free(__s);\n  ASN1_GENERALIZEDTIME_free(s_00);\n  return local_20;\n}" (type_identifier "undefined4") (function_declarator "FUN_0002f430(undefined4 *param_1,int *param_2,undefined4 *param_3,undefined4 *param_4,char *param_5)" (identifier "FUN_0002f430") (parameter_list "(undefined4 *param_1,int *param_2,undefined4 *param_3,undefined4 *param_4,char *param_5)" (( "(") (parameter_declaration "undefined4 *param_1" (type_identifier "undefined4") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) (, ",") (parameter_declaration "int *param_2" (primitive_type "int") (pointer_declarator "*param_2" (* "*") (identifier "param_2"))) (, ",") (parameter_declaration "undefined4 *param_3" (type_identifier "undefined4") (pointer_declarator "*param_3" (* "*") (identifier "param_3"))) (, ",") (parameter_declaration "undefined4 *param_4" (type_identifier "undefined4") (pointer_declarator "*param_4" (* "*") (identifier "param_4"))) (, ",") (parameter_declaration "char *param_5" (primitive_type "char") (pointer_declarator "*param_5" (* "*") (identifier "param_5"))) () ")"))) (compound_statement "{\n  char *__s;\n  char *pcVar1;\n  ASN1_UTCTIME *s;\n  int iVar2;\n  int iVar3;\n  ASN1_OBJECT *a;\n  ASN1_GENERALIZEDTIME *s_00;\n  char *__s_00;\n  char *pcVar4;\n  char *local_24;\n  undefined4 local_20;\n  \n  pcVar4 = (char *)0x9cc;\n  __s = CRYPTO_strdup(param_5,"../apps/ca.c",0x9cc);\n  if (__s == (char *)0x0) {\n    pcVar1 = "memory allocation failure\n";\nLAB_0002f51e:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n    local_20 = (char *)0x0;\n    goto LAB_0002f576;\n  }\n  pcVar1 = strchr(__s,0x2c);\n  if (pcVar1 == (char *)0x0) {\n    local_24 = (char *)0x0;\n    __s_00 = (char *)0x0;\n    if (param_1 != (undefined4 *)0x0) goto LAB_0002f4ae;\nLAB_0002f54c:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    iVar2 = -1;\n  }\n  else {\n    __s_00 = pcVar1 + 1;\n    *pcVar1 = '\0';\n    local_24 = strchr(__s_00,0x2c);\n    if (local_24 != (char *)0x0) {\n      *local_24 = '\0';\n      local_24 = local_24 + 1;\n    }\n    if (param_1 != (undefined4 *)0x0) {\nLAB_0002f4ae:\n      s = ASN1_UTCTIME_new();\n      *param_1 = s;\n      if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf(DAT_000c458c,"memory allocation failure\n");\n        local_20 = (char *)0x0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }\n      iVar2 = ASN1_UTCTIME_set_string(s,__s);\n      if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }\n      pcVar1 = "invalid revocation date %s\n";\n      pcVar4 = __s;\nLAB_0002f6c6:\n      local_24 = (char *)0x0;\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n      local_20 = local_24;\n      goto LAB_0002f576;\n    }\nLAB_0002f4dc:\n    pcVar1 = "unspecified";\n    iVar2 = 0;\n    while( true ) {\n      iVar3 = strcasecmp(__s_00,pcVar1);\n      if (iVar3 == 0) break;\n      iVar2 = iVar2 + 1;\n      if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }\n      pcVar1 = (&PTR_s_unspecified_000b6320)[iVar2];\n    }\n    if (iVar2 == 7) {\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      iVar2 = 8;\n    }\n    else {\n      local_20 = (char *)0x0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }\n  }\nLAB_0002f553:\n  if (param_2 != (int *)0x0) {\n    *param_2 = iVar2;\n  }\n  local_20 = (char *)0x1;\n  if (param_4 != (undefined4 *)0x0) {\n    *param_4 = s_00;\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n  }\nLAB_0002f576:\n  CRYPTO_free(__s);\n  ASN1_GENERALIZEDTIME_free(s_00);\n  return local_20;\n}" ({ "{") (declaration "char *__s;" (primitive_type "char") (pointer_declarator "*__s" (* "*") (identifier "__s")) (; ";")) (declaration "char *pcVar1;" (primitive_type "char") (pointer_declarator "*pcVar1" (* "*") (identifier "pcVar1")) (; ";")) (declaration "ASN1_UTCTIME *s;" (type_identifier "ASN1_UTCTIME") (pointer_declarator "*s" (* "*") (identifier "s")) (; ";")) (declaration "int iVar2;" (primitive_type "int") (identifier "iVar2") (; ";")) (declaration "int iVar3;" (primitive_type "int") (identifier "iVar3") (; ";")) (declaration "ASN1_OBJECT *a;" (type_identifier "ASN1_OBJECT") (pointer_declarator "*a" (* "*") (identifier "a")) (; ";")) (declaration "ASN1_GENERALIZEDTIME *s_00;" (type_identifier "ASN1_GENERALIZEDTIME") (pointer_declarator "*s_00" (* "*") (identifier "s_00")) (; ";")) (declaration "char *__s_00;" (primitive_type "char") (pointer_declarator "*__s_00" (* "*") (identifier "__s_00")) (; ";")) (declaration "char *pcVar4;" (primitive_type "char") (pointer_declarator "*pcVar4" (* "*") (identifier "pcVar4")) (; ";")) (declaration "char *local_24;" (primitive_type "char") (pointer_declarator "*local_24" (* "*") (identifier "local_24")) (; ";")) (declaration "undefined4 local_20;" (type_identifier "undefined4") (identifier "local_20") (; ";")) (expression_statement "pcVar4 = (char *)0x9cc;" (assignment_expression "pcVar4 = (char *)0x9cc" (identifier "pcVar4") (= "=") (cast_expression "(char *)0x9cc" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x9cc"))) (; ";")) (expression_statement "__s = CRYPTO_strdup(param_5,"../apps/ca.c",0x9cc);" (assignment_expression "__s = CRYPTO_strdup(param_5,"../apps/ca.c",0x9cc)" (identifier "__s") (= "=") (call_expression "CRYPTO_strdup(param_5,"../apps/ca.c",0x9cc)" (identifier "CRYPTO_strdup") (argument_list "(param_5,"../apps/ca.c",0x9cc)" (( "(") (identifier "param_5") (, ",") (string_literal ""../apps/ca.c"" (" """) (string_content "../apps/ca.c") (" """)) (, ",") (number_literal "0x9cc") () ")")))) (; ";")) (if_statement "if (__s == (char *)0x0) {\n    pcVar1 = "memory allocation failure\n";\nLAB_0002f51e:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n    local_20 = (char *)0x0;\n    goto LAB_0002f576;\n  }" (if "if") (parenthesized_expression "(__s == (char *)0x0)" (( "(") (binary_expression "__s == (char *)0x0" (identifier "__s") (== "==") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    pcVar1 = "memory allocation failure\n";\nLAB_0002f51e:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n    local_20 = (char *)0x0;\n    goto LAB_0002f576;\n  }" ({ "{") (expression_statement "pcVar1 = "memory allocation failure\n";" (assignment_expression "pcVar1 = "memory allocation failure\n"" (identifier "pcVar1") (= "=") (string_literal ""memory allocation failure\n"" (" """) (string_content "memory allocation failure") (escape_sequence "\n") (" """))) (; ";")) (labeled_statement "LAB_0002f51e:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (statement_identifier "LAB_0002f51e") (: ":") (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" (identifier "s_00") (= "=") (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" (( "(") (type_descriptor "ASN1_GENERALIZEDTIME *" (type_identifier "ASN1_GENERALIZEDTIME") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";"))) (expression_statement "BIO_printf(DAT_000c458c,pcVar1,pcVar4);" (call_expression "BIO_printf(DAT_000c458c,pcVar1,pcVar4)" (identifier "BIO_printf") (argument_list "(DAT_000c458c,pcVar1,pcVar4)" (( "(") (identifier "DAT_000c458c") (, ",") (identifier "pcVar1") (, ",") (identifier "pcVar4") () ")"))) (; ";")) (expression_statement "local_20 = (char *)0x0;" (assignment_expression "local_20 = (char *)0x0" (identifier "local_20") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (goto_statement "goto LAB_0002f576;" (goto "goto") (statement_identifier "LAB_0002f576") (; ";")) (} "}"))) (expression_statement "pcVar1 = strchr(__s,0x2c);" (assignment_expression "pcVar1 = strchr(__s,0x2c)" (identifier "pcVar1") (= "=") (call_expression "strchr(__s,0x2c)" (identifier "strchr") (argument_list "(__s,0x2c)" (( "(") (identifier "__s") (, ",") (number_literal "0x2c") () ")")))) (; ";")) (if_statement "if (pcVar1 == (char *)0x0) {\n    local_24 = (char *)0x0;\n    __s_00 = (char *)0x0;\n    if (param_1 != (undefined4 *)0x0) goto LAB_0002f4ae;\nLAB_0002f54c:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    iVar2 = -1;\n  }\n  else {\n    __s_00 = pcVar1 + 1;\n    *pcVar1 = '\0';\n    local_24 = strchr(__s_00,0x2c);\n    if (local_24 != (char *)0x0) {\n      *local_24 = '\0';\n      local_24 = local_24 + 1;\n    }\n    if (param_1 != (undefined4 *)0x0) {\nLAB_0002f4ae:\n      s = ASN1_UTCTIME_new();\n      *param_1 = s;\n      if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf(DAT_000c458c,"memory allocation failure\n");\n        local_20 = (char *)0x0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }\n      iVar2 = ASN1_UTCTIME_set_string(s,__s);\n      if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }\n      pcVar1 = "invalid revocation date %s\n";\n      pcVar4 = __s;\nLAB_0002f6c6:\n      local_24 = (char *)0x0;\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n      local_20 = local_24;\n      goto LAB_0002f576;\n    }\nLAB_0002f4dc:\n    pcVar1 = "unspecified";\n    iVar2 = 0;\n    while( true ) {\n      iVar3 = strcasecmp(__s_00,pcVar1);\n      if (iVar3 == 0) break;\n      iVar2 = iVar2 + 1;\n      if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }\n      pcVar1 = (&PTR_s_unspecified_000b6320)[iVar2];\n    }\n    if (iVar2 == 7) {\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      iVar2 = 8;\n    }\n    else {\n      local_20 = (char *)0x0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }\n  }" (if "if") (parenthesized_expression "(pcVar1 == (char *)0x0)" (( "(") (binary_expression "pcVar1 == (char *)0x0" (identifier "pcVar1") (== "==") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    local_24 = (char *)0x0;\n    __s_00 = (char *)0x0;\n    if (param_1 != (undefined4 *)0x0) goto LAB_0002f4ae;\nLAB_0002f54c:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n    iVar2 = -1;\n  }" ({ "{") (expression_statement "local_24 = (char *)0x0;" (assignment_expression "local_24 = (char *)0x0" (identifier "local_24") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "__s_00 = (char *)0x0;" (assignment_expression "__s_00 = (char *)0x0" (identifier "__s_00") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (if_statement "if (param_1 != (undefined4 *)0x0) goto LAB_0002f4ae;" (if "if") (parenthesized_expression "(param_1 != (undefined4 *)0x0)" (( "(") (binary_expression "param_1 != (undefined4 *)0x0" (identifier "param_1") (!= "!=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_0002f4ae;" (goto "goto") (statement_identifier "LAB_0002f4ae") (; ";"))) (labeled_statement "LAB_0002f54c:\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (statement_identifier "LAB_0002f54c") (: ":") (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" (identifier "s_00") (= "=") (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" (( "(") (type_descriptor "ASN1_GENERALIZEDTIME *" (type_identifier "ASN1_GENERALIZEDTIME") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";"))) (expression_statement "iVar2 = -1;" (assignment_expression "iVar2 = -1" (identifier "iVar2") (= "=") (number_literal "-1")) (; ";")) (} "}")) (else_clause "else {\n    __s_00 = pcVar1 + 1;\n    *pcVar1 = '\0';\n    local_24 = strchr(__s_00,0x2c);\n    if (local_24 != (char *)0x0) {\n      *local_24 = '\0';\n      local_24 = local_24 + 1;\n    }\n    if (param_1 != (undefined4 *)0x0) {\nLAB_0002f4ae:\n      s = ASN1_UTCTIME_new();\n      *param_1 = s;\n      if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf(DAT_000c458c,"memory allocation failure\n");\n        local_20 = (char *)0x0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }\n      iVar2 = ASN1_UTCTIME_set_string(s,__s);\n      if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }\n      pcVar1 = "invalid revocation date %s\n";\n      pcVar4 = __s;\nLAB_0002f6c6:\n      local_24 = (char *)0x0;\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n      local_20 = local_24;\n      goto LAB_0002f576;\n    }\nLAB_0002f4dc:\n    pcVar1 = "unspecified";\n    iVar2 = 0;\n    while( true ) {\n      iVar3 = strcasecmp(__s_00,pcVar1);\n      if (iVar3 == 0) break;\n      iVar2 = iVar2 + 1;\n      if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }\n      pcVar1 = (&PTR_s_unspecified_000b6320)[iVar2];\n    }\n    if (iVar2 == 7) {\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      iVar2 = 8;\n    }\n    else {\n      local_20 = (char *)0x0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }\n  }" (else "else") (compound_statement "{\n    __s_00 = pcVar1 + 1;\n    *pcVar1 = '\0';\n    local_24 = strchr(__s_00,0x2c);\n    if (local_24 != (char *)0x0) {\n      *local_24 = '\0';\n      local_24 = local_24 + 1;\n    }\n    if (param_1 != (undefined4 *)0x0) {\nLAB_0002f4ae:\n      s = ASN1_UTCTIME_new();\n      *param_1 = s;\n      if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf(DAT_000c458c,"memory allocation failure\n");\n        local_20 = (char *)0x0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }\n      iVar2 = ASN1_UTCTIME_set_string(s,__s);\n      if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }\n      pcVar1 = "invalid revocation date %s\n";\n      pcVar4 = __s;\nLAB_0002f6c6:\n      local_24 = (char *)0x0;\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n      local_20 = local_24;\n      goto LAB_0002f576;\n    }\nLAB_0002f4dc:\n    pcVar1 = "unspecified";\n    iVar2 = 0;\n    while( true ) {\n      iVar3 = strcasecmp(__s_00,pcVar1);\n      if (iVar3 == 0) break;\n      iVar2 = iVar2 + 1;\n      if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }\n      pcVar1 = (&PTR_s_unspecified_000b6320)[iVar2];\n    }\n    if (iVar2 == 7) {\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      iVar2 = 8;\n    }\n    else {\n      local_20 = (char *)0x0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }\n  }" ({ "{") (expression_statement "__s_00 = pcVar1 + 1;" (assignment_expression "__s_00 = pcVar1 + 1" (identifier "__s_00") (= "=") (binary_expression "pcVar1 + 1" (identifier "pcVar1") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "*pcVar1 = '\0';" (assignment_expression "*pcVar1 = '\0'" (pointer_expression "*pcVar1" (* "*") (identifier "pcVar1")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "local_24 = strchr(__s_00,0x2c);" (assignment_expression "local_24 = strchr(__s_00,0x2c)" (identifier "local_24") (= "=") (call_expression "strchr(__s_00,0x2c)" (identifier "strchr") (argument_list "(__s_00,0x2c)" (( "(") (identifier "__s_00") (, ",") (number_literal "0x2c") () ")")))) (; ";")) (if_statement "if (local_24 != (char *)0x0) {\n      *local_24 = '\0';\n      local_24 = local_24 + 1;\n    }" (if "if") (parenthesized_expression "(local_24 != (char *)0x0)" (( "(") (binary_expression "local_24 != (char *)0x0" (identifier "local_24") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      *local_24 = '\0';\n      local_24 = local_24 + 1;\n    }" ({ "{") (expression_statement "*local_24 = '\0';" (assignment_expression "*local_24 = '\0'" (pointer_expression "*local_24" (* "*") (identifier "local_24")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "local_24 = local_24 + 1;" (assignment_expression "local_24 = local_24 + 1" (identifier "local_24") (= "=") (binary_expression "local_24 + 1" (identifier "local_24") (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (if_statement "if (param_1 != (undefined4 *)0x0) {\nLAB_0002f4ae:\n      s = ASN1_UTCTIME_new();\n      *param_1 = s;\n      if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf(DAT_000c458c,"memory allocation failure\n");\n        local_20 = (char *)0x0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }\n      iVar2 = ASN1_UTCTIME_set_string(s,__s);\n      if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }\n      pcVar1 = "invalid revocation date %s\n";\n      pcVar4 = __s;\nLAB_0002f6c6:\n      local_24 = (char *)0x0;\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n      local_20 = local_24;\n      goto LAB_0002f576;\n    }" (if "if") (parenthesized_expression "(param_1 != (undefined4 *)0x0)" (( "(") (binary_expression "param_1 != (undefined4 *)0x0" (identifier "param_1") (!= "!=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\nLAB_0002f4ae:\n      s = ASN1_UTCTIME_new();\n      *param_1 = s;\n      if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf(DAT_000c458c,"memory allocation failure\n");\n        local_20 = (char *)0x0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }\n      iVar2 = ASN1_UTCTIME_set_string(s,__s);\n      if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }\n      pcVar1 = "invalid revocation date %s\n";\n      pcVar4 = __s;\nLAB_0002f6c6:\n      local_24 = (char *)0x0;\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      BIO_printf(DAT_000c458c,pcVar1,pcVar4);\n      local_20 = local_24;\n      goto LAB_0002f576;\n    }" ({ "{") (labeled_statement "LAB_0002f4ae:\n      s = ASN1_UTCTIME_new();" (statement_identifier "LAB_0002f4ae") (: ":") (expression_statement "s = ASN1_UTCTIME_new();" (assignment_expression "s = ASN1_UTCTIME_new()" (identifier "s") (= "=") (call_expression "ASN1_UTCTIME_new()" (identifier "ASN1_UTCTIME_new") (argument_list "()" (( "(") () ")")))) (; ";"))) (expression_statement "*param_1 = s;" (assignment_expression "*param_1 = s" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (= "=") (identifier "s")) (; ";")) (if_statement "if (s == (ASN1_UTCTIME *)0x0) {\n        BIO_printf(DAT_000c458c,"memory allocation failure\n");\n        local_20 = (char *)0x0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }" (if "if") (parenthesized_expression "(s == (ASN1_UTCTIME *)0x0)" (( "(") (binary_expression "s == (ASN1_UTCTIME *)0x0" (identifier "s") (== "==") (cast_expression "(ASN1_UTCTIME *)0x0" (( "(") (type_descriptor "ASN1_UTCTIME *" (type_identifier "ASN1_UTCTIME") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        BIO_printf(DAT_000c458c,"memory allocation failure\n");\n        local_20 = (char *)0x0;\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        goto LAB_0002f576;\n      }" ({ "{") (expression_statement "BIO_printf(DAT_000c458c,"memory allocation failure\n");" (call_expression "BIO_printf(DAT_000c458c,"memory allocation failure\n")" (identifier "BIO_printf") (argument_list "(DAT_000c458c,"memory allocation failure\n")" (( "(") (identifier "DAT_000c458c") (, ",") (string_literal ""memory allocation failure\n"" (" """) (string_content "memory allocation failure") (escape_sequence "\n") (" """)) () ")"))) (; ";")) (expression_statement "local_20 = (char *)0x0;" (assignment_expression "local_20 = (char *)0x0" (identifier "local_20") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" (identifier "s_00") (= "=") (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" (( "(") (type_descriptor "ASN1_GENERALIZEDTIME *" (type_identifier "ASN1_GENERALIZEDTIME") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (goto_statement "goto LAB_0002f576;" (goto "goto") (statement_identifier "LAB_0002f576") (; ";")) (} "}"))) (expression_statement "iVar2 = ASN1_UTCTIME_set_string(s,__s);" (assignment_expression "iVar2 = ASN1_UTCTIME_set_string(s,__s)" (identifier "iVar2") (= "=") (call_expression "ASN1_UTCTIME_set_string(s,__s)" (identifier "ASN1_UTCTIME_set_string") (argument_list "(s,__s)" (( "(") (identifier "s") (, ",") (identifier "__s") () ")")))) (; ";")) (if_statement "if (iVar2 != 0) {\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }" (if "if") (parenthesized_expression "(iVar2 != 0)" (( "(") (binary_expression "iVar2 != 0" (identifier "iVar2") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        if (__s_00 == (char *)0x0) goto LAB_0002f54c;\n        goto LAB_0002f4dc;\n      }" ({ "{") (if_statement "if (__s_00 == (char *)0x0) goto LAB_0002f54c;" (if "if") (parenthesized_expression "(__s_00 == (char *)0x0)" (( "(") (binary_expression "__s_00 == (char *)0x0" (identifier "__s_00") (== "==") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_0002f54c;" (goto "goto") (statement_identifier "LAB_0002f54c") (; ";"))) (goto_statement "goto LAB_0002f4dc;" (goto "goto") (statement_identifier "LAB_0002f4dc") (; ";")) (} "}"))) (expression_statement "pcVar1 = "invalid revocation date %s\n";" (assignment_expression "pcVar1 = "invalid revocation date %s\n"" (identifier "pcVar1") (= "=") (string_literal ""invalid revocation date %s\n"" (" """) (string_content "invalid revocation date %s") (escape_sequence "\n") (" """))) (; ";")) (expression_statement "pcVar4 = __s;" (assignment_expression "pcVar4 = __s" (identifier "pcVar4") (= "=") (identifier "__s")) (; ";")) (labeled_statement "LAB_0002f6c6:\n      local_24 = (char *)0x0;" (statement_identifier "LAB_0002f6c6") (: ":") (expression_statement "local_24 = (char *)0x0;" (assignment_expression "local_24 = (char *)0x0" (identifier "local_24") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";"))) (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" (identifier "s_00") (= "=") (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" (( "(") (type_descriptor "ASN1_GENERALIZEDTIME *" (type_identifier "ASN1_GENERALIZEDTIME") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "BIO_printf(DAT_000c458c,pcVar1,pcVar4);" (call_expression "BIO_printf(DAT_000c458c,pcVar1,pcVar4)" (identifier "BIO_printf") (argument_list "(DAT_000c458c,pcVar1,pcVar4)" (( "(") (identifier "DAT_000c458c") (, ",") (identifier "pcVar1") (, ",") (identifier "pcVar4") () ")"))) (; ";")) (expression_statement "local_20 = local_24;" (assignment_expression "local_20 = local_24" (identifier "local_20") (= "=") (identifier "local_24")) (; ";")) (goto_statement "goto LAB_0002f576;" (goto "goto") (statement_identifier "LAB_0002f576") (; ";")) (} "}"))) (labeled_statement "LAB_0002f4dc:\n    pcVar1 = "unspecified";" (statement_identifier "LAB_0002f4dc") (: ":") (expression_statement "pcVar1 = "unspecified";" (assignment_expression "pcVar1 = "unspecified"" (identifier "pcVar1") (= "=") (string_literal ""unspecified"" (" """) (string_content "unspecified") (" """))) (; ";"))) (expression_statement "iVar2 = 0;" (assignment_expression "iVar2 = 0" (identifier "iVar2") (= "=") (number_literal "0")) (; ";")) (while_statement "while( true ) {\n      iVar3 = strcasecmp(__s_00,pcVar1);\n      if (iVar3 == 0) break;\n      iVar2 = iVar2 + 1;\n      if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }\n      pcVar1 = (&PTR_s_unspecified_000b6320)[iVar2];\n    }" (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (compound_statement "{\n      iVar3 = strcasecmp(__s_00,pcVar1);\n      if (iVar3 == 0) break;\n      iVar2 = iVar2 + 1;\n      if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }\n      pcVar1 = (&PTR_s_unspecified_000b6320)[iVar2];\n    }" ({ "{") (expression_statement "iVar3 = strcasecmp(__s_00,pcVar1);" (assignment_expression "iVar3 = strcasecmp(__s_00,pcVar1)" (identifier "iVar3") (= "=") (call_expression "strcasecmp(__s_00,pcVar1)" (identifier "strcasecmp") (argument_list "(__s_00,pcVar1)" (( "(") (identifier "__s_00") (, ",") (identifier "pcVar1") () ")")))) (; ";")) (if_statement "if (iVar3 == 0) break;" (if "if") (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar2 = iVar2 + 1;" (assignment_expression "iVar2 = iVar2 + 1" (identifier "iVar2") (= "=") (binary_expression "iVar2 + 1" (identifier "iVar2") (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (iVar2 == 0xb) {\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }" (if "if") (parenthesized_expression "(iVar2 == 0xb)" (( "(") (binary_expression "iVar2 == 0xb" (identifier "iVar2") (== "==") (number_literal "0xb")) () ")")) (compound_statement "{\n        pcVar1 = "invalid reason code %s\n";\n        pcVar4 = __s_00;\n        goto LAB_0002f51e;\n      }" ({ "{") (expression_statement "pcVar1 = "invalid reason code %s\n";" (assignment_expression "pcVar1 = "invalid reason code %s\n"" (identifier "pcVar1") (= "=") (string_literal ""invalid reason code %s\n"" (" """) (string_content "invalid reason code %s") (escape_sequence "\n") (" """))) (; ";")) (expression_statement "pcVar4 = __s_00;" (assignment_expression "pcVar4 = __s_00" (identifier "pcVar4") (= "=") (identifier "__s_00")) (; ";")) (goto_statement "goto LAB_0002f51e;" (goto "goto") (statement_identifier "LAB_0002f51e") (; ";")) (} "}"))) (expression_statement "pcVar1 = (&PTR_s_unspecified_000b6320)[iVar2];" (assignment_expression "pcVar1 = (&PTR_s_unspecified_000b6320)[iVar2]" (identifier "pcVar1") (= "=") (subscript_expression "(&PTR_s_unspecified_000b6320)[iVar2]" (parenthesized_expression "(&PTR_s_unspecified_000b6320)" (( "(") (pointer_expression "&PTR_s_unspecified_000b6320" (& "&") (identifier "PTR_s_unspecified_000b6320")) () ")")) ([ "[") (identifier "iVar2") (] "]"))) (; ";")) (} "}"))) (if_statement "if (iVar2 == 7) {\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      iVar2 = 8;\n    }\n    else {\n      local_20 = (char *)0x0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }" (if "if") (parenthesized_expression "(iVar2 == 7)" (( "(") (binary_expression "iVar2 == 7" (identifier "iVar2") (== "==") (number_literal "7")) () ")")) (compound_statement "{\n      s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n      iVar2 = 8;\n    }" ({ "{") (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" (identifier "s_00") (= "=") (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" (( "(") (type_descriptor "ASN1_GENERALIZEDTIME *" (type_identifier "ASN1_GENERALIZEDTIME") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "iVar2 = 8;" (assignment_expression "iVar2 = 8" (identifier "iVar2") (= "=") (number_literal "8")) (; ";")) (} "}")) (else_clause "else {\n      local_20 = (char *)0x0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }" (else "else") (compound_statement "{\n      local_20 = (char *)0x0;\n      if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }\n    }" ({ "{") (expression_statement "local_20 = (char *)0x0;" (assignment_expression "local_20 = (char *)0x0" (identifier "local_20") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (if_statement "if (iVar2 == 8) {\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }\n      else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }" (if "if") (parenthesized_expression "(iVar2 == 8)" (( "(") (binary_expression "iVar2 == 8" (identifier "iVar2") (== "==") (number_literal "8")) () ")")) (compound_statement "{\n        if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }\n        a = OBJ_txt2obj(local_24,0);\n        if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }\n        if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }\n      }" ({ "{") (if_statement "if (local_24 == (char *)0x0) {\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }" (if "if") (parenthesized_expression "(local_24 == (char *)0x0)" (( "(") (binary_expression "local_24 == (char *)0x0" (identifier "local_24") (== "==") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          pcVar1 = "missing hold instruction\n";\n          goto LAB_0002f6c6;\n        }" ({ "{") (expression_statement "pcVar1 = "missing hold instruction\n";" (assignment_expression "pcVar1 = "missing hold instruction\n"" (identifier "pcVar1") (= "=") (string_literal ""missing hold instruction\n"" (" """) (string_content "missing hold instruction") (escape_sequence "\n") (" """))) (; ";")) (goto_statement "goto LAB_0002f6c6;" (goto "goto") (statement_identifier "LAB_0002f6c6") (; ";")) (} "}"))) (expression_statement "a = OBJ_txt2obj(local_24,0);" (assignment_expression "a = OBJ_txt2obj(local_24,0)" (identifier "a") (= "=") (call_expression "OBJ_txt2obj(local_24,0)" (identifier "OBJ_txt2obj") (argument_list "(local_24,0)" (( "(") (identifier "local_24") (, ",") (number_literal "0") () ")")))) (; ";")) (if_statement "if (a == (ASN1_OBJECT *)0x0) {\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }" (if "if") (parenthesized_expression "(a == (ASN1_OBJECT *)0x0)" (( "(") (binary_expression "a == (ASN1_OBJECT *)0x0" (identifier "a") (== "==") (cast_expression "(ASN1_OBJECT *)0x0" (( "(") (type_descriptor "ASN1_OBJECT *" (type_identifier "ASN1_OBJECT") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          pcVar4 = "invalid object identifier %s\n";\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\nLAB_0002f6f3:\n          local_20 = (char *)0x0;\n          BIO_printf(DAT_000c458c,pcVar4,local_24);\n          goto LAB_0002f576;\n        }" ({ "{") (expression_statement "pcVar4 = "invalid object identifier %s\n";" (assignment_expression "pcVar4 = "invalid object identifier %s\n"" (identifier "pcVar4") (= "=") (string_literal ""invalid object identifier %s\n"" (" """) (string_content "invalid object identifier %s") (escape_sequence "\n") (" """))) (; ";")) (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" (identifier "s_00") (= "=") (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" (( "(") (type_descriptor "ASN1_GENERALIZEDTIME *" (type_identifier "ASN1_GENERALIZEDTIME") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (labeled_statement "LAB_0002f6f3:\n          local_20 = (char *)0x0;" (statement_identifier "LAB_0002f6f3") (: ":") (expression_statement "local_20 = (char *)0x0;" (assignment_expression "local_20 = (char *)0x0" (identifier "local_20") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";"))) (expression_statement "BIO_printf(DAT_000c458c,pcVar4,local_24);" (call_expression "BIO_printf(DAT_000c458c,pcVar4,local_24)" (identifier "BIO_printf") (argument_list "(DAT_000c458c,pcVar4,local_24)" (( "(") (identifier "DAT_000c458c") (, ",") (identifier "pcVar4") (, ",") (identifier "local_24") () ")"))) (; ";")) (goto_statement "goto LAB_0002f576;" (goto "goto") (statement_identifier "LAB_0002f576") (; ";")) (} "}"))) (if_statement "if (param_3 == (undefined4 *)0x0) {\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }\n        else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }" (if "if") (parenthesized_expression "(param_3 == (undefined4 *)0x0)" (( "(") (binary_expression "param_3 == (undefined4 *)0x0" (identifier "param_3") (== "==") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          iVar2 = 6;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n          ASN1_OBJECT_free(a);\n        }" ({ "{") (expression_statement "iVar2 = 6;" (assignment_expression "iVar2 = 6" (identifier "iVar2") (= "=") (number_literal "6")) (; ";")) (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" (identifier "s_00") (= "=") (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" (( "(") (type_descriptor "ASN1_GENERALIZEDTIME *" (type_identifier "ASN1_GENERALIZEDTIME") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "ASN1_OBJECT_free(a);" (call_expression "ASN1_OBJECT_free(a)" (identifier "ASN1_OBJECT_free") (argument_list "(a)" (( "(") (identifier "a") () ")"))) (; ";")) (} "}")) (else_clause "else {\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }" (else "else") (compound_statement "{\n          iVar2 = 6;\n          *param_3 = a;\n          s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        }" ({ "{") (expression_statement "iVar2 = 6;" (assignment_expression "iVar2 = 6" (identifier "iVar2") (= "=") (number_literal "6")) (; ";")) (expression_statement "*param_3 = a;" (assignment_expression "*param_3 = a" (pointer_expression "*param_3" (* "*") (identifier "param_3")) (= "=") (identifier "a")) (; ";")) (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" (identifier "s_00") (= "=") (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" (( "(") (type_descriptor "ASN1_GENERALIZEDTIME *" (type_identifier "ASN1_GENERALIZEDTIME") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }" (else "else") (compound_statement "{\n        s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n        if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }\n      }" ({ "{") (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" (identifier "s_00") (= "=") (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" (( "(") (type_descriptor "ASN1_GENERALIZEDTIME *" (type_identifier "ASN1_GENERALIZEDTIME") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (if_statement "if (iVar2 - 9U < 2) {\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }" (if "if") (parenthesized_expression "(iVar2 - 9U < 2)" (( "(") (binary_expression "iVar2 - 9U < 2" (binary_expression "iVar2 - 9U" (identifier "iVar2") (- "-") (number_literal "9U")) (< "<") (number_literal "2")) () ")")) (compound_statement "{\n          if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }\n          BIO_printf(DAT_000c458c,pcVar4);\n          goto LAB_0002f576;\n        }" ({ "{") (if_statement "if (local_24 == (char *)0x0) {\n            pcVar4 = "missing compromised time\n";\n          }\n          else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }" (if "if") (parenthesized_expression "(local_24 == (char *)0x0)" (( "(") (binary_expression "local_24 == (char *)0x0" (identifier "local_24") (== "==") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n            pcVar4 = "missing compromised time\n";\n          }" ({ "{") (expression_statement "pcVar4 = "missing compromised time\n";" (assignment_expression "pcVar4 = "missing compromised time\n"" (identifier "pcVar4") (= "=") (string_literal ""missing compromised time\n"" (" """) (string_content "missing compromised time") (escape_sequence "\n") (" """))) (; ";")) (} "}")) (else_clause "else {\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }" (else "else") (compound_statement "{\n            s_00 = ASN1_GENERALIZEDTIME_new();\n            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }\n            pcVar4 = "memory allocation failure\n";\n          }" ({ "{") (expression_statement "s_00 = ASN1_GENERALIZEDTIME_new();" (assignment_expression "s_00 = ASN1_GENERALIZEDTIME_new()" (identifier "s_00") (= "=") (call_expression "ASN1_GENERALIZEDTIME_new()" (identifier "ASN1_GENERALIZEDTIME_new") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }" (if "if") (parenthesized_expression "(s_00 != (ASN1_GENERALIZEDTIME *)0x0)" (( "(") (binary_expression "s_00 != (ASN1_GENERALIZEDTIME *)0x0" (identifier "s_00") (!= "!=") (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" (( "(") (type_descriptor "ASN1_GENERALIZEDTIME *" (type_identifier "ASN1_GENERALIZEDTIME") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);\n              if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }\n              iVar2 = (iVar2 != 9) + 1;\n              goto LAB_0002f553;\n            }" ({ "{") (expression_statement "iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);" (assignment_expression "iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24)" (identifier "iVar3") (= "=") (call_expression "ASN1_GENERALIZEDTIME_set_string(s_00,local_24)" (identifier "ASN1_GENERALIZEDTIME_set_string") (argument_list "(s_00,local_24)" (( "(") (identifier "s_00") (, ",") (identifier "local_24") () ")")))) (; ";")) (if_statement "if (iVar3 == 0) {\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }" (if "if") (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                pcVar4 = "invalid compromised time %s\n";\n                goto LAB_0002f6f3;\n              }" ({ "{") (expression_statement "pcVar4 = "invalid compromised time %s\n";" (assignment_expression "pcVar4 = "invalid compromised time %s\n"" (identifier "pcVar4") (= "=") (string_literal ""invalid compromised time %s\n"" (" """) (string_content "invalid compromised time %s") (escape_sequence "\n") (" """))) (; ";")) (goto_statement "goto LAB_0002f6f3;" (goto "goto") (statement_identifier "LAB_0002f6f3") (; ";")) (} "}"))) (expression_statement "iVar2 = (iVar2 != 9) + 1;" (assignment_expression "iVar2 = (iVar2 != 9) + 1" (identifier "iVar2") (= "=") (binary_expression "(iVar2 != 9) + 1" (parenthesized_expression "(iVar2 != 9)" (( "(") (binary_expression "iVar2 != 9" (identifier "iVar2") (!= "!=") (number_literal "9")) () ")")) (+ "+") (number_literal "1"))) (; ";")) (goto_statement "goto LAB_0002f553;" (goto "goto") (statement_identifier "LAB_0002f553") (; ";")) (} "}"))) (expression_statement "pcVar4 = "memory allocation failure\n";" (assignment_expression "pcVar4 = "memory allocation failure\n"" (identifier "pcVar4") (= "=") (string_literal ""memory allocation failure\n"" (" """) (string_content "memory allocation failure") (escape_sequence "\n") (" """))) (; ";")) (} "}")))) (expression_statement "BIO_printf(DAT_000c458c,pcVar4);" (call_expression "BIO_printf(DAT_000c458c,pcVar4)" (identifier "BIO_printf") (argument_list "(DAT_000c458c,pcVar4)" (( "(") (identifier "DAT_000c458c") (, ",") (identifier "pcVar4") () ")"))) (; ";")) (goto_statement "goto LAB_0002f576;" (goto "goto") (statement_identifier "LAB_0002f576") (; ";")) (} "}"))) (} "}")))) (} "}")))) (} "}")))) (labeled_statement "LAB_0002f553:\n  if (param_2 != (int *)0x0) {\n    *param_2 = iVar2;\n  }" (statement_identifier "LAB_0002f553") (: ":") (if_statement "if (param_2 != (int *)0x0) {\n    *param_2 = iVar2;\n  }" (if "if") (parenthesized_expression "(param_2 != (int *)0x0)" (( "(") (binary_expression "param_2 != (int *)0x0" (identifier "param_2") (!= "!=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    *param_2 = iVar2;\n  }" ({ "{") (expression_statement "*param_2 = iVar2;" (assignment_expression "*param_2 = iVar2" (pointer_expression "*param_2" (* "*") (identifier "param_2")) (= "=") (identifier "iVar2")) (; ";")) (} "}")))) (expression_statement "local_20 = (char *)0x1;" (assignment_expression "local_20 = (char *)0x1" (identifier "local_20") (= "=") (cast_expression "(char *)0x1" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1"))) (; ";")) (if_statement "if (param_4 != (undefined4 *)0x0) {\n    *param_4 = s_00;\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n  }" (if "if") (parenthesized_expression "(param_4 != (undefined4 *)0x0)" (( "(") (binary_expression "param_4 != (undefined4 *)0x0" (identifier "param_4") (!= "!=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    *param_4 = s_00;\n    s_00 = (ASN1_GENERALIZEDTIME *)0x0;\n  }" ({ "{") (expression_statement "*param_4 = s_00;" (assignment_expression "*param_4 = s_00" (pointer_expression "*param_4" (* "*") (identifier "param_4")) (= "=") (identifier "s_00")) (; ";")) (expression_statement "s_00 = (ASN1_GENERALIZEDTIME *)0x0;" (assignment_expression "s_00 = (ASN1_GENERALIZEDTIME *)0x0" (identifier "s_00") (= "=") (cast_expression "(ASN1_GENERALIZEDTIME *)0x0" (( "(") (type_descriptor "ASN1_GENERALIZEDTIME *" (type_identifier "ASN1_GENERALIZEDTIME") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}"))) (labeled_statement "LAB_0002f576:\n  CRYPTO_free(__s);" (statement_identifier "LAB_0002f576") (: ":") (expression_statement "CRYPTO_free(__s);" (call_expression "CRYPTO_free(__s)" (identifier "CRYPTO_free") (argument_list "(__s)" (( "(") (identifier "__s") () ")"))) (; ";"))) (expression_statement "ASN1_GENERALIZEDTIME_free(s_00);" (call_expression "ASN1_GENERALIZEDTIME_free(s_00)" (identifier "ASN1_GENERALIZEDTIME_free") (argument_list "(s_00)" (( "(") (identifier "s_00") () ")"))) (; ";")) (return_statement "return local_20;" (return "return") (identifier "local_20") (; ";")) (} "}")))

/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */
/* WARNING: Unknown calling convention */

int function_1(type_1 **var_6,int *var_22,type_2 **var_17,type_3 **var_23
                  ,char *str)

{
  char *var_2;
  char *var_5;
  type_4 *var_9;
  int var_11;
  int var_14;
  type_2 *var_16;
  type_3 *var_20;
  char *var_12;
  char *pcVar4;
  char *var_7;
  int local_20;
  
  pcVar4 = (char *)0x9cc;
  var_2 = var_1(str,"../apps/ca.c",0x9cc);
  if (var_2 == (char *)0x0) {
    var_5 = "memory allocation failure\n";
LAB_0002f51e:
    var_20 = (type_3 *)0x0;
    var_3((type_5 *)bio_err,var_5,pcVar4);
    local_20 = 0;
    goto LAB_0002f576;
  }
  var_5 = var_4(var_2,0x2c);
  if (var_5 == (char *)0x0) {
    var_7 = (char *)0x0;
    var_12 = (char *)0x0;
    if (var_6 != (type_1 **)0x0) goto LAB_0002f4ae;
LAB_0002f54c:
    var_20 = (type_3 *)0x0;
    var_11 = -1;
  }
  else {
    var_12 = var_5 + 1;
    *var_5 = '\0';
    var_7 = var_4(var_12,0x2c);
    if (var_7 != (char *)0x0) {
      *var_7 = '\0';
      var_7 = var_7 + 1;
    }
    if (var_6 != (type_1 **)0x0) {
LAB_0002f4ae:
      var_9 = var_8();
      *var_6 = (type_1 *)var_9;
      if (var_9 == (type_4 *)0x0) {
        var_3((type_5 *)bio_err,"memory allocation failure\n");
        local_20 = 0;
        var_20 = (type_3 *)0x0;
        goto LAB_0002f576;
      }
      var_11 = var_10(var_9,var_2);
      if (var_11 != 0) {
        if (var_12 == (char *)0x0) goto LAB_0002f54c;
        goto LAB_0002f4dc;
      }
      var_5 = "invalid revocation date %s\n";
      pcVar4 = var_2;
LAB_0002f6c6:
      var_7 = (char *)0x0;
      var_20 = (type_3 *)0x0;
      var_3((type_5 *)bio_err,var_5,pcVar4);
      local_20 = (int)var_7;
      goto LAB_0002f576;
    }
LAB_0002f4dc:
    var_5 = "unspecified";
    var_11 = 0;
    while( true ) {
      var_14 = var_13(var_12,var_5);
      if (var_14 == 0) break;
      var_11 = var_11 + 1;
      if (var_11 == 0xb) {
        var_5 = "invalid reason code %s\n";
        pcVar4 = var_12;
        goto LAB_0002f51e;
      }
      var_5 = crl_reasons[var_11];
    }
    if (var_11 == 7) {
      var_20 = (type_3 *)0x0;
      var_11 = 8;
    }
    else {
      local_20 = 0;
      if (var_11 == 8) {
        if (var_7 == (char *)0x0) {
          var_5 = "missing hold instruction\n";
          goto LAB_0002f6c6;
        }
        var_16 = var_15(var_7,0);
        if (var_16 == (type_2 *)0x0) {
          pcVar4 = "invalid object identifier %s\n";
          var_20 = (type_3 *)0x0;
LAB_0002f6f3:
          local_20 = 0;
          var_3((type_5 *)bio_err,pcVar4,var_7);
          goto LAB_0002f576;
        }
        if (var_17 == (type_2 **)0x0) {
          var_11 = 6;
          var_20 = (type_3 *)0x0;
          var_18(var_16);
        }
        else {
          var_11 = 6;
          *var_17 = (type_2 *)var_16;
          var_20 = (type_3 *)0x0;
        }
      }
      else {
        var_20 = (type_3 *)0x0;
        if (var_11 - 9U < 2) {
          if (var_7 == (char *)0x0) {
            pcVar4 = "missing compromised time\n";
          }
          else {
            var_20 = var_19();
            if (var_20 != (type_3 *)0x0) {
              var_14 = var_21(var_20,var_7);
              if (var_14 == 0) {
                pcVar4 = "invalid compromised time %s\n";
                goto LAB_0002f6f3;
              }
              var_11 = (var_11 != 9) + 1;
              goto LAB_0002f553;
            }
            pcVar4 = "memory allocation failure\n";
          }
          var_3((type_5 *)bio_err,pcVar4);
          goto LAB_0002f576;
        }
      }
    }
  }
LAB_0002f553:
  if (var_22 != (int *)0x0) {
    *var_22 = var_11;
  }
  local_20 = 1;
  if (var_23 != (type_3 **)0x0) {
    *var_23 = (type_3 *)var_20;
    var_20 = (type_3 *)0x0;
  }
LAB_0002f576:
  var_24(var_2);
  var_25(var_20);
  return local_20;
}


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

/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */

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

{
  char *__s;
  char *pcVar1;
  ASN1_UTCTIME *s;
  int iVar2;
  int iVar3;
  ASN1_OBJECT *a;
  ASN1_GENERALIZEDTIME *s_00;
  char *__s_00;
  char *pcVar4;
  char *local_24;
  undefined4 local_20;
  
  pcVar4 = (char *)0x9cc;
  __s = CRYPTO_strdup(param_5,"../apps/ca.c",0x9cc);
  if (__s == (char *)0x0) {
    pcVar1 = "memory allocation failure\n";
LAB_0002f51e:
    s_00 = (ASN1_GENERALIZEDTIME *)0x0;
    BIO_printf(DAT_000c458c,pcVar1,pcVar4);
    local_20 = (char *)0x0;
    goto LAB_0002f576;
  }
  pcVar1 = strchr(__s,0x2c);
  if (pcVar1 == (char *)0x0) {
    local_24 = (char *)0x0;
    __s_00 = (char *)0x0;
    if (param_1 != (undefined4 *)0x0) goto LAB_0002f4ae;
LAB_0002f54c:
    s_00 = (ASN1_GENERALIZEDTIME *)0x0;
    iVar2 = -1;
  }
  else {
    __s_00 = pcVar1 + 1;
    *pcVar1 = '\0';
    local_24 = strchr(__s_00,0x2c);
    if (local_24 != (char *)0x0) {
      *local_24 = '\0';
      local_24 = local_24 + 1;
    }
    if (param_1 != (undefined4 *)0x0) {
LAB_0002f4ae:
      s = ASN1_UTCTIME_new();
      *param_1 = s;
      if (s == (ASN1_UTCTIME *)0x0) {
        BIO_printf(DAT_000c458c,"memory allocation failure\n");
        local_20 = (char *)0x0;
        s_00 = (ASN1_GENERALIZEDTIME *)0x0;
        goto LAB_0002f576;
      }
      iVar2 = ASN1_UTCTIME_set_string(s,__s);
      if (iVar2 != 0) {
        if (__s_00 == (char *)0x0) goto LAB_0002f54c;
        goto LAB_0002f4dc;
      }
      pcVar1 = "invalid revocation date %s\n";
      pcVar4 = __s;
LAB_0002f6c6:
      local_24 = (char *)0x0;
      s_00 = (ASN1_GENERALIZEDTIME *)0x0;
      BIO_printf(DAT_000c458c,pcVar1,pcVar4);
      local_20 = local_24;
      goto LAB_0002f576;
    }
LAB_0002f4dc:
    pcVar1 = "unspecified";
    iVar2 = 0;
    while( true ) {
      iVar3 = strcasecmp(__s_00,pcVar1);
      if (iVar3 == 0) break;
      iVar2 = iVar2 + 1;
      if (iVar2 == 0xb) {
        pcVar1 = "invalid reason code %s\n";
        pcVar4 = __s_00;
        goto LAB_0002f51e;
      }
      pcVar1 = (&PTR_s_unspecified_000b6320)[iVar2];
    }
    if (iVar2 == 7) {
      s_00 = (ASN1_GENERALIZEDTIME *)0x0;
      iVar2 = 8;
    }
    else {
      local_20 = (char *)0x0;
      if (iVar2 == 8) {
        if (local_24 == (char *)0x0) {
          pcVar1 = "missing hold instruction\n";
          goto LAB_0002f6c6;
        }
        a = OBJ_txt2obj(local_24,0);
        if (a == (ASN1_OBJECT *)0x0) {
          pcVar4 = "invalid object identifier %s\n";
          s_00 = (ASN1_GENERALIZEDTIME *)0x0;
LAB_0002f6f3:
          local_20 = (char *)0x0;
          BIO_printf(DAT_000c458c,pcVar4,local_24);
          goto LAB_0002f576;
        }
        if (param_3 == (undefined4 *)0x0) {
          iVar2 = 6;
          s_00 = (ASN1_GENERALIZEDTIME *)0x0;
          ASN1_OBJECT_free(a);
        }
        else {
          iVar2 = 6;
          *param_3 = a;
          s_00 = (ASN1_GENERALIZEDTIME *)0x0;
        }
      }
      else {
        s_00 = (ASN1_GENERALIZEDTIME *)0x0;
        if (iVar2 - 9U < 2) {
          if (local_24 == (char *)0x0) {
            pcVar4 = "missing compromised time\n";
          }
          else {
            s_00 = ASN1_GENERALIZEDTIME_new();
            if (s_00 != (ASN1_GENERALIZEDTIME *)0x0) {
              iVar3 = ASN1_GENERALIZEDTIME_set_string(s_00,local_24);
              if (iVar3 == 0) {
                pcVar4 = "invalid compromised time %s\n";
                goto LAB_0002f6f3;
              }
              iVar2 = (iVar2 != 9) + 1;
              goto LAB_0002f553;
            }
            pcVar4 = "memory allocation failure\n";
          }
          BIO_printf(DAT_000c458c,pcVar4);
          goto LAB_0002f576;
        }
      }
    }
  }
LAB_0002f553:
  if (param_2 != (int *)0x0) {
    *param_2 = iVar2;
  }
  local_20 = (char *)0x1;
  if (param_4 != (undefined4 *)0x0) {
    *param_4 = s_00;
    s_00 = (ASN1_GENERALIZEDTIME *)0x0;
  }
LAB_0002f576:
  CRYPTO_free(__s);
  ASN1_GENERALIZEDTIME_free(s_00);
  return local_20;
}

