Files
soothe2-re/giant.txt
T

1234 lines
59 KiB
Plaintext

############ FUN_ 18002f980 size=14481 ############
/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */
ulonglong *
FUN_18002f980(longlong param_1,int param_2,longlong param_3,undefined4 param_4,int param_5,
undefined8 param_6,undefined8 param_7)
{
int iVar1;
int iVar2;
undefined4 uVar3;
int iVar4;
char cVar5;
char cVar6;
int iVar7;
int iVar8;
int iVar9;
ulonglong *puVar10;
int iVar11;
int iVar12;
int iVar13;
uint uVar14;
int iVar15;
int iVar16;
int iVar17;
int iVar18;
int iVar19;
int iVar20;
int iVar21;
int iVar22;
int iVar23;
uint uVar24;
int iVar25;
uint uVar26;
int iVar27;
int iVar28;
int iVar29;
int iVar30;
int iVar31;
int iVar32;
int iVar33;
int iVar34;
int iVar35;
int iVar36;
int iVar37;
int iVar38;
int iVar39;
int iVar40;
int iVar41;
uint uVar42;
int iVar43;
int iVar44;
int iVar45;
int iVar46;
int iVar47;
int iVar48;
int iVar49;
int iVar50;
int iVar51;
uint uVar52;
int iVar53;
int iVar54;
int iVar55;
int iVar56;
int iVar57;
int iVar58;
int iVar59;
int iVar60;
int iVar61;
ulonglong uVar62;
ulonglong uVar63;
ulonglong *local_900;
iVar2 = *(int *)(&DAT_181c5e0fc + (longlong)param_2 * 4);
iVar19 = param_2 - iVar2;
if (iVar19 < 0x12) {
*(undefined8 *)(param_1 + 0x38) = param_6;
puVar10 = (ulonglong *)FUN_18002e360(iVar19,param_3);
iVar25 = 1 << ((byte)iVar19 & 0x1f);
*(uint *)(param_1 + 0x1c) = iVar25 * 0x10 + 0x3fU & 0xffffffc0;
}
else {
puVar10 = (ulonglong *)FUN_18002f980(param_1,iVar19,param_3,param_4,param_5 + 1,param_6,param_7)
;
iVar25 = 1 << ((byte)iVar19 & 0x1f);
}
uVar24 = 0;
uVar3 = *(undefined4 *)(&DAT_181c5e15c + (longlong)param_2 * 4);
*(ulonglong **)(param_1 + 0x78 + (longlong)param_5 * 8) = puVar10;
if (0 < iVar25) {
iVar4 = iVar25 * 2;
iVar33 = 1 << ((byte)uVar3 - (char)iVar2 & 0x1f);
uVar42 = (int)(iVar33 + 3 + ((uint)(iVar33 + 3 >> 1) >> 0x1e)) >> 2;
iVar43 = 0;
iVar15 = 0;
iVar11 = 0;
local_900 = puVar10;
do {
uVar26 = 1;
iVar16 = -iVar19;
iVar44 = iVar19;
if (-iVar2 < 0) {
do {
iVar12 = iVar44 + 2;
cVar5 = (char)(iVar16 + -2);
cVar6 = (char)param_4;
if (iVar12 == param_2) {
iVar44 = 1 << ((byte)iVar12 & 0x1f);
iVar32 = 1 << (cVar5 + cVar6 & 0x1fU);
if (0 < (int)uVar26 >> 1) {
iVar56 = (int)(((uint)(iVar44 >> 1) >> 0x1e) + iVar44) >> 2;
iVar31 = iVar32 * iVar56;
iVar50 = iVar32 * iVar15;
iVar29 = iVar32 * iVar11;
iVar22 = iVar44 / 2;
iVar57 = iVar32 * iVar22;
iVar8 = iVar31 - iVar50;
iVar13 = iVar32 + iVar50;
iVar21 = iVar50 - iVar57;
iVar7 = iVar32 * 4;
iVar37 = (int)(((uint)(iVar44 * 3 >> 1) >> 0x1e) + iVar44 * 3) >> 2;
iVar23 = iVar32 * iVar37;
iVar20 = iVar50 - iVar23;
iVar45 = iVar29 - iVar23;
iVar34 = iVar31 - iVar29;
iVar35 = iVar29 - iVar57;
iVar1 = iVar29 + iVar32 * 4;
iVar27 = iVar44 * iVar32 - iVar29;
iVar30 = iVar44 * iVar32 - iVar50;
iVar44 = iVar29 + iVar32 * 2;
iVar17 = iVar50 + iVar32 * 2;
iVar18 = iVar32 * 3;
iVar39 = iVar18 + iVar50;
iVar47 = iVar29 + iVar32 * 6;
iVar28 = iVar32 * 8;
uVar52 = 0;
do {
uVar14 = 0;
if (0 < iVar33) {
iVar58 = iVar32 * iVar4 * uVar52;
iVar38 = iVar32 * iVar25 * uVar52;
do {
iVar9 = iVar25 * uVar52 + iVar15 + uVar14 * 4;
if (iVar56 < iVar9) {
iVar40 = iVar7 * uVar14;
if (iVar22 < iVar9) {
if (iVar37 < iVar9) {
*local_900 = *(ulonglong *)
(param_3 + (longlong)(iVar20 + iVar38 + iVar40) * 8);
uVar63 = *(ulonglong *)
(param_3 + (longlong)((iVar30 - iVar38) - iVar40) * 8);
}
else {
*local_900 = *(ulonglong *)
(param_3 + (longlong)-(iVar20 + iVar38 + iVar40) * 8) ^
_DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 + (longlong)(iVar21 + iVar38 + iVar40) * 8);
}
}
else {
*local_900 = *(ulonglong *)
(param_3 + (longlong)(iVar40 + (iVar38 - iVar8)) * 8) ^
_DAT_181c5e1e0;
uVar63 = *(ulonglong *)(param_3 + (longlong)-(iVar21 + iVar38 + iVar40) * 8)
^ _DAT_181c5e1e0;
}
}
else {
*local_900 = *(ulonglong *)
(param_3 +
(longlong)(int)-((iVar38 - iVar8) + iVar7 * uVar14) * 8);
uVar63 = *(ulonglong *)
(param_3 + (longlong)(int)(iVar50 + iVar38 + iVar7 * uVar14) * 8) ^
_DAT_181c5e1e0;
}
iVar40 = iVar7 * uVar14;
local_900[4] = uVar63;
iVar51 = iVar9 + 1;
if (iVar56 < iVar51) {
if (iVar22 < iVar51) {
if (iVar37 < iVar51) {
local_900[1] = *(ulonglong *)
(param_3 +
(longlong)((iVar13 - iVar23) + iVar38 + iVar40) * 8);
uVar63 = *(ulonglong *)
(param_3 + (longlong)(((iVar30 - iVar32) - iVar38) - iVar40) * 8
);
}
else {
local_900[1] = *(ulonglong *)
(param_3 +
(longlong)-(iVar32 + iVar20 + iVar38 + iVar40) * 8) ^
_DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 + (longlong)((iVar13 - iVar57) + iVar38 + iVar40) * 8);
}
}
else {
local_900[1] = *(ulonglong *)
(param_3 +
(longlong)((iVar13 - iVar31) + iVar38 + iVar40) * 8) ^
_DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 + (longlong)-(iVar32 + iVar21 + iVar38 + iVar40) * 8) ^
_DAT_181c5e1e0;
}
}
else {
local_900[1] = *(ulonglong *)
(param_3 +
(longlong)(((iVar8 - iVar32) - iVar38) - iVar40) * 8);
uVar63 = *(ulonglong *)(param_3 + (longlong)(iVar13 + iVar38 + iVar40) * 8) ^
_DAT_181c5e1e0;
}
local_900[5] = uVar63;
iVar51 = iVar9 + 2;
if (iVar56 < iVar51) {
if (iVar22 < iVar51) {
if (iVar37 < iVar51) {
local_900[2] = *(ulonglong *)
(param_3 +
(longlong)((iVar17 - iVar23) + iVar38 + iVar40) * 8);
uVar63 = *(ulonglong *)
(param_3 +
(longlong)(((iVar30 + iVar32 * -2) - iVar38) - iVar40) * 8);
}
else {
local_900[2] = *(ulonglong *)
(param_3 +
(longlong)-(iVar20 + iVar32 * 2 + iVar38 + iVar40) * 8) ^
_DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 + (longlong)((iVar17 - iVar57) + iVar38 + iVar40) * 8);
}
}
else {
local_900[2] = *(ulonglong *)
(param_3 +
(longlong)((iVar17 - iVar31) + iVar38 + iVar40) * 8) ^
_DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 + (longlong)-(iVar21 + iVar32 * 2 + iVar38 + iVar40) * 8)
^ _DAT_181c5e1e0;
}
}
else {
local_900[2] = *(ulonglong *)
(param_3 +
(longlong)(((iVar32 * -2 + iVar8) - iVar38) - iVar40) * 8);
uVar63 = *(ulonglong *)(param_3 + (longlong)(iVar17 + iVar38 + iVar40) * 8) ^
_DAT_181c5e1e0;
}
iVar9 = iVar9 + 3;
local_900[6] = uVar63;
if (iVar56 < iVar9) {
if (iVar22 < iVar9) {
if (iVar37 < iVar9) {
local_900[3] = *(ulonglong *)
(param_3 +
(longlong)(iVar40 + iVar38 + (iVar39 - iVar23)) * 8);
uVar63 = *(ulonglong *)
(param_3 +
(longlong)(((iVar30 + iVar32 * -3) - iVar38) - iVar40) * 8);
}
else {
local_900[3] = *(ulonglong *)
(param_3 +
(longlong)-(iVar40 + iVar20 + iVar18 + iVar38) * 8) ^
_DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 + (longlong)(iVar40 + (iVar39 - iVar57) + iVar38) * 8);
}
}
else {
local_900[3] = *(ulonglong *)
(param_3 +
(longlong)(iVar40 + (iVar39 - iVar31) + iVar38) * 8) ^
_DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 + (longlong)-(iVar40 + iVar21 + iVar18 + iVar38) * 8) ^
_DAT_181c5e1e0;
}
}
else {
local_900[3] = *(ulonglong *)
(param_3 +
(longlong)(((iVar8 + iVar32 * -3) - iVar38) - iVar40) * 8);
uVar63 = *(ulonglong *)(param_3 + (longlong)(iVar40 + iVar39 + iVar38) * 8) ^
_DAT_181c5e1e0;
}
local_900[7] = uVar63;
iVar9 = iVar4 * uVar52 + iVar11 + uVar14 * 8;
if (iVar56 < iVar9) {
iVar40 = iVar28 * uVar14;
if (iVar22 < iVar9) {
if (iVar37 < iVar9) {
local_900[8] = *(ulonglong *)
(param_3 + (longlong)(iVar45 + iVar58 + iVar40) * 8);
uVar63 = *(ulonglong *)
(param_3 + (longlong)((iVar27 - iVar58) - iVar40) * 8);
}
else {
local_900[8] = *(ulonglong *)
(param_3 + (longlong)-(iVar45 + iVar58 + iVar40) * 8) ^
_DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 + (longlong)(iVar35 + iVar58 + iVar40) * 8);
}
}
else {
local_900[8] = *(ulonglong *)
(param_3 + (longlong)(iVar40 + (iVar58 - iVar34)) * 8) ^
_DAT_181c5e1e0;
uVar63 = *(ulonglong *)(param_3 + (longlong)-(iVar35 + iVar58 + iVar40) * 8)
^ _DAT_181c5e1e0;
}
}
else {
local_900[8] = *(ulonglong *)
(param_3 +
(longlong)(int)-((iVar58 - iVar34) + iVar28 * uVar14) * 8);
uVar63 = *(ulonglong *)
(param_3 + (longlong)(int)(iVar29 + iVar58 + iVar28 * uVar14) * 8) ^
_DAT_181c5e1e0;
}
iVar40 = iVar28 * uVar14;
local_900[0xc] = uVar63;
iVar51 = iVar9 + 2;
if (iVar56 < iVar51) {
if (iVar22 < iVar51) {
if (iVar37 < iVar51) {
local_900[9] = *(ulonglong *)
(param_3 +
(longlong)((iVar44 - iVar23) + iVar58 + iVar40) * 8);
uVar63 = *(ulonglong *)
(param_3 +
(longlong)(((iVar27 + iVar32 * -2) - iVar58) - iVar40) * 8);
}
else {
local_900[9] = *(ulonglong *)
(param_3 +
(longlong)-(iVar45 + iVar32 * 2 + iVar58 + iVar40) * 8) ^
_DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 + (longlong)((iVar44 - iVar57) + iVar58 + iVar40) * 8);
}
}
else {
local_900[9] = *(ulonglong *)
(param_3 +
(longlong)((iVar44 - iVar31) + iVar58 + iVar40) * 8) ^
_DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 + (longlong)-(iVar35 + iVar32 * 2 + iVar58 + iVar40) * 8)
^ _DAT_181c5e1e0;
}
}
else {
local_900[9] = *(ulonglong *)
(param_3 +
(longlong)(((iVar34 + iVar32 * -2) - iVar58) - iVar40) * 8);
uVar63 = *(ulonglong *)(param_3 + (longlong)(iVar40 + iVar44 + iVar58) * 8) ^
_DAT_181c5e1e0;
}
local_900[0xd] = uVar63;
iVar51 = iVar9 + 4;
if (iVar56 < iVar51) {
if (iVar22 < iVar51) {
if (iVar37 < iVar51) {
local_900[10] =
*(ulonglong *)
(param_3 + (longlong)((iVar1 - iVar23) + iVar58 + iVar40) * 8);
uVar63 = *(ulonglong *)
(param_3 +
(longlong)(((iVar27 + iVar32 * -4) - iVar58) - iVar40) * 8);
}
else {
local_900[10] =
*(ulonglong *)
(param_3 + (longlong)-(iVar45 + iVar32 * 4 + iVar58 + iVar40) * 8) ^
_DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 + (longlong)((iVar1 - iVar57) + iVar58 + iVar40) * 8);
}
}
else {
local_900[10] =
*(ulonglong *)
(param_3 + (longlong)((iVar1 - iVar31) + iVar58 + iVar40) * 8) ^
_DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 + (longlong)-(iVar35 + iVar32 * 4 + iVar58 + iVar40) * 8)
^ _DAT_181c5e1e0;
}
}
else {
local_900[10] =
*(ulonglong *)
(param_3 + (longlong)(((iVar34 + iVar32 * -4) - iVar58) - iVar40) * 8);
uVar63 = *(ulonglong *)(param_3 + (longlong)(iVar1 + iVar58 + iVar40) * 8) ^
_DAT_181c5e1e0;
}
iVar9 = iVar9 + 6;
local_900[0xe] = uVar63;
if (iVar56 < iVar9) {
if (iVar22 < iVar9) {
if (iVar37 < iVar9) {
local_900[0xb] =
*(ulonglong *)
(param_3 + (longlong)(iVar40 + iVar58 + (iVar47 - iVar23)) * 8);
uVar63 = *(ulonglong *)
(param_3 +
(longlong)(((iVar27 + iVar32 * -6) - iVar58) - iVar40) * 8);
}
else {
local_900[0xb] =
*(ulonglong *)
(param_3 + (longlong)-(iVar40 + iVar45 + iVar32 * 6 + iVar58) * 8) ^
_DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 + (longlong)(iVar40 + (iVar47 - iVar57) + iVar58) * 8);
}
}
else {
local_900[0xb] =
*(ulonglong *)
(param_3 + (longlong)(iVar40 + (iVar47 - iVar31) + iVar58) * 8) ^
_DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 + (longlong)-(iVar40 + iVar35 + iVar32 * 6 + iVar58) * 8)
^ _DAT_181c5e1e0;
}
}
else {
local_900[0xb] =
*(ulonglong *)
(param_3 + (longlong)(((iVar32 * -6 + iVar34) - iVar58) - iVar40) * 8);
uVar63 = *(ulonglong *)(param_3 + (longlong)(iVar40 + iVar47 + iVar58) * 8) ^
_DAT_181c5e1e0;
}
uVar14 = uVar14 + 1;
local_900[0xf] = uVar63;
local_900 = local_900 + 0x10;
} while (uVar14 < uVar42);
}
uVar52 = uVar52 + 1;
} while (uVar52 < (uint)((int)uVar26 >> 1));
}
LAB_18003311c:
uVar26 = uVar26 << 2;
iVar16 = iVar16 + -2;
}
else {
if ((iVar44 + 4 == param_2) || (iVar44 + 6 == param_2)) {
iVar32 = 1 << ((byte)iVar12 & 0x1f);
iVar44 = 1 << (cVar5 + cVar6 & 0x1fU);
if (0 < (int)uVar26) {
iVar56 = iVar44 * iVar15;
iVar57 = iVar44 * iVar43;
iVar59 = iVar44 * iVar11;
iVar8 = (int)(((uint)(iVar32 >> 1) >> 0x1e) + iVar32) >> 2;
iVar1 = iVar44 + iVar56;
iVar51 = iVar44 * iVar8;
iVar58 = iVar32 / 2;
iVar50 = iVar44 * iVar58;
iVar27 = iVar51 - iVar56;
iVar53 = iVar57 - iVar50;
iVar28 = iVar56 - iVar50;
iVar9 = (int)(((uint)(iVar32 * 3 >> 1) >> 0x1e) + iVar32 * 3) >> 2;
iVar45 = iVar44 * iVar9;
iVar32 = iVar32 * iVar44;
iVar31 = iVar57 - iVar45;
iVar40 = iVar56 - iVar45;
iVar38 = iVar59 - iVar45;
iVar21 = iVar51 - iVar57;
iVar35 = iVar51 - iVar59;
iVar22 = iVar59 - iVar50;
iVar18 = iVar44 * 4;
iVar39 = iVar59 + iVar44 * 4;
iVar54 = iVar32 - iVar59;
iVar46 = iVar32 - iVar56;
iVar32 = iVar32 - iVar57;
iVar47 = iVar59 + iVar44 * 2;
iVar7 = iVar56 + iVar44 * 2;
iVar34 = iVar44 * 3;
iVar60 = iVar57 + iVar34;
iVar13 = iVar34 + iVar56;
iVar30 = iVar57 + iVar44 * 6;
iVar17 = iVar59 + iVar44 * 6;
iVar29 = iVar44 * 8;
iVar37 = iVar44 * 9;
iVar23 = iVar37 + iVar57;
iVar20 = iVar44 * 0xc;
uVar52 = 0;
do {
uVar14 = 0;
if (0 < iVar33) {
iVar48 = iVar44 * iVar4 * uVar52;
iVar36 = iVar44 * iVar25 * uVar52;
iVar41 = iVar44 * iVar25 * 3 * uVar52;
do {
iVar55 = iVar25 * uVar52 + iVar15 + uVar14 * 4;
if (iVar8 < iVar55) {
iVar49 = iVar18 * uVar14;
if (iVar58 < iVar55) {
if (iVar9 < iVar55) {
*local_900 = *(ulonglong *)
(param_3 + (longlong)(iVar40 + iVar36 + iVar49) * 8);
uVar63 = *(ulonglong *)
(param_3 + (longlong)((iVar46 - iVar36) - iVar49) * 8);
}
else {
*local_900 = *(ulonglong *)
(param_3 + (longlong)-(iVar40 + iVar36 + iVar49) * 8) ^
_DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 + (longlong)(iVar28 + iVar36 + iVar49) * 8);
}
}
else {
*local_900 = *(ulonglong *)
(param_3 + (longlong)(iVar49 + (iVar36 - iVar27)) * 8) ^
_DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 + (longlong)-(iVar28 + iVar36 + iVar49) * 8) ^
_DAT_181c5e1e0;
}
}
else {
*local_900 = *(ulonglong *)
(param_3 +
(longlong)(int)-((iVar36 - iVar27) + iVar18 * uVar14) * 8);
uVar63 = *(ulonglong *)
(param_3 + (longlong)(int)(iVar56 + iVar36 + iVar18 * uVar14) * 8)
^ _DAT_181c5e1e0;
}
iVar49 = iVar18 * uVar14;
local_900[4] = uVar63;
iVar61 = iVar55 + 1;
if (iVar8 < iVar61) {
if (iVar58 < iVar61) {
if (iVar9 < iVar61) {
local_900[1] = *(ulonglong *)
(param_3 +
(longlong)((iVar1 - iVar45) + iVar36 + iVar49) * 8);
uVar63 = *(ulonglong *)
(param_3 +
(longlong)(((iVar46 - iVar44) - iVar36) - iVar49) * 8);
}
else {
local_900[1] = *(ulonglong *)
(param_3 +
(longlong)-(iVar44 + iVar40 + iVar36 + iVar49) * 8) ^
_DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 + (longlong)((iVar1 - iVar50) + iVar36 + iVar49) * 8)
;
}
}
else {
local_900[1] = *(ulonglong *)
(param_3 +
(longlong)((iVar1 - iVar51) + iVar36 + iVar49) * 8) ^
_DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 + (longlong)-(iVar44 + iVar28 + iVar36 + iVar49) * 8) ^
_DAT_181c5e1e0;
}
}
else {
local_900[1] = *(ulonglong *)
(param_3 +
(longlong)(((iVar27 - iVar44) - iVar36) - iVar49) * 8);
uVar63 = *(ulonglong *)(param_3 + (longlong)(iVar1 + iVar36 + iVar49) * 8) ^
_DAT_181c5e1e0;
}
local_900[5] = uVar63;
iVar61 = iVar55 + 2;
if (iVar8 < iVar61) {
if (iVar58 < iVar61) {
if (iVar9 < iVar61) {
local_900[2] = *(ulonglong *)
(param_3 +
(longlong)((iVar7 - iVar45) + iVar36 + iVar49) * 8);
uVar63 = *(ulonglong *)
(param_3 +
(longlong)(((iVar46 + iVar44 * -2) - iVar36) - iVar49) * 8);
}
else {
local_900[2] = *(ulonglong *)
(param_3 +
(longlong)-(iVar40 + iVar44 * 2 + iVar36 + iVar49) * 8)
^ _DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 + (longlong)((iVar7 - iVar50) + iVar36 + iVar49) * 8)
;
}
}
else {
local_900[2] = *(ulonglong *)
(param_3 +
(longlong)((iVar7 - iVar51) + iVar36 + iVar49) * 8) ^
_DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 +
(longlong)-(iVar28 + iVar44 * 2 + iVar36 + iVar49) * 8) ^
_DAT_181c5e1e0;
}
}
else {
local_900[2] = *(ulonglong *)
(param_3 +
(longlong)(((iVar44 * -2 + iVar27) - iVar36) - iVar49) * 8);
uVar63 = *(ulonglong *)(param_3 + (longlong)(iVar7 + iVar36 + iVar49) * 8) ^
_DAT_181c5e1e0;
}
iVar55 = iVar55 + 3;
local_900[6] = uVar63;
if (iVar8 < iVar55) {
if (iVar58 < iVar55) {
if (iVar9 < iVar55) {
local_900[3] = *(ulonglong *)
(param_3 +
(longlong)(iVar49 + iVar36 + (iVar13 - iVar45)) * 8);
uVar63 = *(ulonglong *)
(param_3 +
(longlong)(((iVar46 + iVar44 * -3) - iVar36) - iVar49) * 8);
}
else {
local_900[3] = *(ulonglong *)
(param_3 +
(longlong)-(iVar49 + iVar40 + iVar34 + iVar36) * 8) ^
_DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 + (longlong)(iVar49 + (iVar13 - iVar50) + iVar36) * 8
);
}
}
else {
local_900[3] = *(ulonglong *)
(param_3 +
(longlong)(iVar49 + (iVar13 - iVar51) + iVar36) * 8) ^
_DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 + (longlong)-(iVar49 + iVar28 + iVar34 + iVar36) * 8) ^
_DAT_181c5e1e0;
}
}
else {
local_900[3] = *(ulonglong *)
(param_3 +
(longlong)(((iVar27 + iVar44 * -3) - iVar36) - iVar49) * 8);
uVar63 = *(ulonglong *)(param_3 + (longlong)(iVar49 + iVar13 + iVar36) * 8)
^ _DAT_181c5e1e0;
}
local_900[7] = uVar63;
iVar55 = iVar4 * uVar52 + iVar11 + uVar14 * 8;
if (iVar8 < iVar55) {
iVar49 = iVar29 * uVar14;
if (iVar58 < iVar55) {
if (iVar9 < iVar55) {
local_900[8] = *(ulonglong *)
(param_3 + (longlong)(iVar38 + iVar48 + iVar49) * 8);
uVar63 = *(ulonglong *)
(param_3 + (longlong)((iVar54 - iVar48) - iVar49) * 8);
}
else {
local_900[8] = *(ulonglong *)
(param_3 + (longlong)-(iVar38 + iVar48 + iVar49) * 8) ^
_DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 + (longlong)(iVar22 + iVar48 + iVar49) * 8);
}
}
else {
local_900[8] = *(ulonglong *)
(param_3 + (longlong)(iVar49 + (iVar48 - iVar35)) * 8) ^
_DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 + (longlong)-(iVar22 + iVar48 + iVar49) * 8) ^
_DAT_181c5e1e0;
}
}
else {
local_900[8] = *(ulonglong *)
(param_3 +
(longlong)(int)-((iVar48 - iVar35) + iVar29 * uVar14) * 8);
uVar63 = *(ulonglong *)
(param_3 + (longlong)(int)(iVar59 + iVar48 + iVar29 * uVar14) * 8)
^ _DAT_181c5e1e0;
}
iVar49 = iVar29 * uVar14;
local_900[0xc] = uVar63;
iVar61 = iVar55 + 2;
if (iVar8 < iVar61) {
if (iVar58 < iVar61) {
if (iVar9 < iVar61) {
local_900[9] = *(ulonglong *)
(param_3 +
(longlong)((iVar47 - iVar45) + iVar48 + iVar49) * 8);
uVar63 = *(ulonglong *)
(param_3 +
(longlong)(((iVar54 + iVar44 * -2) - iVar48) - iVar49) * 8);
}
else {
local_900[9] = *(ulonglong *)
(param_3 +
(longlong)-(iVar38 + iVar44 * 2 + iVar48 + iVar49) * 8)
^ _DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 + (longlong)((iVar47 - iVar50) + iVar48 + iVar49) * 8
);
}
}
else {
local_900[9] = *(ulonglong *)
(param_3 +
(longlong)((iVar47 - iVar51) + iVar48 + iVar49) * 8) ^
_DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 +
(longlong)-(iVar22 + iVar44 * 2 + iVar48 + iVar49) * 8) ^
_DAT_181c5e1e0;
}
}
else {
local_900[9] = *(ulonglong *)
(param_3 +
(longlong)(((iVar35 + iVar44 * -2) - iVar48) - iVar49) * 8);
uVar63 = *(ulonglong *)(param_3 + (longlong)(iVar47 + iVar48 + iVar49) * 8)
^ _DAT_181c5e1e0;
}
local_900[0xd] = uVar63;
iVar61 = iVar55 + 4;
if (iVar8 < iVar61) {
if (iVar58 < iVar61) {
if (iVar9 < iVar61) {
local_900[10] =
*(ulonglong *)
(param_3 + (longlong)((iVar39 - iVar45) + iVar48 + iVar49) * 8);
uVar63 = *(ulonglong *)
(param_3 +
(longlong)(((iVar54 + iVar44 * -4) - iVar48) - iVar49) * 8);
}
else {
local_900[10] =
*(ulonglong *)
(param_3 + (longlong)-(iVar38 + iVar44 * 4 + iVar48 + iVar49) * 8)
^ _DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 + (longlong)((iVar39 - iVar50) + iVar48 + iVar49) * 8
);
}
}
else {
local_900[10] =
*(ulonglong *)
(param_3 + (longlong)((iVar39 - iVar51) + iVar48 + iVar49) * 8) ^
_DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 +
(longlong)-(iVar22 + iVar44 * 4 + iVar48 + iVar49) * 8) ^
_DAT_181c5e1e0;
}
}
else {
local_900[10] =
*(ulonglong *)
(param_3 + (longlong)(((iVar35 + iVar44 * -4) - iVar48) - iVar49) * 8)
;
uVar63 = *(ulonglong *)(param_3 + (longlong)(iVar39 + iVar48 + iVar49) * 8)
^ _DAT_181c5e1e0;
}
iVar55 = iVar55 + 6;
local_900[0xe] = uVar63;
if (iVar8 < iVar55) {
if (iVar58 < iVar55) {
if (iVar9 < iVar55) {
local_900[0xb] =
*(ulonglong *)
(param_3 + (longlong)(iVar49 + iVar48 + (iVar17 - iVar45)) * 8);
uVar63 = *(ulonglong *)
(param_3 +
(longlong)(((iVar54 + iVar44 * -6) - iVar48) - iVar49) * 8);
}
else {
local_900[0xb] =
*(ulonglong *)
(param_3 + (longlong)-(iVar49 + iVar38 + iVar44 * 6 + iVar48) * 8)
^ _DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 + (longlong)(iVar49 + (iVar17 - iVar50) + iVar48) * 8
);
}
}
else {
local_900[0xb] =
*(ulonglong *)
(param_3 + (longlong)(iVar49 + (iVar17 - iVar51) + iVar48) * 8) ^
_DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 +
(longlong)-(iVar49 + iVar22 + iVar44 * 6 + iVar48) * 8) ^
_DAT_181c5e1e0;
}
}
else {
local_900[0xb] =
*(ulonglong *)
(param_3 + (longlong)(((iVar44 * -6 + iVar35) - iVar48) - iVar49) * 8)
;
uVar63 = *(ulonglong *)(param_3 + (longlong)(iVar49 + iVar17 + iVar48) * 8)
^ _DAT_181c5e1e0;
}
local_900[0xf] = uVar63;
iVar55 = iVar25 * 3 * uVar52 + iVar43 + uVar14 * 0xc;
if (iVar8 < iVar55) {
iVar49 = iVar20 * uVar14;
if (iVar58 < iVar55) {
if (iVar9 < iVar55) {
local_900[0x10] =
*(ulonglong *)(param_3 + (longlong)(iVar31 + iVar41 + iVar49) * 8);
uVar63 = *(ulonglong *)
(param_3 + (longlong)((iVar32 - iVar41) - iVar49) * 8);
}
else {
local_900[0x10] =
*(ulonglong *)(param_3 + (longlong)-(iVar31 + iVar41 + iVar49) * 8)
^ _DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 + (longlong)(iVar53 + iVar41 + iVar49) * 8);
}
}
else {
local_900[0x10] =
*(ulonglong *)(param_3 + (longlong)(iVar49 + (iVar41 - iVar21)) * 8)
^ _DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 + (longlong)-(iVar53 + iVar41 + iVar49) * 8) ^
_DAT_181c5e1e0;
}
}
else {
local_900[0x10] =
*(ulonglong *)
(param_3 + (longlong)(int)-((iVar41 - iVar21) + iVar20 * uVar14) * 8);
uVar63 = *(ulonglong *)
(param_3 + (longlong)(int)(iVar57 + iVar41 + iVar20 * uVar14) * 8)
^ _DAT_181c5e1e0;
}
iVar49 = iVar20 * uVar14;
local_900[0x14] = uVar63;
iVar61 = iVar55 + 3;
if (iVar8 < iVar61) {
if (iVar58 < iVar61) {
if (iVar9 < iVar61) {
local_900[0x11] =
*(ulonglong *)
(param_3 + (longlong)((iVar60 - iVar45) + iVar41 + iVar49) * 8);
uVar63 = *(ulonglong *)
(param_3 +
(longlong)(((iVar32 + iVar44 * -3) - iVar41) - iVar49) * 8);
}
else {
local_900[0x11] =
*(ulonglong *)
(param_3 + (longlong)-(iVar31 + iVar34 + iVar41 + iVar49) * 8) ^
_DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 + (longlong)((iVar60 - iVar50) + iVar41 + iVar49) * 8
);
}
}
else {
local_900[0x11] =
*(ulonglong *)
(param_3 + (longlong)((iVar60 - iVar51) + iVar41 + iVar49) * 8) ^
_DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 + (longlong)-(iVar53 + iVar34 + iVar41 + iVar49) * 8) ^
_DAT_181c5e1e0;
}
}
else {
local_900[0x11] =
*(ulonglong *)
(param_3 + (longlong)(((iVar21 + iVar44 * -3) - iVar41) - iVar49) * 8)
;
uVar63 = *(ulonglong *)(param_3 + (longlong)(iVar60 + iVar41 + iVar49) * 8)
^ _DAT_181c5e1e0;
}
local_900[0x15] = uVar63;
iVar61 = iVar55 + 6;
if (iVar8 < iVar61) {
if (iVar58 < iVar61) {
if (iVar9 < iVar61) {
local_900[0x12] =
*(ulonglong *)
(param_3 + (longlong)((iVar30 - iVar45) + iVar41 + iVar49) * 8);
uVar63 = *(ulonglong *)
(param_3 +
(longlong)(((iVar32 + iVar44 * -6) - iVar41) - iVar49) * 8);
}
else {
local_900[0x12] =
*(ulonglong *)
(param_3 + (longlong)-(iVar31 + iVar44 * 6 + iVar41 + iVar49) * 8)
^ _DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 + (longlong)((iVar30 - iVar50) + iVar41 + iVar49) * 8
);
}
}
else {
local_900[0x12] =
*(ulonglong *)
(param_3 + (longlong)((iVar30 - iVar51) + iVar41 + iVar49) * 8) ^
_DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 +
(longlong)-(iVar53 + iVar44 * 6 + iVar41 + iVar49) * 8) ^
_DAT_181c5e1e0;
}
}
else {
local_900[0x12] =
*(ulonglong *)
(param_3 + (longlong)(((iVar21 + iVar44 * -6) - iVar41) - iVar49) * 8)
;
uVar63 = *(ulonglong *)(param_3 + (longlong)(iVar30 + iVar41 + iVar49) * 8)
^ _DAT_181c5e1e0;
}
iVar55 = iVar55 + 9;
local_900[0x16] = uVar63;
if (iVar8 < iVar55) {
if (iVar58 < iVar55) {
if (iVar9 < iVar55) {
local_900[0x13] =
*(ulonglong *)
(param_3 + (longlong)(iVar49 + iVar41 + (iVar23 - iVar45)) * 8);
uVar63 = *(ulonglong *)
(param_3 +
(longlong)(((iVar32 + iVar44 * -9) - iVar41) - iVar49) * 8);
}
else {
local_900[0x13] =
*(ulonglong *)
(param_3 + (longlong)-(iVar49 + iVar31 + iVar37 + iVar41) * 8) ^
_DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 + (longlong)(iVar49 + (iVar23 - iVar50) + iVar41) * 8
);
}
}
else {
local_900[0x13] =
*(ulonglong *)
(param_3 + (longlong)(iVar49 + (iVar23 - iVar51) + iVar41) * 8) ^
_DAT_181c5e1e0;
uVar63 = *(ulonglong *)
(param_3 + (longlong)-(iVar49 + iVar53 + iVar37 + iVar41) * 8) ^
_DAT_181c5e1e0;
}
}
else {
local_900[0x13] =
*(ulonglong *)
(param_3 + (longlong)(((iVar21 + iVar44 * -9) - iVar41) - iVar49) * 8)
;
uVar63 = *(ulonglong *)(param_3 + (longlong)(iVar49 + iVar23 + iVar41) * 8)
^ _DAT_181c5e1e0;
}
uVar14 = uVar14 + 1;
local_900[0x17] = uVar63;
local_900 = local_900 + 0x18;
} while (uVar14 < uVar42);
}
uVar52 = uVar52 + 1;
} while (uVar52 < uVar26);
}
goto LAB_18003311c;
}
iVar12 = iVar44 + 3;
if (0 < (int)uVar26) {
iVar44 = 1 << ((byte)iVar12 & 0x1f);
iVar50 = 1 << (cVar6 + (char)(iVar16 + -3) & 0x1fU);
iVar7 = iVar15 * iVar50;
iVar34 = (int)(((uint)(iVar44 * 3 >> 1) >> 0x1e) + iVar44 * 3) >> 2;
iVar45 = iVar44 * iVar50 - iVar7;
iVar13 = iVar34 * iVar50;
iVar17 = iVar44 / 2;
iVar18 = iVar17 * iVar50;
iVar56 = iVar13 - iVar7;
iVar37 = (int)(((uint)(iVar44 >> 1) >> 0x1e) + iVar44) >> 2;
iVar29 = iVar37 * iVar50;
iVar57 = iVar18 - iVar7;
iVar44 = iVar50 * 3 + iVar7;
iVar32 = iVar7 + iVar50 * 2;
iVar1 = iVar50 + iVar7;
iVar30 = iVar29 - iVar7;
iVar39 = 0;
iVar47 = 0;
uVar52 = 0;
do {
uVar14 = 0;
iVar8 = 0;
if (0 < iVar33) {
iVar35 = -iVar39;
do {
iVar58 = -iVar8;
iVar20 = iVar44 + iVar39 + iVar8;
iVar21 = iVar1 + iVar39 + iVar8;
iVar22 = (iVar39 - iVar56) + iVar8;
iVar28 = (iVar39 - iVar57) + iVar8;
iVar23 = (iVar39 - iVar30) + iVar8;
iVar31 = iVar32 + iVar39 + iVar8;
iVar38 = iVar7 + iVar39 + iVar8;
iVar27 = iVar15 + iVar47 + uVar14 * 4;
uVar63 = 0;
do {
iVar40 = (int)uVar63;
iVar9 = iVar27 + iVar27 * iVar40;
if (iVar37 < iVar9) {
iVar51 = iVar38 * iVar40;
if (iVar17 < iVar9) {
if (iVar34 < iVar9) {
local_900[uVar63 * 8] =
*(ulonglong *)(param_3 + (longlong)(iVar22 + iVar51) * 8);
uVar62 = *(ulonglong *)
(param_3 + (longlong)((iVar45 + iVar35 + iVar58) - iVar51) * 8
);
}
else {
local_900[uVar63 * 8] =
*(ulonglong *)(param_3 + (longlong)-(iVar22 + iVar51) * 8) ^
_DAT_181c5e1e0;
uVar62 = *(ulonglong *)(param_3 + (longlong)(iVar51 + iVar28) * 8);
}
}
else {
local_900[uVar63 * 8] =
*(ulonglong *)(param_3 + (longlong)(iVar23 + iVar51) * 8) ^
_DAT_181c5e1e0;
uVar62 = *(ulonglong *)(param_3 + (longlong)-(iVar51 + iVar28) * 8) ^
_DAT_181c5e1e0;
}
}
else {
local_900[uVar63 * 8] =
*(ulonglong *)(param_3 + (longlong)-(iVar23 + iVar38 * iVar40) * 8);
uVar62 = *(ulonglong *)(param_3 + (longlong)(iVar38 * iVar40 + iVar38) * 8)
^ _DAT_181c5e1e0;
}
local_900[uVar63 * 8 + 4] = uVar62;
iVar51 = iVar27 + 1 + iVar27 * iVar40 + iVar40;
if (iVar37 < iVar51) {
iVar46 = iVar21 * iVar40;
if (iVar17 < iVar51) {
if (iVar34 < iVar51) {
local_900[uVar63 * 8 + 1] =
*(ulonglong *)
(param_3 +
(longlong)(iVar46 + (iVar1 - iVar13) + iVar39 + iVar8) * 8);
uVar62 = *(ulonglong *)
(param_3 +
(longlong)(((iVar45 - iVar50) + iVar35 + iVar58) - iVar46) * 8
);
}
else {
local_900[uVar63 * 8 + 1] =
*(ulonglong *)
(param_3 +
(longlong)(((iVar56 - iVar50) + iVar35 + iVar58) - iVar46) * 8) ^
_DAT_181c5e1e0;
uVar62 = *(ulonglong *)
(param_3 +
(longlong)(iVar46 + (iVar1 - iVar18) + iVar39 + iVar8) * 8);
}
}
else {
local_900[uVar63 * 8 + 1] =
*(ulonglong *)
(param_3 +
(longlong)(iVar46 + (iVar1 - iVar29) + iVar39 + iVar8) * 8) ^
_DAT_181c5e1e0;
uVar62 = *(ulonglong *)
(param_3 +
(longlong)(((iVar57 - iVar50) + iVar35 + iVar58) - iVar46) * 8)
^ _DAT_181c5e1e0;
}
}
else {
local_900[uVar63 * 8 + 1] =
*(ulonglong *)
(param_3 +
(longlong)(((iVar30 - iVar50) + iVar35 + iVar58) - iVar21 * iVar40) *
8);
uVar62 = *(ulonglong *)(param_3 + (longlong)(iVar21 * iVar40 + iVar21) * 8)
^ _DAT_181c5e1e0;
}
local_900[uVar63 * 8 + 5] = uVar62;
iVar51 = iVar9 + 2 + iVar40 * 2;
if (iVar37 < iVar51) {
iVar46 = iVar31 * iVar40;
if (iVar17 < iVar51) {
if (iVar34 < iVar51) {
local_900[uVar63 * 8 + 2] =
*(ulonglong *)
(param_3 +
(longlong)(iVar46 + (iVar32 - iVar13) + iVar39 + iVar8) * 8);
uVar62 = *(ulonglong *)
(param_3 +
(longlong)((iVar45 + iVar50 * -2 + iVar35 + iVar58) - iVar46)
* 8);
}
else {
local_900[uVar63 * 8 + 2] =
*(ulonglong *)
(param_3 +
(longlong)((iVar56 + iVar50 * -2 + iVar35 + iVar58) - iVar46) * 8)
^ _DAT_181c5e1e0;
uVar62 = *(ulonglong *)
(param_3 +
(longlong)(iVar46 + (iVar32 - iVar18) + iVar39 + iVar8) * 8);
}
}
else {
local_900[uVar63 * 8 + 2] =
*(ulonglong *)
(param_3 +
(longlong)(iVar46 + (iVar32 - iVar29) + iVar39 + iVar8) * 8) ^
_DAT_181c5e1e0;
uVar62 = *(ulonglong *)
(param_3 +
(longlong)((iVar57 + iVar50 * -2 + iVar35 + iVar58) - iVar46) *
8) ^ _DAT_181c5e1e0;
}
}
else {
local_900[uVar63 * 8 + 2] =
*(ulonglong *)
(param_3 +
(longlong)((iVar50 * -2 + iVar30 + iVar35 + iVar58) - iVar31 * iVar40)
* 8);
uVar62 = *(ulonglong *)(param_3 + (longlong)(iVar31 * iVar40 + iVar31) * 8)
^ _DAT_181c5e1e0;
}
local_900[uVar63 * 8 + 6] = uVar62;
iVar9 = iVar9 + 3 + iVar40 * 3;
if (iVar37 < iVar9) {
iVar51 = iVar20 * iVar40;
if (iVar17 < iVar9) {
if (iVar34 < iVar9) {
local_900[uVar63 * 8 + 3] =
*(ulonglong *)
(param_3 +
(longlong)(iVar51 + (iVar44 - iVar13) + iVar39 + iVar8) * 8);
uVar62 = *(ulonglong *)
(param_3 +
(longlong)((iVar45 + iVar50 * -3 + iVar35 + iVar58) - iVar51)
* 8);
}
else {
local_900[uVar63 * 8 + 3] =
*(ulonglong *)
(param_3 +
(longlong)((iVar56 + iVar50 * -3 + iVar35 + iVar58) - iVar51) * 8)
^ _DAT_181c5e1e0;
uVar62 = *(ulonglong *)
(param_3 +
(longlong)(iVar51 + (iVar44 - iVar18) + iVar39 + iVar8) * 8);
}
}
else {
local_900[uVar63 * 8 + 3] =
*(ulonglong *)
(param_3 +
(longlong)(iVar51 + (iVar44 - iVar29) + iVar39 + iVar8) * 8) ^
_DAT_181c5e1e0;
uVar62 = *(ulonglong *)
(param_3 +
(longlong)((iVar57 + iVar50 * -3 + iVar35 + iVar58) - iVar51) *
8) ^ _DAT_181c5e1e0;
}
}
else {
local_900[uVar63 * 8 + 3] =
*(ulonglong *)
(param_3 +
(longlong)((iVar58 + iVar35 + iVar50 * -3 + iVar30) - iVar20 * iVar40)
* 8);
uVar62 = *(ulonglong *)(param_3 + (longlong)(iVar20 * iVar40 + iVar20) * 8)
^ _DAT_181c5e1e0;
}
local_900[uVar63 * 8 + 7] = uVar62;
uVar63 = (ulonglong)(iVar40 + 1U);
} while (iVar40 + 1U < 7);
local_900 = local_900 + 0x38;
uVar14 = uVar14 + 1;
iVar8 = iVar8 + iVar50 * 4;
} while (uVar14 < uVar42);
}
uVar52 = uVar52 + 1;
iVar47 = iVar47 + iVar25;
iVar39 = iVar39 + iVar25 * iVar50;
} while (uVar52 < uVar26);
}
uVar26 = uVar26 << 3;
iVar16 = iVar16 + -3;
}
iVar44 = iVar12;
} while (iVar12 < param_2);
}
uVar24 = uVar24 + 1;
iVar43 = iVar43 + iVar33 * 3;
iVar15 = iVar15 + iVar33;
iVar11 = iVar11 + iVar33 * 2;
} while (uVar24 < (uint)((iVar25 + -1 + iVar33) / iVar33));
}
iVar19 = (1 << ((byte)uVar3 & 0x1f)) << 4;
iVar2 = *(int *)(param_1 + 0x1c);
if (*(int *)(param_1 + 0x1c) <= iVar19) {
iVar2 = iVar19;
}
*(int *)(param_1 + 0x1c) = iVar2;
return puVar10 + (longlong)(1 << ((char)param_2 + 0x1fU & 0x1f)) * 2;
}
############ FUN_ 180015380 size=1146 ############