Загрузка данных
undefined8 FUN_ffffffffc0b12000(uint *param_1)
{
uint uVar1;
uint uVar2;
long lVar3;
undefined8 uVar4;
uint uVar5;
long extraout_RDX;
uint *puVar6;
uint uVar7;
long in_GS_OFFSET;
uint auStack_50 [8];
uint auStack_30 [8];
long lStack_10;
lStack_10 = *(long *)(in_GS_OFFSET + 0x28);
lVar3 = 0;
do {
*(undefined4 *)((long)auStack_30 + lVar3) = *(undefined4 *)((long)param_1 + lVar3 + 0x20);
lVar3 = lVar3 + 4;
} while (lVar3 != 0x20);
uVar5 = param_1[8] + param_1[0x10] + 0x4d34d34d;
param_1[8] = uVar5;
uVar2 = ~-(uint)(uVar5 < auStack_30[0]) + 0xd34d34d4 + param_1[9];
param_1[9] = uVar2;
uVar2 = ~-(uint)(uVar2 < auStack_30[1]) + 0x34d34d35 + param_1[10];
param_1[10] = uVar2;
uVar2 = ~-(uint)(uVar2 < auStack_30[2]) + 0x4d34d34e + param_1[0xb];
param_1[0xb] = uVar2;
uVar2 = ~-(uint)(uVar2 < auStack_30[3]) + 0xd34d34d4 + param_1[0xc];
param_1[0xc] = uVar2;
uVar2 = ~-(uint)(uVar2 < auStack_30[4]) + 0x34d34d35 + param_1[0xd];
param_1[0xd] = uVar2;
uVar2 = ~-(uint)(uVar2 < auStack_30[5]) + 0x4d34d34e + param_1[0xe];
param_1[0xe] = uVar2;
uVar2 = ~-(uint)(uVar2 < auStack_30[6]) + 0xd34d34d4 + param_1[0xf];
param_1[0xf] = uVar2;
param_1[0x10] = (uint)(uVar2 < auStack_30[7]);
lVar3 = 0;
while( true ) {
uVar5 = uVar5 + *(int *)((long)param_1 + lVar3);
uVar2 = uVar5 & 0xffff;
uVar7 = uVar5 >> 0x10;
*(uint *)((long)auStack_50 + lVar3) =
(uVar2 * uVar7 + (uVar2 * uVar2 >> 0x11) >> 0xf) + uVar7 * uVar7 ^ uVar5 * uVar5;
if (lVar3 + 4 == 0x20) break;
uVar5 = *(uint *)((long)param_1 + lVar3 + 0x24);
lVar3 = lVar3 + 4;
}
*param_1 = (auStack_50[6] >> 0x10 | auStack_50[6] << 0x10) +
(auStack_50[7] >> 0x10 | auStack_50[7] << 0x10) + auStack_50[0];
param_1[1] = (auStack_50[0] >> 0x18 | auStack_50[0] << 8) + auStack_50[1] + auStack_50[7];
param_1[2] = (auStack_50[0] >> 0x10 | auStack_50[0] << 0x10) +
(auStack_50[1] >> 0x10 | auStack_50[1] << 0x10) + auStack_50[2];
param_1[3] = auStack_50[1] + auStack_50[3] + (auStack_50[2] >> 0x18 | auStack_50[2] << 8);
param_1[4] = (auStack_50[2] >> 0x10 | auStack_50[2] << 0x10) +
(auStack_50[3] >> 0x10 | auStack_50[3] << 0x10) + auStack_50[4];
param_1[5] = auStack_50[3] + auStack_50[5] + (auStack_50[4] >> 0x18 | auStack_50[4] << 8);
uVar5 = (auStack_50[4] >> 0x10 | auStack_50[4] << 0x10) +
(auStack_50[5] >> 0x10 | auStack_50[5] << 0x10) + auStack_50[6];
puVar6 = (uint *)(ulong)uVar5;
param_1[6] = uVar5;
param_1[7] = (auStack_50[6] >> 0x18 | auStack_50[6] << 8) + auStack_50[7] + auStack_50[5];
if (lStack_10 == *(long *)(in_GS_OFFSET + 0x28)) {
return 0;
}
func_0xffffffffa7f9a5d0();
uVar4 = 0xffffffff;
if (extraout_RDX == 0x10) {
uVar5 = puVar6[3];
uVar2 = puVar6[2];
uVar7 = *puVar6;
uVar1 = puVar6[1];
param_1[0x10] = 0;
param_1[6] = uVar5;
*param_1 = uVar7;
param_1[2] = uVar1;
param_1[4] = uVar2;
param_1[1] = uVar2 >> 0x10 | uVar5 << 0x10;
param_1[3] = uVar5 >> 0x10 | uVar7 << 0x10;
param_1[5] = uVar7 >> 0x10 | uVar1 << 0x10;
param_1[7] = uVar1 >> 0x10 | uVar2 << 0x10;
param_1[8] = uVar2 >> 0x10 | uVar2 << 0x10;
param_1[10] = uVar5 >> 0x10 | uVar5 << 0x10;
param_1[0xc] = uVar7 >> 0x10 | uVar7 << 0x10;
param_1[0xe] = uVar1 >> 0x10 | uVar1 << 0x10;
param_1[9] = uVar1 & 0xffff | uVar7 & 0xffff0000;
param_1[0xb] = uVar2 & 0xffff | uVar1 & 0xffff0000;
param_1[0xd] = uVar5 & 0xffff | uVar2 & 0xffff0000;
param_1[0xf] = uVar7 & 0xffff | uVar5 & 0xffff0000;
FUN_ffffffffc0b12000(param_1);
FUN_ffffffffc0b12000(param_1);
FUN_ffffffffc0b12000(param_1);
FUN_ffffffffc0b12000(param_1);
lVar3 = 0;
do {
param_1[lVar3 + 8] = param_1[lVar3 + 8] ^ param_1[(int)lVar3 + 4U & 7];
lVar3 = lVar3 + 1;
} while (lVar3 != 8);
uVar4 = 0;
}
return uVar4;
}