############ FUN_ 18000c080 size=507 ############

/* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */

undefined8 FUN_18000bfc0(longlong param_1,longlong param_2,longlong param_3,int param_4)

{
  undefined1 *puVar1;
  undefined1 *puVar2;
  ulonglong uVar3;
  undefined1 auStack_498 [32];
  undefined1 local_470 [512];
  undefined1 auStack_270 [576];
  ulonglong local_30;
  
  local_30 = DAT_182615970 ^ (ulonglong)auStack_498;
  if (((param_3 == 0) || (param_1 == 0)) || (param_2 == 0)) {
    if ((local_30 ^ (ulonglong)auStack_498) == DAT_182615970) {
      return 0xfffffff8;
    }
  }
  else if (param_4 < 1) {
    if ((local_30 ^ (ulonglong)auStack_498) == DAT_182615970) {
      return 0xfffffffa;
    }
  }
  else {
    uVar3 = -((ulonglong)local_470 & 0x3f) & 0x3f;
    puVar1 = local_470 + uVar3;
    puVar2 = auStack_270 + uVar3;
    for (; 0x40 < param_4; param_4 = param_4 + -0x40) {
      thunk_FUN_18014ec20(param_2,puVar1,puVar2,0x40);
      FUN_180008440(param_1,puVar1,0x40);
      FUN_180008440(param_1,puVar2,0x40);
      FUN_1800437c0(puVar2,puVar1,param_3,0x40);
      param_1 = param_1 + 0x200;
      param_2 = param_2 + 0x200;
      param_3 = param_3 + 0x400;
    }
    thunk_FUN_18014ec20(param_2,puVar1,puVar2,param_4);
    FUN_180008440(param_1,puVar1,param_4);
    FUN_180008440(param_1,puVar2,param_4);
    FUN_1800437c0(puVar2,puVar1,param_3,param_4);
    if ((local_30 ^ (ulonglong)auStack_498) == DAT_182615970) {
      return 0;
    }
  }
}



############ FUN_ 180140ca7 size=9 ############

void thunk_FUN_1801560a0(void)

{
  (*(code *)PTR_FUN_1826178a0)();
  return;
}



