void FUN_00409200(int param_1)

{
  undefined4 *puVar1;
  undefined4 *__ptr;
  
  __ptr = *(undefined4 **)(param_1 + 0x18);
  while (__ptr != (undefined4 *)0x0) {
    puVar1 = (undefined4 *)*__ptr;
    free(__ptr);
    __ptr = puVar1;
  }
  (*(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)();
  (*(code *)(undefined *)0x0)();
  (*(code *)(undefined *)0x0)();
  (*(code *)(undefined *)0x0)();
  FUN_00401750();
  return;
}