/* WARNING: Heritage AFTER dead removal. Example location: r0x0041ce90 : 0x00404d48 */
/* WARNING: Restarted to delay deadcode elimination for space: ram */
void FUN_00404c20(undefined4 *param_1,undefined4 param_2)
{
double dVar1;
undefined4 uVar2;
undefined4 uVar3;
double dVar4;
double dVar5;
undefined4 uVar6;
if (debug != 0) {
printf("loop %f %f\n",param_2,*param_1,param_1[1],param_1[2],param_1[3]);
}
dVar5 = (double)FUN_00404b30(*param_1,param_1[2],param_1[1]);
dVar4 = (double)FUN_00404b30(*param_1,param_1[2],param_1[3]);
uVar6 = (undefined4)((ulonglong)dVar5 >> 0x20);
uVar2 = SUB84(dVar5,0);
uVar3 = uVar6;
if ((double)CONCAT44(DAT_0041d9bc,DAT_0041d9b8) <= dVar5) {
uVar2 = DAT_0041d9b8;
uVar3 = DAT_0041d9bc;
}
DAT_0041d9bc = uVar3;
DAT_0041d9b8 = uVar2;
dVar1 = dVar4;
if ((double)CONCAT44(DAT_0041d9c4,DAT_0041d9c0) <= dVar4) {
dVar1 = (double)CONCAT44(DAT_0041d9c4,DAT_0041d9c0);
}
DAT_0041d9c4 = (undefined4)((ulonglong)dVar1 >> 0x20);
DAT_0041d9c0 = SUB84(dVar1,0);
if (debug != 0) {
printf("constraint left: %f %f \n",param_2,SUB84(dVar5,0),uVar6,DAT_0041d9b8,DAT_0041d9bc);
dVar1 = (double)CONCAT44(DAT_0041d9c4,DAT_0041d9c0);
}
DAT_0041d9c4 = (undefined4)((ulonglong)dVar1 >> 0x20);
DAT_0041d9c0 = SUB84(dVar1,0);
if (debug != 0) {
printf("constraint right: %f %f \n",param_2,SUB84(dVar4,0),(int)((ulonglong)dVar4 >> 0x20),
DAT_0041d9c0,DAT_0041d9c4);
dVar1 = (double)CONCAT44(DAT_0041d9c4,DAT_0041d9c0);
}
DAT_0041d9c4 = (undefined4)((ulonglong)dVar1 >> 0x20);
DAT_0041d9c0 = SUB84(dVar1,0);
return;
}