void FUN_00409200(void)
{
undefined *__ptr;
int *piVar1;
int iVar2;
void *__ptr_00;
while( true ) {
__ptr = PTR_LOOP_00430430;
if ((undefined **)PTR_LOOP_00430430 == &PTR_LOOP_00430430) break;
piVar1 = *(int **)(PTR_LOOP_00430430 + 4);
iVar2 = *(int *)PTR_LOOP_00430430;
__ptr_00 = *(void **)(PTR_LOOP_00430430 + 8);
*piVar1 = iVar2;
*(int **)(iVar2 + 4) = piVar1;
*(undefined4 *)__ptr = 0;
*(undefined4 *)(__ptr + 4) = 0;
if (__ptr_00 != (void *)0x0) {
free(__ptr_00);
}
if (*(void **)(__ptr + 0xc) != (void *)0x0) {
free(*(void **)(__ptr + 0xc));
}
free(__ptr);
}
return;
}