0% found this document useful (0 votes)
29 views19 pages

Jetshow Decompiled

Decompiled C++ Jet engine app
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
29 views19 pages

Jetshow Decompiled

Decompiled C++ Jet engine app
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 19

/* WARNING: Control flow encountered bad instruction data */

/* WARNING: Instruction at (ram,0x00403089) overlaps instruction at


(ram,0x00403088)
*/
/* WARNING: Unable to track spacebase fully for stack */
/* WARNING: Removing unreachable block (ram,0x004030dc) */
/* WARNING: Removing unreachable block (ram,0x00403159) */
/* WARNING: Removing unreachable block (ram,0x004030de) */
/* WARNING: Removing unreachable block (ram,0x00403116) */
/* WARNING: Removing unreachable block (ram,0x004030e5) */
/* WARNING: Globals starting with '_' overlap smaller symbols at the same address
*/

uint entry(undefined4 *param_1,int param_2,undefined4 param_3,int param_4,char


*param_5,int *param_6
,char **param_7,uint *param_8)

{
ushort *puVar1;
byte bVar2;
undefined *puVar4;
longlong lVar5;
longlong lVar6;
code *pcVar7;
uint3 uVar8;
undefined8 uVar9;
char cVar10;
byte bVar11;
byte bVar12;
char cVar13;
byte bVar18;
uint **ppuVar14;
uint *puVar15;
byte bVar19;
undefined3 uVar20;
undefined2 *puVar16;
undefined2 *puVar17;
char *extraout_ECX;
uint *puVar21;
int *piVar22;
char *pcVar23;
byte *pbVar24;
uint *extraout_ECX_00;
uint *puVar25;
uint *extraout_ECX_01;
undefined4 extraout_ECX_02;
byte *pbVar26;
int iVar27;
int extraout_EDX;
int iVar28;
int iVar29;
int extraout_EDX_00;
int *unaff_EBX;
uint uVar30;
char *pcVar31;
uint **ppuVar32;
int *piVar33;
uint *puVar34;
undefined *puVar35;
undefined2 *puVar36;
int unaff_EBP;
undefined4 *puVar37;
uint **ppuVar38;
undefined4 *puVar39;
uint *unaff_EDI;
undefined4 *puVar40;
char *pcVar41;
uint **ppuVar42;
uint *puVar43;
undefined4 *puVar44;
undefined2 uVar45;
undefined2 in_SS;
undefined2 uVar46;
bool bVar47;
bool bVar48;
byte in_AF;
byte bVar49;
bool bVar50;
byte in_TF;
byte in_IF;
byte in_NT;
byte in_AC;
byte in_VIF;
byte in_VIP;
byte in_ID;
uint uVar51;
undefined8 uVar52;
uint *unaff_retaddr;
undefined4 uStack_4;
byte bVar3;

bVar48 = false;
uVar52 = ThunRTMain();
pbVar24 = (byte *)uVar52;
bVar11 = (byte)uVar52;
*pbVar24 = *pbVar24 + bVar11;
*pbVar24 = *pbVar24 + bVar11;
*pbVar24 = *pbVar24 + bVar11;
*pbVar24 = *pbVar24 ^ bVar11;
*pbVar24 = *pbVar24 + bVar11;
pcVar41 = s_VB5!6&VB6DE.DLL_00494834;
s_VB5!6&VB6DE.DLL_00494834[0] = s_VB5!6&VB6DE.DLL_00494834[0] + -100;
_DAT_42773f7b = _DAT_42773f7b + (int)((ulonglong)uVar52 >> 0x20);
pcVar23 = extraout_ECX;
code_r0x00402ca6:
puVar25 = (uint *)((int)unaff_EDI + 1);
puVar21 = (uint *)(pcVar23 + -1);
cVar13 = (char)pcVar41;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*(undefined **)pcVar41 = (undefined *)(*(uint *)pcVar41 + (int)pcVar41);
*pcVar41 = *pcVar41 + cVar13;
DAT_0000449d = DAT_0000449d + cVar13;
uVar51 = *puVar21;
*puVar21 = *puVar21 + 0x4a;
if (*puVar21 == 0) {
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*(char *)((int)unaff_EDI + 0x1b) = *(char *)((int)unaff_EDI + 0x1b) +
(char)unaff_EBX;
*(uint *)pcVar41 = *(uint *)pcVar41 | (uint)pcVar41;
}
else {
puVar40 = (undefined4 *)&DAT_0000449d;
uStack_4 = (uint *)pcVar41;
if (uVar51 < 0xffffffb6) {
while( true ) {
puVar37 = (undefined4 *)((int)puVar40 + 1);
out(*(undefined *)puVar40,0xf8b1);
iVar28 = *unaff_EBX;
uVar8 = SegmentLimit(_DAT_2b75f916);
piVar22 = (int *)(uint)(ushort)uVar8;
bVar50 = (bool)((byte)(uVar8 >> 0x10) & 1);
cVar13 = (char)pcVar41;
if (!bVar50) {
if (bVar50) goto LAB_00402d48;
out(*puVar37,0xf8b1);
out(*(undefined *)((int)puVar40 + 5),0xf8b1);
out(*(undefined4 *)((int)puVar40 + 6),0xf8b1);
param_1 = (undefined4 *)((int)puVar40 + 0xb);
out(*(undefined *)((int)puVar40 + 10),0xf8b1);
if (unaff_EBX != (int *)0xffffffff) {
out(*param_1,0xf8b1);
cVar10 = in(0xf8b1);
*(char *)puVar25 = cVar10;
*pcVar41 = *pcVar41 + cVar13;
puVar25 = (uint *)((int)unaff_EDI + 2);
goto code_r0x00402ce8;
}
param_7 = (char **)((uint)pcVar41 | 0x4a001601);
bVar50 = param_7 == (char **)0x0;
param_4 = 0;
param_6 = piVar22;
param_5 = (char *)0x2b75f8b1;
param_2 = unaff_EBP;
unaff_retaddr = puVar25;
goto code_r0x00402d5d;
}
pcVar23 = (char *)((int)piVar22 + -1);
if (pcVar23 == (char *)0x0 || (uVar8 & 0x10000) != 0) break;
pcVar41 = (char *)CONCAT22((short)((uint)pcVar41 >> 0x10),
CONCAT11((char)((uint)pcVar41 >> 8) +
cVar13,cVar13));
uStack_4 = (uint *)CONCAT22(uStack_4._2_2_,in_SS);
puVar40 = puVar37;
}
pcVar41 = (char *)0xd0ebf06c;
unaff_EBP = unaff_EBP + 1;
unaff_EBX = (int *)CONCAT31((int3)((uint)unaff_EBX >> 8),(char)
((uint)unaff_EBX >> 8));
if (1 < (int)puVar37) goto LAB_00402ca0+4;
if (-1 < (int)puVar40) {
*(char *)puVar25 = *(char *)puVar25 + 'l';
goto LAB_00402d48;
}
in_NT = ((uint)unaff_retaddr & 0x4000) != 0;
bVar48 = ((uint)unaff_retaddr & 0x400) != 0;
in_IF = ((uint)unaff_retaddr & 0x200) != 0;
in_TF = ((uint)unaff_retaddr & 0x100) != 0;
in_AF = ((uint)unaff_retaddr & 0x10) != 0;
in_ID = ((uint)unaff_retaddr & 0x200000) != 0;
in_AC = ((uint)unaff_retaddr & 0x40000) != 0;
in_VIP = 0;
in_VIF = 0;
pcVar41 = (char *)((uint)unaff_EBX ^ *(uint *)((int)piVar22 + -0x48ee309b));
unaff_EBX = (int *)0xd0ebf06c;
*(char *)puVar25 = 'l';
DAT_d0ebf03f = DAT_d0ebf03f + -0x10;
cVar13 = (char)pcVar41;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
}
cVar13 = (char)pcVar41;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
puVar25 = uStack_4;
}
LAB_00402d48:
*(char *)puVar25 = *(char *)puVar25 + -0x4f;
piVar22 = unaff_EBX + 0x1d;
bVar11 = *(byte *)piVar22;
*(byte *)piVar22 = *(byte *)piVar22 + 0xb1;
if (bVar11 < 0x4f) {
if (*(byte *)piVar22 == 0) {
DAT_4a001601 = DAT_4a001601 + (char)param_6;
bVar50 = DAT_4a001601 == '\0';
code_r0x00402d5d:
cVar13 = (char)param_7;
cVar10 = (char)((uint)param_6 >> 8);
if (bVar50) {
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
}
else if (bVar50) {
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(char *)(param_4 + 0x4d) = *(char *)(param_4 + 0x4d) + cVar10;
goto LAB_00402dc9;
}
puVar40 = param_1 + (uint)bVar48 * -2 + 1;
out(*param_1,(short)param_5);
param_1 = (undefined4 *)((int)puVar40 + (uint)bVar48 * -2 + 1);
out(*(byte *)puVar40,(short)param_5);
param_8 = unaff_retaddr;
param_2 = (int)((longlong)(int)param_1[0x19] * 0x73776f);
*param_6 = (*param_6 - (int)param_7) -
(uint)((longlong)param_2 != (longlong)(int)param_1[0x19] *
0x73776f);
*param_5 = *param_5 + cVar13;
param_7 = (char **)((uint)param_7 & (uint)param_1);
bVar11 = (byte)param_7;
pcVar41 = (char *)((int)&param_8 + (int)param_1 * 2);
*pcVar41 = *pcVar41 + cVar10;
*(byte *)(param_1 + 7) = *(byte *)(param_1 + 7) + (char)((uint)param_4 >> 8);
*(byte *)param_6 = *(char *)param_6 + bVar11;
*(byte *)param_6 = *(char *)param_6 + bVar11;
cVar13 = (char)((uint)param_5 >> 8);
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 ^ bVar11;
*(byte *)param_7 = *(byte *)param_7 + bVar11;
*(byte *)param_7 = *(byte *)param_7 + bVar11;
*(byte *)(param_7 + 0x5800007) = *(byte *)(param_7 + 0x5800007) + cVar10;
*(byte *)param_7 = *(byte *)param_7 + bVar11;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + bVar11;
*(byte *)param_7 = *(byte *)param_7 + cVar13;
*(byte *)param_7 = *(byte *)param_7 + bVar11;
*(byte *)param_7 = *(byte *)param_7 + (char)((uint)param_7 >> 8);
*(byte *)param_7 = *(byte *)param_7 + bVar11;
pcVar41 = *param_7;
*param_7 = *param_7 + (int)param_7;
*(byte *)param_7 = (*(byte *)param_7 - bVar11) - CARRY4((uint)pcVar41,
(uint)param_7);
*(byte *)param_7 = *(byte *)param_7 + bVar11;
*(byte *)param_7 = *(byte *)param_7 + bVar11;
*(byte *)param_7 = *(byte *)param_7 + bVar11;
*(byte *)param_7 = *(byte *)param_7 + bVar11;
*(byte *)param_7 = *(byte *)param_7 + bVar11;
*(byte *)param_7 = *(byte *)param_7 + bVar11;
*(byte *)param_7 = *(byte *)param_7 + bVar11;
*(byte *)param_7 = *(byte *)param_7 + bVar11;
*(byte *)param_7 = *(byte *)param_7 + bVar11;
*(byte *)param_7 = *(byte *)param_7 + bVar11;
*(byte *)param_7 = *(byte *)param_7 + bVar11;
*(byte *)param_7 = *(byte *)param_7 + bVar11;
*(byte *)param_7 = *(byte *)param_7 + bVar11;
*(byte *)param_7 = *(byte *)param_7 + bVar11;
}
*(byte *)param_7 = *(byte *)param_7 + (char)param_7;
}
LAB_00402dc9:
cVar10 = (char)param_7;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
*(byte *)param_7 = *(byte *)param_7 + cVar10;
pbVar24 = (byte *)(*(int *)(param_2 + 0x42) * 0x4a);
cVar10 = cVar10 + -0x39;
pcVar23 = (char *)CONCAT31((int3)((uint)param_7 >> 8),cVar10);
*(uint *)(param_5 + 0x34) = *(uint *)(param_5 + 0x34) ^ (uint)pcVar23;
bVar49 = (byte)((uint)param_4 >> 8);
*pbVar24 = *pbVar24 & bVar49;
pcVar41 = *(char **)(pbVar24 + 0x73);
uVar51 = (int)pcVar41 - (int)pcVar23;
param_7 = (char **)((uint)(in_NT & 1) * 0x4000 | (uint)SBORROW4((int)pcVar41,
(int)pcVar23) * 0x800
| (uint)bVar48 * 0x400 | (uint)(in_IF & 1) * 0x200 | (uint)
(in_TF & 1) * 0x100
| (uint)((int)uVar51 < 0) * 0x80 | (uint)(uVar51 == 0) * 0x40
|
(uint)(in_AF & 1) * 0x10 | (uint)((POPCOUNT(uVar51 & 0xff) &
1U) == 0) * 4 |
(uint)(pcVar41 < pcVar23) | (uint)(in_ID & 1) * 0x200000 |
(uint)(in_VIP & 1) * 0x100000 | (uint)(in_VIF & 1) * 0x80000
|
(uint)(in_AC & 1) * 0x40000);
puVar40 = (undefined4 *)((int)unaff_retaddr + (uint)bVar48 * -2 + 1);
bVar19 = *(byte *)unaff_retaddr;
bVar11 = *(byte *)param_1;
cVar13 = bVar11 - bVar19;
uVar51 = (uint)(in_NT & 1) * 0x4000 | (uint)SBORROW1(bVar11,bVar19) * 0x800 |
(uint)bVar48 * 0x400
| (uint)(in_IF & 1) * 0x200 | (uint)(in_TF & 1) * 0x100 | (uint)(cVar13
< '\0') * 0x80 |
(uint)(cVar13 == '\0') * 0x40 | (uint)(in_AF & 1) * 0x10 |
(uint)((POPCOUNT(cVar13) & 1U) == 0) * 4 | (uint)(bVar11 < bVar19);
piVar22 = (int *)(uVar51 | (uint)(in_ID & 1) * 0x200000 | (uint)(in_VIP & 1) *
0x100000 |
(uint)(in_VIF & 1) * 0x80000 | (uint)(in_AC & 1) * 0x40000);
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
*pcVar23 = *pcVar23 + cVar10;
cVar13 = *pcVar23;
*pcVar23 = *pcVar23 + cVar10;
if (SCARRY1(cVar13,cVar10)) {
*pbVar24 = *pbVar24 - bVar49;
*(char **)(pcVar23 + -4) = param_5 + 3;
uVar51 = ((uint)&param_6 & 0xffffff52 ^ 99) & 0xffffff42;
param_5[0x5f] = param_5[0x5f] ^ (byte)pbVar24;
*(char **)(pcVar23 + -8) = param_5 + 5;
pcVar7 = (code *)swi(4);
if (SBORROW4((int)pbVar24,1) == true) {
param_6 = piVar22;
uVar51 = (*pcVar7)();
}
return uVar51;
}
param_6._0_1_ = (char)uVar51;
param_6 = (int *)CONCAT31((int3)((uint)piVar22 >> 8),(char)param_6 +
(char)&param_6 * '\x12');
uVar45 = 0x2039;
uVar52 = func_0x7b79849c();
iVar28 = (int)((ulonglong)uVar52 >> 0x20);
uVar51 = (uint)uVar52 & 0xffffff42;
iVar27 = iVar28 + -3;
uVar51 = CONCAT31((int3)(uVar51 >> 8),(char)uVar51 + -0x5a) & 0xffffff5a;
pbVar24 = (byte *)(iVar28 + 0x36);
*pbVar24 = *pbVar24 & (byte)iVar27;
cVar13 = (char)uVar51;
uVar52 = CONCAT44(iVar27,CONCAT31((int3)(uVar51 >> 8),cVar13 + -0x4a));
pcVar7 = (code *)swi(4);
if (SBORROW1(cVar13,'J') != false) {
uVar52 = (*pcVar7)();
}
pcVar41 = (char *)uVar52;
iVar28 = *(int *)((int)((ulonglong)uVar52 >> 0x20) + 0x3c);
cVar13 = (char)uVar52;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
*pcVar41 = *pcVar41 + cVar13;
iVar27 = CONCAT31((int3)((ulonglong)uVar52 >> 0x28),0xb5);
uVar46 = *(undefined2 *)(pcVar41 + iVar28 * 0x128 + 0x28428c8a);
*(int *)(pcVar41 + -4) = iVar27;
*(byte *)(iVar27 + 0x44) = *(byte *)(iVar27 + 0x44) & (char)iVar28 * 'J';
bVar19 = (byte)param_4;
*(char *)(iVar27 + 0x42) = *(char *)(iVar27 + 0x42) - bVar19;
puVar37 = (undefined4 *)
((int)param_1 + (uint)bVar48 * -8 + (uint)bVar48 * -8 + (uint)bVar48 *
-2 + 9);
*(undefined2 *)(pcVar41 + -8) = uVar45;
uVar45 = 0x8684;
pcVar31 = pcVar41 + -0xc;
*(undefined **)(pcVar41 + -0xc) = &UNK_00402fe1;
func_0x84756ba5();
puVar39 = puVar40 + (uint)bVar48 * -2 + 1;
puVar44 = puVar37 + (uint)bVar48 * -2 + 1;
*puVar40 = *puVar37;
iVar27 = CONCAT22((short)((uint)param_4 >> 0x10),CONCAT11(0xce,bVar19));
uVar51 = 0x3c4ac6c3;
iVar28 = extraout_EDX + 1;
*(byte *)extraout_ECX_00 = *(byte *)extraout_ECX_00 ^ (byte)((uint)iVar28 >> 8);
uRam9c928c9c = SUB41(pcVar31,0);
puVar21 = puVar39 + (uint)bVar48 * -2 + 1;
puVar25 = puVar44 + (uint)bVar48 * -2 + 1;
uRam94869cad = uRam9c928c9c;
*puVar39 = *puVar44;
bVar49 = false;
bVar11 = (byte)((uint)extraout_ECX_00 >> 8);
iRamfffffffc = iVar28;
*(byte *)(iVar27 + 0x4a) = *(byte *)(iVar27 + 0x4a) ^ bVar11;
ppuVar42 = (uint **)(((uint)pcVar31 ^ 0x5a) & 0xffffff63);
ppuVar14 = (uint **)(undefined *)0xfffffffc;
do {
ppuVar32 = ppuVar14;
iVar29 = iVar28;
*(byte *)(iVar29 + 0x51) = *(byte *)(iVar29 + 0x51) & (byte)(iVar29 + -1);
ppuVar14 = (uint **)((uint)ppuVar42 ^ 0x5a);
bVar50 = (POPCOUNT((byte)ppuVar42 ^ 0x5a) & 1U) == 0;
if (bVar50) {
puVar15 = *ppuVar32;
puVar43 = puVar21 + (uint)bVar48 * -2 + 1;
ppuVar38 = (uint **)(puVar25 + (uint)bVar48 * -2 + 1);
*puVar21 = *puVar25;
bVar18 = (byte)((uint)puVar15 >> 8);
out((short)ppuVar14,puVar15);
if ((POPCOUNT(bRam24295359 & bVar18) & 1U) == 0) {
bVar19 = *(byte *)(iVar27 + 0x79) & (byte)((uint)ppuVar42 >> 8);
*ppuVar32 = (uint *)((uint)(in_NT & 1) * 0x4000 | (uint)bVar48 * 0x400 |
(uint)(in_IF & 1) * 0x200 | (uint)(in_TF & 1) * 0x100
|
(uint)((char)bVar19 < '\0') * 0x80 | (uint)(bVar19 ==
0) * 0x40 |
(uint)((POPCOUNT(bVar19) & 1U) == 0) * 4 | (uint)
(in_ID & 1) * 0x200000
| (uint)(in_VIP & 1) * 0x100000 | (uint)(in_VIF & 1) *
0x80000 |
(uint)(in_AC & 1) * 0x40000);
cVar13 = (char)puVar15;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
uVar51 = 0x3c4ac6c4;
*(uint *)((int)extraout_ECX_00 + (int)ppuVar38) =
*(uint *)((int)extraout_ECX_00 + (int)ppuVar38) ^ 0x3c4ac6c4;
*puVar15 = *puVar15 - (int)ppuVar32;
*extraout_ECX_00 = *extraout_ECX_00 ^ 0x3c4ac6c4;
*(byte *)extraout_ECX_00 = *(byte *)extraout_ECX_00 & bVar11;
*puVar15 = *puVar15 & (uint)ppuVar32;
*extraout_ECX_00 = *extraout_ECX_00 & (uint)puVar43;
puVar15 = (uint *)((uint)puVar15 ^ 0x31);
}
else {
puVar15 = (uint *)((uint)puVar15 & 0xffffff6b);
*ppuVar32 = (uint *)((int)ppuVar14 + -1);
pbVar24 = (byte *)((int)ppuVar14 + 0x59);
bVar11 = *pbVar24;
*pbVar24 = *pbVar24 - bVar19;
piVar22 = (int *)((int)extraout_ECX_00 + 1);
if (bVar11 < bVar19) {
ppuVar42 = ppuVar32 + 1;
if ((POPCOUNT((uint)piVar22 & 0xff) & 1U) != 0) goto code_r0x0040316c;
if (bVar11 < bVar19) {
/* WARNING: Bad instruction - Truncating control flow here */
halt_baddata();
}
*piVar22 = *piVar22 - (int)(ppuVar32 + 1);
}
*(byte *)piVar22 = *(byte *)piVar22 & bVar18;
}
cVar13 = (char)puVar15;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)(uVar51 + 0x8ea59496) = *(char *)(uVar51 + 0x8ea59496) + (char)
((uint)puVar15 >> 8);
/* WARNING: Bad instruction - Truncating control flow here */
halt_baddata();
}
uVar45 = *(undefined2 *)((int)puVar25 * 4 + -0x250f8b87);
puVar15 = puVar25 + (uint)bVar48 * -2 + 1;
*puVar21 = *puVar25;
puVar43 = (uint *)((int)(puVar21 + (uint)bVar48 * -2 + 1) + (uint)bVar48 * -2 +
1);
cVar13 = (char)ppuVar32;
*(char *)(puVar21 + (uint)bVar48 * -2 + 1) = cVar13;
puVar21 = puVar43 + (uint)bVar48 * -2 + 1;
puVar25 = puVar15 + (uint)bVar48 * -2 + 1;
*puVar43 = *puVar15;
ppuVar42 = ppuVar32;
iVar28 = iVar29 + -1;
} while (bVar50);
*(char *)ppuVar32 = *(char *)ppuVar32 + cVar13;
*(char *)ppuVar32 = *(char *)ppuVar32 + cVar13;
bVar50 = SCARRY1(cRamcee76c75,-0x32);
cRamcee76c75 = cRamcee76c75 + -0x32;
*(undefined2 *)(iVar29 + -0x6b59526d + (int)extraout_ECX_00 * 4) = uVar46;
uVar30 = *puVar25;
bVar49 = (uVar30 & 0x1000) != 0;
uVar51 = 0xb6adbdb6;
ppuVar38 = (uint **)(puVar25 + (uint)bVar48 * -2 + 1 + (uint)bVar48 * -2 + 1);
puVar15 = (uint *)puVar25[(uint)bVar48 * -2 + 1];
piVar33 = (int *)(uVar30 - 4);
*(uint *)(uVar30 - 4) =
(uint)(in_NT & 1) * 0x4000 | (uint)bVar50 * 0x800 | (uint)bVar48 * 0x400 |
(uint)(in_IF & 1) * 0x200 | (uint)(in_TF & 1) * 0x100 | (uint)((uVar30 &
0x8000) != 0) * 0x80
| (uint)((uVar30 & 0x4000) != 0) * 0x40 | (uint)bVar49 * 0x10 |
(uint)((uVar30 & 0x400) != 0) * 4 | (uint)((uVar30 & 0x100) != 0) |
(uint)(in_ID & 1) * 0x200000 | (uint)(in_VIP & 1) * 0x100000 | (uint)(in_VIF
& 1) * 0x80000 |
(uint)(in_AC & 1) * 0x40000;
pcVar41 = (char *)((int)puVar21 + (uint)bVar48 * -2 + 1);
puVar25 = (uint *)CONCAT22((short)((uint)extraout_ECX_00 >> 0x10),(ushort)
(byte)extraout_ECX_00);
puVar43 = (uint *)(pcVar41 + (uint)bVar48 * -2 + 1);
*pcVar41 = (char)puVar15;
do {
piVar22 = (int *)CONCAT22((short)((uint)puVar25 >> 0x10),CONCAT11(0x9c,
(char)puVar25));
ppuVar42 = (uint **)piVar33;
code_r0x0040316c:
puVar40 = (undefined4 *)((int)puVar43 + (uint)bVar48 * -2 + 1);
puVar43 = puVar40 + (uint)bVar48 * -2 + 1;
*puVar40 = *(undefined4 *)((int)ppuVar38 + (uint)bVar48 * -2 + 1);
ppuVar38 = (uint **)(*piVar22 * 0x20);
iVar28 = (int)*ppuVar42;
piVar33 = (int *)ppuVar42 + 1;
iVar29 = iVar28 + -1;
*(char *)(iVar27 + 0x52) = *(char *)(iVar27 + 0x52) - (char)((uint)piVar22 >>
8);
bVar18 = (byte)((uint)iVar29 >> 8);
*(char *)(iVar27 + 0x5a) = *(char *)(iVar27 + 0x5a) - bVar18;
pbVar24 = (byte *)(iVar28 + 0x51);
*pbVar24 = *pbVar24 ^ bVar19;
uVar20 = (undefined3)((uint)puVar15 >> 8);
bVar11 = (char)puVar15 + 0x9d;
puVar21 = (uint *)CONCAT31(uVar20,bVar11);
*(byte *)piVar22 = *(byte *)piVar22 ^ bVar18;
*ppuVar42 = (uint *)iVar29;
iVar28 = (int)*ppuVar42;
puVar25 = (uint *)((int)piVar22 + 1);
puVar1 = (ushort *)(uVar51 + 0x5a);
*puVar1 = *puVar1 + (ushort)(bVar11 < 0x39) * (((ushort)puVar21 & 3) - (*puVar1
& 3));
*puVar21 = *puVar21 & (uint)((int *)ppuVar42 + 1);
*puVar25 = *puVar25 & uVar51;
puVar15 = (uint *)(CONCAT31(uVar20,bVar11) & 0xffffff29);
*puVar25 = *puVar25 - (int)((int *)ppuVar42 + 1);
*(byte *)puVar25 = *(byte *)puVar25 & (byte)((uint)(iVar28 + -1) >> 8);
*(byte *)puVar25 = *(byte *)puVar25 ^ (byte)((uint)iVar28 >> 8);
puVar21 = (uint *)(iVar28 + (int)puVar15 * 2);
*puVar21 = *puVar21 ^ (uint)ppuVar38;
*puVar15 = *puVar15 & (uint)((int *)ppuVar42 + 1);
*puVar15 = *puVar15 - (int)puVar15;
cVar13 = (char)puVar15;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
*(char *)puVar15 = *(char *)puVar15 + cVar13;
pcVar41 = (char *)(iVar27 + 0x75);
*pcVar41 = *pcVar41 + (char)((uint)puVar25 >> 8);
} while ((POPCOUNT(*pcVar41) & 1U) != 0);
pcVar41 = (char *)((int)puVar43 + (uint)bVar48 * -2 + 1);
*(char *)puVar43 = cVar13;
iVar29 = CONCAT22((short)((uint)puVar25 >> 0x10),CONCAT11(0xb5,(char)puVar25));
ppuVar42 = (uint **)(pcVar41 + (uint)bVar48 * -2 + 1);
*pcVar41 = cVar13;
*ppuVar42 = *ppuVar38;
bVar11 = *(byte *)((int)puVar15 + iVar28 * 4 + -0x595a5266);
uVar30 = CONCAT31((int3)((uint)iVar27 >> 8),bVar11);
puVar25 = ppuVar38[(uint)bVar48 * -2 + 1];
puVar43 = (uint *)((int)ppuVar42 + (uint)bVar48 * -2 + (uint)bVar48 * -8 + 5);
puVar21 = (uint *)((int)(ppuVar38 + (uint)bVar48 * -2 + 1) +
(uint)bVar48 * -8 + (uint)bVar48 * -2 + (uint)bVar48 * -8 + 9);
puVar15 = puVar21 + (uint)bVar48 * -2 + 1;
uVar51 = *puVar21;
bVar19 = *(byte *)(uVar51 + 0x7973ad9e + iVar29 * 4);
puVar21 = (uint *)CONCAT31((int3)((uint)iVar29 >> 8),bVar19);
*puVar25 = *puVar25 ^ uVar51;
*(int *)(uVar51 - 4) = iVar28 + 1;
iVar28 = iVar28 + 2;
pbVar24 = (byte *)CONCAT31((int3)((uint)puVar25 >> 8),(char)puVar25 + -0x4a);
puVar25 = (uint *)(uVar51 - 4);
do {
puVar34 = puVar25;
puVar34[-1] = iVar28;
*(char *)(uVar30 + 0x4a) = *(char *)(uVar30 + 0x4a) + 'K';
pbVar26 = (byte *)(iVar28 + 0x2c528c34 + uVar30 * 2);
*pbVar26 = *pbVar26 ^ bVar19;
*(undefined2 *)(iVar28 + 0x24) = *(undefined2 *)(iVar28 + 0x24);
iVar28 = puVar34[-1];
*(byte *)puVar21 = *(byte *)puVar21 - bVar11;
*puVar21 = *puVar21 & uVar30;
*(uint *)(iVar28 + (int)pbVar24 * 2) = *(uint *)(iVar28 + (int)pbVar24 * 2) ^
(uint)puVar43;
puVar4 = (undefined *)*puVar21;
*puVar21 = *puVar21 - (int)puVar34;
bVar50 = *pbVar24 < bVar11 || (byte)(*pbVar24 - bVar11) < (puVar4 < puVar34);
*pbVar24 = (*pbVar24 - bVar11) - (puVar4 < puVar34);
bVar47 = *pbVar24 < bVar11 || (byte)(*pbVar24 - bVar11) < bVar50;
*pbVar24 = (*pbVar24 - bVar11) - bVar50;
bVar18 = (byte)pbVar24 - 0x21;
*(byte *)puVar21 = (*(byte *)puVar21 - bVar11) - ((byte)pbVar24 < 0x21 ||
bVar18 < bVar47);
pbVar24 = (byte *)(CONCAT31((int3)((uint)pbVar24 >> 8),bVar18 - bVar47) ^
0x31);
bVar18 = *pbVar24;
*pbVar24 = *pbVar24 - bVar11;
*(byte *)puVar21 = *(byte *)puVar21 + 0xb5 + (bVar18 < bVar11);
*(byte *)puVar21 = *(byte *)puVar21 & 0xb5;
iVar28 = *puVar34 + 1;
puVar25 = (uint *)(iVar28 + (int)pbVar24 * 2);
*puVar25 = *puVar25 ^ (uint)puVar43;
*(uint *)((int)puVar21 + (int)puVar15) = *(uint *)((int)puVar21 + (int)puVar15)
^ (uint)puVar15;
bVar12 = (byte)pbVar24;
*pbVar24 = *pbVar24 + bVar12;
*pbVar24 = *pbVar24 + bVar12;
*pbVar24 = *pbVar24 + bVar12;
*pbVar24 = *pbVar24 + bVar12;
*pbVar24 = *pbVar24 + bVar12;
*pbVar24 = *pbVar24 + bVar12;
*pbVar24 = *pbVar24 + bVar12;
*pbVar24 = *pbVar24 + bVar12;
*pbVar24 = *pbVar24 + bVar12;
*pbVar24 = *pbVar24 + bVar12;
*pbVar24 = *pbVar24 + bVar12;
*pbVar24 = *pbVar24 + bVar12;
*pbVar24 = *pbVar24 + bVar12;
*pbVar24 = *pbVar24 + bVar12;
*pbVar24 = *pbVar24 + bVar12;
*pbVar24 = *pbVar24 + bVar12;
*pbVar24 = *pbVar24 + bVar12;
*pbVar24 = *pbVar24 + bVar12;
*pbVar24 = *pbVar24 + bVar12;
*pbVar24 = *pbVar24 + bVar12;
bVar50 = CARRY1(*pbVar24,bVar12);
bVar18 = *pbVar24;
*pbVar24 = *pbVar24 + bVar12;
bVar2 = *pbVar24;
bVar3 = *pbVar24;
bVar47 = (POPCOUNT(*pbVar24) & 1U) == 0;
puVar25 = puVar34 + 1;
} while (!bVar50);
*puVar43 = *puVar15;
*puVar34 = (uint)(in_NT & 1) * 0x4000 | (uint)SCARRY1(bVar18,bVar12) * 0x800 |
(uint)bVar48 * 0x400 | (uint)(in_IF & 1) * 0x200 | (uint)(in_TF & 1) *
0x100 |
(uint)((char)bVar2 < '\0') * 0x80 | (uint)(bVar3 == 0) * 0x40 |
(uint)bVar49 * 0x10 |
(uint)bVar47 * 4 | (uint)bVar50 | (uint)(in_ID & 1) * 0x200000 |
(uint)(in_VIP & 1) * 0x100000 | (uint)(in_VIF & 1) * 0x80000 |
(uint)(in_AC & 1) * 0x40000;
puVar34[-1] = (uint)(in_NT & 1) * 0x4000 | (uint)SCARRY1(bVar18,bVar12) * 0x800 |
(uint)bVar48 * 0x400 | (uint)(in_IF & 1) * 0x200 | (uint)(in_TF &
1) * 0x100 |
(uint)((char)bVar2 < '\0') * 0x80 | (uint)(bVar3 == 0) * 0x40 |
(uint)bVar49 * 0x10
| (uint)bVar47 * 4 | (uint)bVar50 | (uint)(in_ID & 1) * 0x200000 |
(uint)(in_VIP & 1) * 0x100000 | (uint)(in_VIF & 1) * 0x80000 |
(uint)(in_AC & 1) * 0x40000;
pbVar24 = (byte *)((int)puVar34 + 0x241e3c9a);
*pbVar24 = *pbVar24 | 0x94;
puVar34[-2] = (uint)(in_NT & 1) * 0x4000 | (uint)bVar48 * 0x400 | (uint)(in_IF &
1) * 0x200 |
(uint)(in_TF & 1) * 0x100 | (uint)((char)*pbVar24 < '\0') * 0x80 |
(uint)(*pbVar24 == 0) * 0x40 | (uint)bVar49 * 0x10 |
(uint)((POPCOUNT(*pbVar24) & 1U) == 0) * 4 | (uint)(in_ID & 1) *
0x200000 |
(uint)(in_VIP & 1) * 0x100000 | (uint)(in_VIF & 1) * 0x80000 |
(uint)(in_AC & 1) * 0x40000;
puVar40 = (undefined4 *)((int)puVar43 + (uint)bVar48 * -2 + (uint)bVar48 * -8 +
5);
puVar37 = puVar40 + (uint)bVar48 * -2 + 1;
*puVar40 = *(undefined4 *)((int)puVar15 + (uint)bVar48 * -2 + (uint)bVar48 * -8 +
5);
*(undefined2 *)(puVar34 + -3) = uVar45;
uVar45 = 0x717b;
puVar25 = puVar34 + -4;
puVar34[-4] = (uint)&UNK_0040328a;
uVar52 = func_0x8479949c();
puVar16 = (undefined2 *)puVar25;
uVar9 = uVar52;
if ((POPCOUNT(*(byte *)((int)((ulonglong)uVar52 >> 0x20) + 0x4d) &
(byte)((ulonglong)uVar52 >> 0x20)) & 1U) != 0) goto
code_r0x004032d1;
do {
iVar28 = (int)((ulonglong)uVar52 >> 0x20);
bVar19 = (byte)((ulonglong)uVar52 >> 8);
*(byte *)(uVar30 + 0x52) = *(byte *)(uVar30 + 0x52) & bVar19;
*(char *)(uVar30 + 0x42) = *(char *)(uVar30 + 0x42) - bVar19;
puVar16 = (undefined2 *)((int)puVar25 + -4);
*(int *)((int)puVar25 + -4) = iVar28 + -1;
*(byte *)(uVar30 + 0x41b566fd) = *(byte *)(uVar30 + 0x41b566fd) ^ bVar11;
lVar5 = (longlong)*(int *)(iVar28 + 0x1b) * 0x4a;
piVar22 = (int *)lVar5;
*(byte *)piVar22 = (*(byte *)piVar22 - (char)((ulonglong)lVar5 >> 8)) -
((int)piVar22 != lVar5);
*(uint *)(iVar28 + 0x40) = *(uint *)(iVar28 + 0x40) & (uint)piVar22;
lVar6 = (longlong)*piVar22 * 0x14;
bVar50 = (int)lVar6 != lVar6;
bVar19 = *(byte *)piVar22;
bVar18 = *(byte *)piVar22 + (byte)lVar6;
*(byte *)piVar22 = bVar18 + bVar50;
cVar13 = (char)lVar5 + '\x10' + (CARRY1(bVar19,(byte)lVar6) ||
CARRY1(bVar18,bVar50));
puVar21 = (uint *)CONCAT31((int3)((ulonglong)lVar5 >> 8),cVar13);
uVar9 = CONCAT44((int)lVar6,puVar21);
*puVar21 = *puVar21 - (int)((int)puVar25 + -4);
*puVar21 = *puVar21 & uVar30;
*(byte *)puVar21 = *(char *)puVar21 - bVar11;
*(int *)((int)extraout_ECX_01 + -0x734a8ea6) =
*(int *)((int)extraout_ECX_01 + -0x734a8ea6) - (int)((int)puVar25 + -4);
*puVar21 = *puVar21 - (int)((int)puVar25 + -4);
*extraout_ECX_01 = *extraout_ECX_01 ^ (uint)puVar37;
*(char *)puVar21 = *(char *)puVar21 + cVar13;
*(char *)puVar21 = *(char *)puVar21 + cVar13;
*(char *)puVar21 = *(char *)puVar21 + cVar13;
*(char *)puVar21 = *(char *)puVar21 + cVar13;
*(char *)puVar21 = *(char *)puVar21 + cVar13;
code_r0x004032d1:
pcVar41 = (char *)((ulonglong)uVar9 >> 0x20);
puVar40 = (undefined4 *)uVar9;
uVar52 = CONCAT44(pcVar41,puVar16);
cVar13 = (char)uVar9;
*(char *)puVar40 = *(char *)puVar40 + cVar13;
*(char *)puVar40 = *(char *)puVar40 + cVar13;
*(char *)puVar40 = *(char *)puVar40 + cVar13;
*(char *)puVar40 = *(char *)puVar40 + cVar13;
*(char *)puVar40 = *(char *)puVar40 + cVar13;
*(char *)puVar40 = *(char *)puVar40 + cVar13;
*(char *)puVar40 = *(char *)puVar40 + cVar13;
*(char *)puVar40 = *(char *)puVar40 + cVar13;
*(char *)puVar40 = *(char *)puVar40 + cVar13;
*(char *)puVar40 = *(char *)puVar40 + cVar13;
*(char *)puVar40 = *(char *)puVar40 + cVar13;
*(char *)puVar40 = *(char *)puVar40 + cVar13;
*(char *)puVar40 = *(char *)puVar40 + cVar13;
*(char *)puVar40 = *(char *)puVar40 + cVar13;
*(char *)puVar40 = *(char *)puVar40 + cVar13;
*(char *)puVar40 = *(char *)puVar40 + cVar13;
cVar13 = *(char *)puVar40;
cVar10 = *(char *)puVar40;
bVar47 = (POPCOUNT(*(char *)puVar40) & 1U) == 0;
puVar25 = (uint *)((longlong)iRam8cb571d5 * -0x74);
bVar50 = (longlong)(int)puVar25 != (longlong)iRam8cb571d5 * -0x74;
} while (!bVar47);
puVar44 = puVar37 + (uint)bVar48 * -2 + 1;
puVar39 = puVar40 + (uint)bVar48 * -2 + 1;
*puVar37 = *puVar40;
if (bVar50) {
*(undefined2 *)(pcVar41 + uVar30 * 4 + -0x63615a6c) = uVar45;
*(uint *)((int)puVar25 + -4) =
(uint)(in_NT & 1) * 0x4000 | (uint)bVar50 * 0x800 | (uint)bVar48 * 0x400 |
(uint)(in_IF & 1) * 0x200 | (uint)(in_TF & 1) * 0x100 | (uint)(cVar13 < '\
0') * 0x80 |
(uint)(cVar10 == '\0') * 0x40 | (uint)(bVar49 & 1) * 0x10 | (uint)bVar47 *
4 | (uint)bVar50
| (uint)(in_ID & 1) * 0x200000 | (uint)(in_VIP & 1) * 0x100000 |
(uint)(in_VIF & 1) * 0x80000 | (uint)(in_AC & 1) * 0x40000;
puVar40 = puVar39 + (uint)bVar48 * -2 + 1;
*(undefined2 *)((int)puVar25 + -8) = uVar45;
uVar45 = 0x8a7b;
puVar35 = (undefined *)((int)puVar25 + -0xc);
*(undefined **)((int)puVar25 + -0xc) = &UNK_0040330e;
func_0xad969c8c();
puVar21 = (uint *)CONCAT22((short)((uint)extraout_ECX_02 >> 0x10),(ushort)
(byte)extraout_ECX_02)
;
puVar39 = (undefined4 *)((int)puVar40 + (uint)bVar48 * -8 + (uint)bVar48 * -2 +
5);
puVar1 = (ushort *)((int)puVar39 + -0x7b867b5b);
*puVar1 = *puVar1 + (ushort)(*(byte *)puVar40 < *(byte *)puVar44) *
(((ushort)uVar30 & 3) - (*puVar1 & 3));
puVar16 = (undefined2 *)(puVar35 + -4);
*(undefined4 *)(puVar35 + -4) = 0x8cb5715a;
iVar28 = *(int *)(extraout_EDX_00 + 0x3b);
*(int *)(puVar35 + -8) = extraout_EDX_00 + -2;
puVar25 = (uint *)(iVar28 * 0x6b & 0xffffff42);
*(undefined2 *)puVar25 = *(undefined2 *)puVar25;
lVar5 = (longlong)*(int *)(uVar30 + 0x45) * -0x6c;
puVar17 = (undefined2 *)puVar25;
puVar36 = (undefined2 *)(puVar35 + -8);
if ((int)lVar5 != lVar5) {
bVar50 = false;
pcVar41 = *(char **)(puVar35 + -8);
uRamefe7de94 = SUB41(puVar35 + -4,0);
puVar44 = (undefined4 *)((int)puVar44 + (uint)bVar48 * -2 + 1);
goto code_r0x0040333f;
}
}
else {
cVar13 = (char)puVar16;
*(char *)puVar16 = *(char *)puVar16 + cVar13;
*(char *)puVar16 = *(char *)puVar16 + cVar13;
*(char *)puVar16 = *(char *)puVar16 + cVar13;
*(char *)puVar16 = *(char *)puVar16 + cVar13;
pbVar24 = (byte *)(uVar30 + 0x75);
bVar19 = (byte)((uint)extraout_ECX_01 >> 8);
bVar50 = CARRY1(*pbVar24,bVar19);
*pbVar24 = *pbVar24 + bVar19;
puVar21 = extraout_ECX_01;
if ((POPCOUNT(*pbVar24) & 1U) == 0) goto code_r0x00403382;
code_r0x0040333f:
pbVar26 = (byte *)CONCAT22((short)((uint)puVar21 >> 0x10),CONCAT11(0xb2,
(char)puVar21));
*puVar44 = *puVar39;
pbVar24 = (byte *)((int)puVar16 + (int)pcVar41);
bVar19 = (byte)pcVar41;
bVar48 = CARRY1(*pbVar24,bVar19) || CARRY1(*pbVar24 + bVar19,bVar50);
*pbVar24 = *pbVar24 + bVar19 + bVar50;
pbVar24 = (byte *)((int)puVar16 + (int)pcVar41);
bVar50 = CARRY1(*pbVar24,bVar19) || CARRY1(*pbVar24 + bVar19,bVar48);
*pbVar24 = *pbVar24 + bVar19 + bVar48;
bVar48 = *pbVar26 < bVar11 || (byte)(*pbVar26 - bVar11) < bVar50;
*pbVar26 = (*pbVar26 - bVar11) - bVar50;
bVar19 = *(byte *)puVar16;
bVar49 = *(byte *)puVar16;
*(byte *)puVar16 = (bVar49 - bVar11) - bVar48;
*pbVar26 = (*pbVar26 + 0x4e) - (bVar19 < bVar11 || (byte)(bVar49 - bVar11) <
bVar48);
cVar13 = (char)puVar16;
*pcVar41 = *pcVar41 - cVar13;
*(byte *)puVar16 = *(byte *)puVar16 + cVar13;
*(byte *)puVar16 = *(byte *)puVar16 + cVar13;
*(byte *)puVar16 = *(byte *)puVar16 + cVar13;
*(byte *)puVar16 = *(byte *)puVar16 + cVar13;
*(byte *)puVar16 = *(byte *)puVar16 + cVar13;
*(byte *)puVar16 = *(byte *)puVar16 + cVar13;
*(byte *)puVar16 = *(byte *)puVar16 + cVar13;
*(byte *)puVar16 = *(byte *)puVar16 + cVar13;
*(byte *)puVar16 = *(byte *)puVar16 + cVar13;
*(byte *)puVar16 = *(byte *)puVar16 + cVar13;
*(byte *)puVar16 = *(byte *)puVar16 + cVar13;
*(byte *)puVar16 = *(byte *)puVar16 + cVar13;
*(byte *)puVar16 = *(byte *)puVar16 + cVar13;
*(byte *)puVar16 = *(byte *)puVar16 + cVar13;
*(byte *)puVar16 = *(byte *)puVar16 + cVar13;
*(byte *)puVar16 = *(byte *)puVar16 + cVar13;
*(byte *)puVar16 = *(byte *)puVar16 + cVar13;
*(byte *)puVar16 = *(byte *)puVar16 + cVar13;
*(byte *)puVar16 = *(byte *)puVar16 + cVar13;
*(byte *)puVar16 = *(byte *)puVar16 + cVar13;
*(byte *)puVar16 = *(byte *)puVar16 + cVar13;
puVar17 = puVar16;
puVar36 = (undefined2 *)puVar25;
}
*(byte *)puVar17 = *(byte *)puVar17 + (char)puVar17;
puVar25 = (uint *)puVar36;
code_r0x00403382:
*(undefined2 *)((int)puVar25 + -4) = uVar45;
*(undefined **)((int)puVar25 + -8) = &UNK_0040338c;
func_0xb5a28c8c();
/* WARNING: Bad instruction - Truncating control flow here */
halt_baddata();
LAB_00402ca0+4:
unaff_EDI = puVar25;
if ((longlong)(int)&stack0x00000000 == (longlong)iVar28 * 0x16c40000 &&
puVar37 != (undefined4 *)0x1) {
code_r0x00402ce8:
*pcVar41 = *pcVar41 + (char)pcVar41;
*pcVar41 = *pcVar41 + (char)pcVar41;
*(uint *)pcVar41 = *(uint *)pcVar41 ^ (uint)pcVar41;
*(char *)puVar25 = DAT_4fedee93;
/* WARNING: Bad instruction - Truncating control flow here */
halt_baddata();
}
goto code_r0x00402ca6;
}

You might also like