############ FUN_ 18052e260

undefined8 FUN_18052e260(longlong param_1,int param_2)

{
  undefined8 uVar1;
  int iVar2;
  undefined4 uVar3;
  int iVar4;
  int iVar5;
  uint uVar6;
  undefined8 uVar7;
  longlong lVar8;
  longlong *plVar9;
  undefined4 uVar10;
  
  iVar5 = *(int *)(param_1 + 100) / 2 + 1;
  if (*(char *)(param_1 + 0x240464) != '\0') {
    *(undefined1 *)(param_1 + 0x240464) = 0;
    FUN_18052fbd0(param_1 + 0x3d8);
  }
  uVar1 = *(undefined8 *)(param_1 + 0x540788);
  iVar4 = *(int *)(param_1 + 0x2404d8);
  if (iVar4 < 1) {
    if (*(char *)(param_1 + 0x5408ad) != '\0') {
      *(undefined1 *)(param_1 + 0x5408ad) = 0;
      *(int *)(param_1 + 0x2404d8) = iVar5;
    }
    return 0;
  }
  iVar2 = iVar5;
  if (iVar4 < iVar5) {
    iVar2 = iVar4;
  }
  *(int *)(param_1 + 0x2404d8) = iVar2;
  if (iVar2 < param_2) {
    param_2 = iVar2;
  }
  uVar6 = 0;
  if (0 < *(int *)(param_1 + 0x2404d0)) {
    plVar9 = (longlong *)(param_1 + 0x5407e8);
    lVar8 = 0;
    do {
      if (uVar6 < *(uint *)(param_1 + 0x444)) {
        uVar7 = *(undefined8 *)(lVar8 + *(longlong *)(param_1 + 0x438));
      }
      else {
        uVar7 = 0;
      }
      FUN_180536300(param_1 + 0x3d8,*plVar9 + (longlong)(iVar5 - iVar2) * 4,
                    *(longlong *)(param_1 + 0x540758) + (longlong)(iVar5 - iVar2) * 4,uVar7,param_2)
      ;
      uVar6 = uVar6 + 1;
      plVar9 = plVar9 + 2;
      lVar8 = lVar8 + 8;
    } while ((int)uVar6 < *(int *)(param_1 + 0x2404d0));
  }
  *(int *)(param_1 + 0x2404d8) = *(int *)(param_1 + 0x2404d8) - param_2;
  if ((*(int *)(param_1 + 0x2404d8) < 1) && (0 < *(int *)(param_1 + 0x30))) {
    expf(DAT_1824c4208);
    uVar3 = DAT_1824c3ea4;
    uVar10 = (undefined4)DAT_1824c4140;
    iVar4 = __std_type_info_compare(0x182650db8,0x182650db8);
    if (iVar4 != 0) {
                    /* WARNING: Subroutine does not return */
      thunk_FUN_181ba94b0(uVar10,uVar1,iVar5);
    }
                    /* WARNING: Subroutine does not return */
    thunk_FUN_181ba94b0(uVar3);
  }
  return 1;
}



