void FUN_00401298(int *param_1)

{
  int iVar1;
  int iVar2;
  
  if (param_1 == (int *)0x0) {
    FUN_0047f5a0(&DAT_0048afe0,"slist.c",0x167,"ListDelete");
  }
  iVar2 = *param_1;
  while (iVar2 != 0) {
    iVar1 = *(int *)(iVar2 + 4);
    FUN_004859b0(iVar2);
    *(short *)(param_1 + 2) = (short)param_1[2] + -1;
    iVar2 = iVar1;
  }
  FUN_004859b0(param_1);
  return;
}