void FUN_0040995c(int *param_1)
{
int iVar1;
int *piVar2;
void *__ptr;
if (param_1 != (int *)0x0) {
piVar2 = (int *)param_1[1];
iVar1 = *param_1;
__ptr = (void *)param_1[2];
*piVar2 = iVar1;
*(int **)(iVar1 + 4) = piVar2;
*param_1 = 0;
param_1[1] = 0;
if (__ptr != (void *)0x0) {
free(__ptr);
}
if (param_1[3] != 0) {
sobj_del();
}
free(param_1);
return;
}
return;
}