void FUN_00413d74(undefined4 *param_1)

{
  void *pvVar1;
  
  if (param_1 != (undefined4 *)0x0) {
    do {
      pvVar1 = (void *)*param_1;
      free((void *)param_1[1]);
      dhcp6_clear_list(param_1 + 6);
      FUN_00413c1c(param_1 + 8);
      if ((void *)param_1[5] != (void *)0x0) {
        free((void *)param_1[5]);
      }
      if ((void *)param_1[0xb] != (void *)0x0) {
        free((void *)param_1[0xb]);
      }
      free(param_1);
      param_1 = (undefined4 *)pvVar1;
    } while (pvVar1 != (void *)0x0);
  }
  return;
}