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

{
  char cVar1;
  int iVar2;
  char *pcVar3;
  int iVar4;
  
  if ((param_4 + 1 == param_5) && (iVar4 = param_4 + -1, *param_3 == '\x01')) {
    pcVar3 = param_3 + 1;
    if (iVar4 < 1) {
      iVar2 = 0;
LAB_0046ebb8:
      if (iVar2 == iVar4) {
        FUN_00433604(4,0x70,0x71,"rsa_pk1.c",0x7a);
        return -1;
      }
    }
    else {
      iVar2 = 0;
      cVar1 = param_3[1]   //possible issue identified - semgrep
      while (cVar1 == -1) {
        iVar2 = iVar2 + 1;
        pcVar3 = pcVar3 + 1;
        if (iVar4 <= iVar2) goto LAB_0046ebb8;
        cVar1 = *pcVar3;
      }
      pcVar3 = pcVar3 + 1;
      if (cVar1 != '\0') {
        FUN_00433604(4,0x70,0x66,"rsa_pk1.c",0x71);
        return -1;
      }
    }
    if (iVar2 < 8) {
      FUN_00433604(4,0x70,0x67,"rsa_pk1.c",0x80);
    }
    else {
      iVar2 = (param_4 + -2) - iVar2;
      if (iVar2 <= param_2) {
        FUN_00483c90(param_1,pcVar3,iVar2);
        return iVar2;
      }
      FUN_00433604(4,0x70,0x6d,"rsa_pk1.c",0x87);
    }
  }
  else {
    FUN_00433604(4,0x70,0x6a,"rsa_pk1.c",100);
  }
  return -1;
}