void MeasureReqDelete(int param_1,undefined1 param_2)

{
  undefined4 *__s;
  undefined4 *puVar1;
  undefined4 *puVar2;
  undefined4 *puVar3;
  char *pcVar4;
  uint uVar5;
  
  pcVar4 = *(char **)(param_1 + 0x16e18);
  if (pcVar4 == (char *)0x0) {
    if (RTDebugLevel != 0) {
      printk("%s: pMeasureReqTab doesn\'t exist.\n","MeasureReqDelete");
      return;
    }
  }
  else if (*pcVar4 == '\0') {
    if (RTDebugLevel != 0) {
      printk("pMeasureReqTab empty.\n");
      return;
    }
  }
  else {
    __s = (undefined4 *)MeasureReqLookUp(param_1,param_2);
    if (__s != (undefined4 *)0x0) {
      uVar5 = *(byte *)((int)__s + 9) & 0x1f;
      puVar3 = *(undefined4 **)(pcVar4 + uVar5 * 4 + 4);
      local_bh_disable();
      puVar2 = (undefined4 *)0x0;
      do {
        if (puVar3 == __s) {
          if (puVar2 == (undefined4 *)0x0) {
            *(undefined4 *)(pcVar4 + uVar5 * 4 + 4) = *__s;
          }
          else {
            *puVar2 = *__s;
          }
          break;
        }
        puVar1 = (undefined4 *)*puVar3;
        puVar2 = puVar3;
        puVar3 = puVar1;
      } while (puVar1 != (undefined4 *)0x0);
      memset(__s,0,0x10)   //possible issue identified - semgrep
      *pcVar4 = *pcVar4 + -1;
      local_bh_enable();
      return;
    }
  }
  return;
}