void FUN_004185c4(undefined4 *param_1)
{
void *__ptr;
void *pvVar1;
void *pvVar2;
if (param_1 != (undefined4 *)0x0) {
if ((void *)*param_1 != (void *)0x0) {
free((void *)*param_1);
}
ixml_membuf_destroy(param_1 + 7);
ixml_membuf_destroy(param_1 + 3);
__ptr = (void *)param_1[0xc];
while (__ptr != (void *)0x0) {
FUN_004184ac(__ptr);
pvVar1 = *(void **)((int)__ptr + 0xc);
while (pvVar1 != (void *)0x0) {
pvVar2 = *(void **)((int)pvVar1 + 8);
FUN_00418550(pvVar1);
free(pvVar1);
pvVar1 = pvVar2;
}
pvVar1 = *(void **)((int)__ptr + 0x10);
free(__ptr);
__ptr = pvVar1;
}
(*(code *)(undefined *)0x0)(param_1);
(*(code *)(undefined *)0x0)();
(*(code *)(undefined *)0x0)();
(*(code *)(undefined *)0x0)();
(*(code *)(undefined *)0x0)();
(*(code *)(undefined *)0x0)();
(*(code *)(undefined *)0x0)();
(*(code *)(undefined *)0x0)();
(*(code *)(undefined *)0x0)();
(*(code *)(undefined *)0x0)();
FUN_004025d0();
return;
}
return;
}