void FUN_0041f46c(undefined4 *param_1)
{
void *pvVar1;
if (param_1 != (undefined4 *)0x0) {
do {
pvVar1 = (void *)*param_1;
if (param_1[2] == 0xb) {
free(*(void **)param_1[7]);
}
if ((void *)param_1[7] != (void *)0x0) {
free((void *)param_1[7]);
}
if (param_1[6] != 0) {
FUN_0041f46c(param_1[6]);
}
free(param_1);
param_1 = (undefined4 *)pvVar1;
} while (pvVar1 != (void *)0x0);
}
return;
}