void FUN_004055f0(int *param_1)

{
  undefined4 uVar1;
  int iVar2;
  
  uVar1 = FUN_00404404();
  dprintf(7,"remove_binding","remove a binding %s",uVar1);
  if (param_1[0xb] != 0) {
    dhcp6_remove_timer(param_1 + 0xb);
  }
  iVar2 = *param_1;
  if (iVar2 != 0) {
    *(int *)(iVar2 + 4) = param_1[1];
    *(int *)param_1[1] = iVar2;
    FUN_00404c30(param_1);
    return;
  }
  DAT_00439604 = (undefined4 *)param_1[1];
  *DAT_00439604 = 0;
  FUN_00404c30(param_1);
  return;
}