int __cdecl BATTLE_AttributeMsg(int a1, _DWORD *a2, int a3)
{
int savedregs;
int savedregsa;
int v5;
bool v6;
bool v7;
unsigned __int8 v8;
int savedregsb;
int v10;
int savedregsc;
int v12;
bool v13;
long double v14;
long double v15;
long double v16;
long double v17;
int result;
__int16 v19;
bool v20;
char v21;
bool v22;
int savedregsd;
int v24;
int savedregse;
int savedregsf;
int savedregsg;
int savedregsh;
int savedregsi;
int savedregsj;
int savedregsk;
int savedregsl;
int savedregsm;
int savedregsn;
int savedregso;
int savedregsp;
int v37;
bool v38;
bool v39;
unsigned __int8 v40;
int savedregsq;
int v42;
int savedregsr;
int v44;
int savedregss;
int v46;
int savedregst;
int v48;
int savedregsu;
int savedregsv;
int savedregsw;
int savedregsx;
int savedregsy;
int savedregsz;
int savedregsba;
int savedregsbb;
int savedregsbc;
int savedregsbd;
int savedregsbe;
int savedregsbf;
int savedregsbg;
int savedregsbh;
int savedregsbi;
int savedregsbj;
int savedregsbk;
int savedregsbl;
int savedregsbm;
int savedregsbn;
int savedregsbo;
int savedregsbp;
int savedregsbq;
int savedregsbr;
int savedregsbs;
int savedregsbt;
int savedregsbu;
int savedregsbv;
int savedregsbw;
int savedregsbx;
int savedregsby;
int savedregsbz;
int savedregsca;
int savedregscb;
int savedregscc;
int v84;
int savedregscd;
int v86;
int savedregsce;
int v88;
int savedregscf;
int savedregscg;
int savedregsch;
int savedregsci;
long double v93;
bool v94;
int v95;
signed int v96;
int v97;
_DWORD *v98;
savedregs = a3;
switch ( ENEMYMSG_getInt() )
{
case 0:
case 28:
goto LABEL_101;
case 1:
savedregsa = 0;
v5 = RAND();
v8 = __OFSUB__(v5, 75);
v6 = v5 == 75;
v7 = v5 - 75 < 0;
goto LABEL_33;
case 2:
savedregsb = 0;
v10 = RAND();
v8 = __OFSUB__(v10, 50);
v6 = v10 == 50;
v7 = v10 - 50 < 0;
goto LABEL_33;
case 3:
savedregsc = 0;
v12 = RAND();
v8 = __OFSUB__(v12, 25);
v6 = v12 == 25;
v7 = v12 - 25 < 0;
goto LABEL_33;
case 4:
v13 = a2[12] == a2[291];
goto LABEL_97;
case 5:
v14 = (long double)(signed int)a2[12];
v15 = 0.75 * (long double)(signed int)a2[291];
goto LABEL_11;
case 6:
v14 = (long double)(signed int)a2[12];
v15 = 0.5 * (long double)(signed int)a2[291];
goto LABEL_11;
case 7:
v16 = (long double)(signed int)a2[12];
v17 = 0.5 * (long double)(signed int)a2[291];
goto LABEL_14;
case 8:
v16 = (long double)(signed int)a2[12];
v17 = 0.25 * (long double)(signed int)a2[291];
goto LABEL_14;
case 9:
v14 = (long double)(signed int)a2[13];
v15 = 0.5 * (long double)(signed int)a2[292];
LABEL_11:
if ( v14 < v15 )
goto LABEL_12;
goto LABEL_101;
case 10:
v16 = (long double)(signed int)a2[13];
v17 = 0.5 * (long double)(signed int)a2[292];
LABEL_14:
v20 = v16 < v17;
v21 = 0;
v22 = v16 == v17;
if ( (HIBYTE(v19) & 0x45) != 1 )
goto LABEL_12;
goto LABEL_101;
case 11:
savedregsd = a1;
v24 = BATTLE_Ai_Lphalf();
goto LABEL_67;
case 12:
savedregse = a1;
v24 = BATTLE_Ai_Lphalf();
goto LABEL_67;
case 13:
savedregsf = a1;
v24 = BATTLE_Ai_Status();
goto LABEL_67;
case 14:
savedregsg = a1;
v24 = BATTLE_Ai_Status();
goto LABEL_67;
case 15:
savedregsh = a1;
v24 = BATTLE_Ai_Status();
goto LABEL_67;
case 16:
savedregsi = a1;
v24 = BATTLE_Ai_Status();
goto LABEL_67;
case 17:
savedregsj = a1;
v24 = BATTLE_Ai_Status();
goto LABEL_67;
case 18:
savedregsk = a1;
v24 = BATTLE_Ai_Status();
goto LABEL_67;
case 19:
savedregsl = a1;
v13 = BATTLE_Ai_NumberCheck() == 0;
goto LABEL_97;
case 20:
savedregsm = a1;
v13 = BATTLE_Ai_NumberCheck() == 1;
goto LABEL_97;
case 21:
savedregsn = a1;
v13 = BATTLE_Ai_NumberCheck() == 2;
goto LABEL_97;
case 22:
savedregso = a1;
v13 = BATTLE_Ai_NumberCheck() == 10;
goto LABEL_97;
case 23:
savedregsp = a1;
v37 = BATTLE_Ai_NumberCheck();
v40 = __OFSUB__(v37, 7);
v38 = v37 == 7;
v39 = v37 - 7 < 0;
goto LABEL_76;
case 24:
savedregsq = a1;
v42 = BATTLE_Ai_NumberCheck();
v40 = __OFSUB__(v42, 4);
v38 = v42 == 4;
v39 = v42 - 4 < 0;
goto LABEL_76;
case 25:
savedregsr = a1;
v44 = BATTLE_Ai_NumberCheck();
v8 = __OFSUB__(v44, 4);
v6 = v44 == 4;
v7 = v44 - 4 < 0;
goto LABEL_33;
case 26:
savedregss = a1;
v46 = BATTLE_Ai_NumberCheck();
v8 = __OFSUB__(v46, 3);
v6 = v46 == 3;
v7 = v46 - 3 < 0;
goto LABEL_33;
case 27:
savedregst = a1;
v48 = BATTLE_Ai_NumberCheck();
v8 = __OFSUB__(v48--, 1);
v6 = v48 == 0;
v7 = v48 < 0;
LABEL_33:
if ( !((unsigned __int8)(v7 ^ v8) | v6) )
goto LABEL_12;
goto LABEL_101;
case 29:
savedregsu = a1;
v13 = BATTLE_Ai_LevelCheck() == 0;
goto LABEL_97;
case 30:
savedregsv = a1;
v13 = BATTLE_Ai_LevelCheck() == 1;
goto LABEL_97;
case 31:
savedregsw = a1;
v24 = BATTLE_Ai_LphalfEnemy();
goto LABEL_67;
case 32:
savedregsx = a1;
v24 = BATTLE_Ai_LphalfEnemy();
goto LABEL_67;
case 33:
savedregsy = a1;
v24 = BATTLE_Ai_LphalfEnemy();
goto LABEL_67;
case 34:
savedregsz = a1;
v24 = BATTLE_Ai_LphalfEnemy();
goto LABEL_67;
case 35:
savedregsba = a1;
v24 = BATTLE_Ai_LphalfEnemy();
goto LABEL_67;
case 36:
savedregsbb = a1;
v24 = BATTLE_Ai_Wepon();
goto LABEL_67;
case 37:
savedregsbc = a1;
v13 = BATTLE_Ai_Wepon() == -1;
goto LABEL_97;
case 38:
savedregsbd = a1;
v24 = BATTLE_Ai_Status();
goto LABEL_67;
case 39:
savedregsbe = a1;
v24 = BATTLE_Ai_Status();
goto LABEL_67;
case 40:
savedregsbf = a1;
v24 = BATTLE_Ai_Status();
goto LABEL_67;
case 41:
savedregsbg = a1;
v24 = BATTLE_Ai_Status();
goto LABEL_67;
case 42:
savedregsbh = a1;
v24 = BATTLE_Ai_Status();
goto LABEL_67;
case 43:
savedregsbi = a1;
v24 = BATTLE_Ai_Status();
goto LABEL_67;
case 44:
savedregsbj = a1;
v24 = BATTLE_Ai_Status();
goto LABEL_67;
case 45:
savedregsbk = a1;
v24 = BATTLE_Ai_Status();
goto LABEL_67;
case 46:
savedregsbl = a1;
v24 = BATTLE_Ai_Status();
goto LABEL_67;
case 47:
savedregsbm = a1;
v24 = BATTLE_Ai_Status();
goto LABEL_67;
case 48:
savedregsbn = a1;
v24 = BATTLE_Ai_Status();
goto LABEL_67;
case 49:
savedregsbo = a1;
v24 = BATTLE_Ai_Status();
goto LABEL_67;
case 50:
savedregsbp = a1;
v24 = BATTLE_Ai_LpRecovery();
goto LABEL_67;
case 51:
savedregsbq = a1;
v24 = BATTLE_Ai_MagicReflect();
goto LABEL_67;
case 52:
savedregsbr = a1;
v24 = BATTLE_Ai_MagicReflect();
goto LABEL_67;
case 53:
savedregsbs = a1;
v24 = BATTLE_Ai_PhysicsReflect();
goto LABEL_67;
case 54:
savedregsbt = a1;
v24 = BATTLE_Ai_PhysicsReflect();
goto LABEL_67;
case 55:
savedregsbu = a1;
v13 = BATTLE_Ai_OddEven() == 0;
goto LABEL_97;
case 56:
savedregsbv = a1;
v13 = BATTLE_Ai_OddEven() == 1;
goto LABEL_97;
case 57:
savedregsbw = a1;
v13 = BATTLE_Ai_OddEven() == 3;
goto LABEL_97;
case 58:
v13 = BATTLE_Ai_NowTime() == 0;
goto LABEL_97;
case 59:
v13 = BATTLE_Ai_NowTime() == 2;
goto LABEL_97;
case 60:
savedregsbx = a1;
v24 = BATTLE_Ai_PlayerAndPet();
LABEL_67:
if ( v24 <= 0 )
goto LABEL_12;
goto LABEL_101;
case 61:
savedregsby = a1;
v13 = BATTLE_Ai_PlayerAndPet() == -1;
goto LABEL_97;
case 62:
case 63:
case 64:
case 65:
case 66:
case 67:
case 68:
case 69:
case 70:
case 71:
savedregsbz = a1;
result = BATTLE_Ai_Being();
goto LABEL_100;
case 72:
case 73:
case 74:
case 75:
case 76:
case 77:
case 78:
case 79:
case 80:
case 81:
savedregsca = a1;
result = BATTLE_Ai_NoBeing();
goto LABEL_100;
case 82:
savedregscb = a1;
v13 = BATTLE_Ai_PlayerNumberCheck() == 1;
goto LABEL_97;
case 83:
savedregscc = a1;
v84 = BATTLE_Ai_PlayerNumberCheck();
v40 = __OFSUB__(v84--, 1);
v38 = v84 == 0;
v39 = v84 < 0;
goto LABEL_76;
case 84:
savedregscd = a1;
v86 = BATTLE_Ai_PlayerNumberCheck();
v40 = __OFSUB__(v86, 2);
v38 = v86 == 2;
v39 = v86 - 2 < 0;
goto LABEL_76;
case 85:
savedregsce = a1;
v88 = BATTLE_Ai_PlayerNumberCheck();
v40 = __OFSUB__(v88, 3);
v38 = v88 == 3;
v39 = v88 - 3 < 0;
LABEL_76:
if ( (unsigned __int8)(v39 ^ v40) | v38 )
goto LABEL_12;
goto LABEL_101;
case 86:
savedregscf = a1;
v13 = BATTLE_Ai_PlayerNumberCheck() == 5;
goto LABEL_97;
case 87:
savedregscg = a1;
v13 = BATTLE_Ai_OddEven() == 4;
goto LABEL_97;
case 88:
savedregsch = a1;
v13 = BATTLE_Ai_OddEven() == 5;
goto LABEL_97;
case 89:
savedregsci = a1;
v13 = BATTLE_Ai_SelectTurn() == 1;
goto LABEL_97;
case 90:
v93 = 0.25;
goto LABEL_85;
case 91:
v93 = 0.15;
goto LABEL_85;
case 92:
v93 = 0.05;
LABEL_85:
if ( (long double)(signed int)a2[13] >= v93 * (long double)(signed int)a2[292] )
goto LABEL_12;
goto LABEL_101;
case 93:
v94 = *(_DWORD *)(BattleArray + 5188 * a1 + 4 + 2408 * (*(_DWORD *)(BattleArray + 5188 * a1 + 100) ^ 1) + 2512) == 0;
goto LABEL_94;
case 95:
v95 = BattleArray + 5188 * a1 + 2408 * (*(_DWORD *)(BattleArray + 5188 * a1 + 100) ^ 1);
v96 = 0;
v97 = v95 + 128;
if ( a2 != *(_DWORD **)(v95 + 128) )
{
v98 = (_DWORD *)(v95 + 128);
do
{
++v96;
v98 += 52;
}
while ( v96 <= 9 && a2 != (_DWORD *)*v98 );
}
if ( v96 > 9 )
goto LABEL_12;
v94 = *(_DWORD *)(v97 + 208 * v96 + 192) == 0;
LABEL_94:
if ( v94 )
goto LABEL_12;
goto LABEL_101;
case 96:
v13 = *(_DWORD *)(BattleArray + 5188 * a1 + 108) == -1;
LABEL_97:
if ( !v13 )
goto LABEL_12;
goto LABEL_101;
case 97:
result = *(_DWORD *)(BattleArray + 5188 * a1 + 108);
LABEL_100:
if ( result != -1 )
LABEL_101:
result = 1;
break;
default:
LABEL_12:
result = -1;
break;
}
return result;
}