void FUN_00415c6c(int param_1)

{
  int iVar1;
  undefined4 *puVar2;
  int iVar3;
  
                    /* try { // try from 00415c98 to 00415dcf has its CatchHandler @ 00415e3c */
  iVar1 = FUN_00401798(*(undefined4 *)(param_1 + 0x2c));
  if (iVar1 != 0) goto LAB_00415cf4;
  puVar2 = (undefined4 *)FUN_0047082c(4);
  *puVar2 = 0x1002;
  iVar3 = FUN_00472734(puVar2,&PTR_PTR_FUN_004af1e0,0);
  do {
    FUN_00471d20(iVar3);
LAB_00415cf4:
    iVar3 = FUN_00400dd8(iVar1);
  } while (iVar3 != 0);
  FUN_00401018(iVar1);
  iVar3 = FUN_00401798(*(undefined4 *)(param_1 + 0x30));
  if (iVar3 != 0) goto LAB_00415da4;
  puVar2 = (undefined4 *)FUN_0047082c(4);
  *puVar2 = 0x1002;
  FUN_00472734(puVar2,&PTR_PTR_FUN_004af1e0,0);
  do {
    FUN_00414e40(iVar1);
    FUN_00471d20(iVar1);
LAB_00415da4:
    iVar1 = FUN_00400dd8(iVar3);
  } while (iVar1 != 0);
  FUN_00401018(iVar3);
  FUN_00407678(param_1 + 0x58);
  FUN_00414e40(param_1 + 0x41);
  FUN_00407678(param_1 + 0x34);
  FUN_00407678(param_1 + 9);
  return;
}