/* WARNING: Restarted to delay deadcode elimination for space: register */

int proc_write_formqos(undefined4 param_1,char *param_2,int param_3,int param_4)

{
  int iVar1;
  int iVar2;
  uint uVar3;
  int iVar4;
  int local_30;
  int local_2c;
  int local_28;
  uint local_24;
  int local_20;
  int local_1c;
  int local_18 [2];
  
  iVar2 = -0x16;
  if (param_3 != 0) {
    iVar2 = param_3;
    if (*param_2 == '-') {
      *(undefined4 *)(param_4 + 0x110) = 0;
    }
    else {
      iVar4 = *(int *)(param_4 + 0x110);
      if ((((((iVar4 < *(int *)(param_4 + 0x114)) &&
             (iVar1 = sscanf(param_2,"%d.%d.%d.%d:%d-%d:%d",&local_30,&local_2c,&local_28,&local_24,
                             &local_20,&local_1c,local_18), iVar1 == 7)) && (-1 < local_30)) &&   //possible issue identified - semgrep
           ((-1 < local_2c && (-1 < local_28)))) &&
          ((-1 < (int)local_24 && ((-1 < local_20 && (-1 < local_1c)))))) &&
         ((-1 < local_18[0] && (local_18[0] != 0)))) {
        uVar3 = local_28 << 8 | local_2c << 0x10 | local_24 | local_30 << 0x18;
        if (uVar3 == 0) {
          if (local_20 == 0) {
            return param_3;
          }
          if (local_1c == 0) {
            return param_3;
          }
          iVar1 = *(int *)(param_4 + 0x110);
        }
        else {
          iVar1 = *(int *)(param_4 + 0x110);
        }
        *(char *)(param_4 + iVar4) = (char)local_18[0];
        *(uint *)(param_4 + (iVar4 + 8) * 4) = uVar3;
        *(short *)(param_4 + (iVar4 + 0x68) * 2 + 4) = (short)local_20;
        *(short *)(param_4 + (iVar4 + 0x4c) * 2) = (short)local_1c;
        *(int *)(param_4 + 0x110) = iVar1 + 1;
      }
    }
  }
  return iVar2;
}