Skip to content

Instantly share code, notes, and snippets.

@leoetlino
Created January 19, 2019 14:22
Show Gist options
  • Save leoetlino/7ab6454b65f610ed5d6b8e8b98dbe836 to your computer and use it in GitHub Desktop.
Save leoetlino/7ab6454b65f610ed5d6b8e8b98dbe836 to your computer and use it in GitHub Desktop.
bool __fastcall aoc2::rankUpEnemy(aoc2 *this, const sead::SafeString *enemy, PlacementObj *placementObj, char **newEnemyName)
{
// [COLLAPSED LOCAL DECLARATIONS. PRESS KEYPAD CTRL-"+" TO EXPAND]
if ( HIBYTE(placementObj->flags) & PlacementObjFlags_8
|| placementObj->hardModeFlags & PlacementObjHardModeFlags_DisableRankUp )
{
return 0;
}
if ( sead::SafeStringBase<char>::cNullChar == 0x45 )
{
LABEL_7:
if ( aoc2::isDungeon7Or8Or135(this) )
return 0;
newEnemy.vptr = &sead::SafeString::vt;
newEnemy.cstr = zero;
if ( sead::SafeStringBase<char>::cNullChar != 0x45 )
{
v11 = enemy->cstr;
v12 = "nemy";
v13 = 0x45;
while ( (unsigned __int8)*v11 == v13 )
{
v14 = (unsigned __int8)*v12++;
v13 = v14;
++v11;
if ( v14 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_14;
}
return 0;
}
LABEL_14:
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v15 = enemy->cstr;
if ( v15 == "Enemy_Assassin_Junior" )
{
LABEL_37:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Assassin_Middle";
}
else
{
v16 = 0LL;
do
{
v17 = (unsigned __int8)v15[v16];
if ( v17 != (unsigned __int8)aEnemyAssassinJ[v16] )
break;
if ( v17 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_37;
++v16;
}
while ( v16 < 0x80001 );
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v18 = enemy->cstr;
if ( v18 == "Enemy_Assassin_Middle" )
{
LABEL_39:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Assassin_Senior";
}
else
{
v19 = 0LL;
do
{
v20 = (unsigned __int8)v18[v19];
if ( v20 != (unsigned __int8)aEnemyAssassinM[v19] )
break;
if ( v20 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_39;
++v19;
}
while ( v19 < 0x80001 );
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v21 = enemy->cstr;
if ( v21 == "Enemy_Assassin_Shooter_Junior" )
{
LABEL_47:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Assassin_Shooter_Azito_Junior";
}
else
{
v22 = 0LL;
do
{
v23 = (unsigned __int8)v21[v22];
if ( v23 != (unsigned __int8)aEnemyAssassinS[v22] )
break;
if ( v23 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_47;
++v22;
}
while ( v22 < 0x80001 );
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v24 = enemy->cstr;
if ( v24 == "Enemy_Bokoblin_Junior" )
{
LABEL_48:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Bokoblin_Middle";
}
else
{
v25 = 0LL;
do
{
v26 = (unsigned __int8)v24[v25];
if ( v26 != (unsigned __int8)aEnemyBokoblinJ[v25] )
break;
if ( v26 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_48;
++v25;
}
while ( v25 < 0x80001 );
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Bokoblin_Middle";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v27 = enemy->cstr;
sead::SafeStringBase<char>::assureTerminationImpl_(&_newEnemy);
if ( v27 == _newEnemy.cstr )
{
LABEL_46:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Bokoblin_Senior";
}
else
{
v28 = enemy->cstr;
for ( i = 1LL; ; i += 2LL )
{
v31 = (unsigned __int8)v28[i - 1];
if ( v31 != (unsigned __int8)_newEnemy.cstr[i - 1] )
break;
if ( v31 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_46;
if ( i >= 0x80001 )
break;
v32 = (unsigned __int8)v28[i];
if ( v32 != (unsigned __int8)_newEnemy.cstr[i] )
break;
if ( v32 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_46;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Bokoblin_Senior";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v33 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v33 == _newEnemy.cstr )
{
LABEL_61:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Bokoblin_Dark";
}
else
{
v34 = enemy->cstr;
for ( j = 1LL; ; j += 2LL )
{
v36 = (unsigned __int8)v34[j - 1];
if ( v36 != (unsigned __int8)_newEnemy.cstr[j - 1] )
break;
if ( v36 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_61;
if ( j >= 0x80001 )
break;
v37 = (unsigned __int8)v34[j];
if ( v37 != (unsigned __int8)_newEnemy.cstr[j] )
break;
if ( v37 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_61;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Bokoblin_Dark";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v38 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v38 == _newEnemy.cstr )
{
LABEL_70:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Bokoblin_Gold";
}
else
{
v39 = enemy->cstr;
for ( k = 1LL; ; k += 2LL )
{
v41 = (unsigned __int8)v39[k - 1];
if ( v41 != (unsigned __int8)_newEnemy.cstr[k - 1] )
break;
if ( v41 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_70;
if ( k >= 0x80001 )
break;
v42 = (unsigned __int8)v39[k];
if ( v42 != (unsigned __int8)_newEnemy.cstr[k] )
break;
if ( v42 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_70;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Bokoblin_Guard_Junior";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v43 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v43 == _newEnemy.cstr )
{
LABEL_79:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Bokoblin_Guard_Middle";
}
else
{
v44 = enemy->cstr;
for ( l = 1LL; ; l += 2LL )
{
v46 = (unsigned __int8)v44[l - 1];
if ( v46 != (unsigned __int8)_newEnemy.cstr[l - 1] )
break;
if ( v46 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_79;
if ( l >= 0x80001 )
break;
v47 = (unsigned __int8)v44[l];
if ( v47 != (unsigned __int8)_newEnemy.cstr[l] )
break;
if ( v47 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_79;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Bokoblin_Guard_Junior_Ambush";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v48 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v48 == _newEnemy.cstr )
goto LABEL_106;
v49 = enemy->cstr;
for ( m = 1LL; ; m += 2LL )
{
v51 = (unsigned __int8)v49[m - 1];
if ( v51 != (unsigned __int8)_newEnemy.cstr[m - 1] )
break;
if ( v51 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_106;
if ( m >= 0x80001 )
break;
v52 = (unsigned __int8)v49[m];
if ( v52 != (unsigned __int8)_newEnemy.cstr[m] )
break;
if ( v52 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_106;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Bokoblin_Guard_Junior_TreeHouseTop";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v53 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v53 == _newEnemy.cstr )
{
LABEL_97:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Bokoblin_Guard_Middle_TreeHouseTop";
goto LABEL_49;
}
v54 = enemy->cstr;
for ( n = 1LL; ; n += 2LL )
{
v56 = (unsigned __int8)v54[n - 1];
if ( v56 != (unsigned __int8)_newEnemy.cstr[n - 1] )
break;
if ( v56 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_97;
if ( n >= 0x80001 )
break;
v57 = (unsigned __int8)v54[n];
if ( v57 != (unsigned __int8)_newEnemy.cstr[n] )
break;
if ( v57 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_97;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Bokoblin_Guard_Junior_Ambush";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v58 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v58 == _newEnemy.cstr )
{
LABEL_106:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Bokoblin_Guard_Middle_Ambush";
goto LABEL_49;
}
v59 = enemy->cstr;
for ( ii = 1LL; ; ii += 2LL )
{
v61 = (unsigned __int8)v59[ii - 1];
if ( v61 != (unsigned __int8)_newEnemy.cstr[ii - 1] )
break;
if ( v61 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_106;
if ( ii >= 0x80001 )
break;
v62 = (unsigned __int8)v59[ii];
if ( v62 != (unsigned __int8)_newEnemy.cstr[ii] )
break;
if ( v62 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_106;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Chuchu_Electric_Junior";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v63 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v63 == _newEnemy.cstr )
{
LABEL_115:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Chuchu_Electric_Middle";
}
else
{
v64 = enemy->cstr;
for ( jj = 1LL; ; jj += 2LL )
{
v66 = (unsigned __int8)v64[jj - 1];
if ( v66 != (unsigned __int8)_newEnemy.cstr[jj - 1] )
break;
if ( v66 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_115;
if ( jj >= 0x80001 )
break;
v67 = (unsigned __int8)v64[jj];
if ( v67 != (unsigned __int8)_newEnemy.cstr[jj] )
break;
if ( v67 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_115;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Chuchu_Electric_Middle";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v68 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v68 == _newEnemy.cstr )
{
LABEL_124:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Chuchu_Electric_Senior";
}
else
{
v69 = enemy->cstr;
for ( kk = 1LL; ; kk += 2LL )
{
v71 = (unsigned __int8)v69[kk - 1];
if ( v71 != (unsigned __int8)_newEnemy.cstr[kk - 1] )
break;
if ( v71 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_124;
if ( kk >= 0x80001 )
break;
v72 = (unsigned __int8)v69[kk];
if ( v72 != (unsigned __int8)_newEnemy.cstr[kk] )
break;
if ( v72 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_124;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Chuchu_Fire_Junior";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v73 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v73 == _newEnemy.cstr )
{
LABEL_133:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Chuchu_Fire_Middle";
}
else
{
v74 = enemy->cstr;
for ( ll = 1LL; ; ll += 2LL )
{
v76 = (unsigned __int8)v74[ll - 1];
if ( v76 != (unsigned __int8)_newEnemy.cstr[ll - 1] )
break;
if ( v76 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_133;
if ( ll >= 0x80001 )
break;
v77 = (unsigned __int8)v74[ll];
if ( v77 != (unsigned __int8)_newEnemy.cstr[ll] )
break;
if ( v77 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_133;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Chuchu_Fire_Middle";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v78 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v78 == _newEnemy.cstr )
{
LABEL_142:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Chuchu_Fire_Senior";
}
else
{
v79 = enemy->cstr;
for ( mm = 1LL; ; mm += 2LL )
{
v81 = (unsigned __int8)v79[mm - 1];
if ( v81 != (unsigned __int8)_newEnemy.cstr[mm - 1] )
break;
if ( v81 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_142;
if ( mm >= 0x80001 )
break;
v82 = (unsigned __int8)v79[mm];
if ( v82 != (unsigned __int8)_newEnemy.cstr[mm] )
break;
if ( v82 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_142;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Chuchu_Ice_Junior";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v83 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v83 == _newEnemy.cstr )
{
LABEL_151:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Chuchu_Ice_Middle";
}
else
{
v84 = enemy->cstr;
for ( nn = 1LL; ; nn += 2LL )
{
v86 = (unsigned __int8)v84[nn - 1];
if ( v86 != (unsigned __int8)_newEnemy.cstr[nn - 1] )
break;
if ( v86 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_151;
if ( nn >= 0x80001 )
break;
v87 = (unsigned __int8)v84[nn];
if ( v87 != (unsigned __int8)_newEnemy.cstr[nn] )
break;
if ( v87 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_151;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Chuchu_Ice_Middle";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v88 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v88 == _newEnemy.cstr )
{
LABEL_160:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Chuchu_Ice_Senior";
}
else
{
v89 = enemy->cstr;
for ( i1 = 1LL; ; i1 += 2LL )
{
v91 = (unsigned __int8)v89[i1 - 1];
if ( v91 != (unsigned __int8)_newEnemy.cstr[i1 - 1] )
break;
if ( v91 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_160;
if ( i1 >= 0x80001 )
break;
v92 = (unsigned __int8)v89[i1];
if ( v92 != (unsigned __int8)_newEnemy.cstr[i1] )
break;
if ( v92 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_160;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Chuchu_Junior";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v93 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v93 == _newEnemy.cstr )
{
LABEL_169:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Chuchu_Middle";
}
else
{
v94 = enemy->cstr;
for ( i2 = 1LL; ; i2 += 2LL )
{
v96 = (unsigned __int8)v94[i2 - 1];
if ( v96 != (unsigned __int8)_newEnemy.cstr[i2 - 1] )
break;
if ( v96 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_169;
if ( i2 >= 0x80001 )
break;
v97 = (unsigned __int8)v94[i2];
if ( v97 != (unsigned __int8)_newEnemy.cstr[i2] )
break;
if ( v97 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_169;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Chuchu_Middle";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v98 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v98 == _newEnemy.cstr )
{
LABEL_178:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Chuchu_Senior";
}
else
{
v99 = enemy->cstr;
for ( i3 = 1LL; ; i3 += 2LL )
{
v101 = (unsigned __int8)v99[i3 - 1];
if ( v101 != (unsigned __int8)_newEnemy.cstr[i3 - 1] )
break;
if ( v101 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_178;
if ( i3 >= 0x80001 )
break;
v102 = (unsigned __int8)v99[i3];
if ( v102 != (unsigned __int8)_newEnemy.cstr[i3] )
break;
if ( v102 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_178;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Giant_Junior";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v103 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v103 == _newEnemy.cstr )
{
LABEL_187:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Giant_Middle";
}
else
{
v104 = enemy->cstr;
for ( i4 = 1LL; ; i4 += 2LL )
{
v106 = (unsigned __int8)v104[i4 - 1];
if ( v106 != (unsigned __int8)_newEnemy.cstr[i4 - 1] )
break;
if ( v106 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_187;
if ( i4 >= 0x80001 )
break;
v107 = (unsigned __int8)v104[i4];
if ( v107 != (unsigned __int8)_newEnemy.cstr[i4] )
break;
if ( v107 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_187;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Giant_Middle";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v108 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v108 == _newEnemy.cstr )
{
LABEL_196:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Giant_Senior";
}
else
{
v109 = enemy->cstr;
for ( i5 = 1LL; ; i5 += 2LL )
{
v111 = (unsigned __int8)v109[i5 - 1];
if ( v111 != (unsigned __int8)_newEnemy.cstr[i5 - 1] )
break;
if ( v111 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_196;
if ( i5 >= 0x80001 )
break;
v112 = (unsigned __int8)v109[i5];
if ( v112 != (unsigned __int8)_newEnemy.cstr[i5] )
break;
if ( v112 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_196;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Golem_Junior";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v113 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v113 == _newEnemy.cstr )
{
LABEL_205:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Golem_Middle";
}
else
{
v114 = enemy->cstr;
for ( i6 = 1LL; ; i6 += 2LL )
{
v116 = (unsigned __int8)v114[i6 - 1];
if ( v116 != (unsigned __int8)_newEnemy.cstr[i6 - 1] )
break;
if ( v116 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_205;
if ( i6 >= 0x80001 )
break;
v117 = (unsigned __int8)v114[i6];
if ( v117 != (unsigned __int8)_newEnemy.cstr[i6] )
break;
if ( v117 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_205;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Golem_Middle";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v118 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v118 == _newEnemy.cstr )
{
LABEL_214:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Golem_Senior";
}
else
{
v119 = enemy->cstr;
for ( i7 = 1LL; ; i7 += 2LL )
{
v121 = (unsigned __int8)v119[i7 - 1];
if ( v121 != (unsigned __int8)_newEnemy.cstr[i7 - 1] )
break;
if ( v121 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_214;
if ( i7 >= 0x80001 )
break;
v122 = (unsigned __int8)v119[i7];
if ( v122 != (unsigned __int8)_newEnemy.cstr[i7] )
break;
if ( v122 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_214;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Guardian_Mini_Baby";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v123 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v123 == _newEnemy.cstr )
{
LABEL_223:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Guardian_Mini_Junior";
}
else
{
v124 = enemy->cstr;
for ( i8 = 1LL; ; i8 += 2LL )
{
v126 = (unsigned __int8)v124[i8 - 1];
if ( v126 != (unsigned __int8)_newEnemy.cstr[i8 - 1] )
break;
if ( v126 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_223;
if ( i8 >= 0x80001 )
break;
v127 = (unsigned __int8)v124[i8];
if ( v127 != (unsigned __int8)_newEnemy.cstr[i8] )
break;
if ( v127 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_223;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Guardian_Mini_Junior";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v128 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v128 == _newEnemy.cstr )
{
LABEL_232:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Guardian_Mini_Middle";
}
else
{
v129 = enemy->cstr;
for ( i9 = 1LL; ; i9 += 2LL )
{
v131 = (unsigned __int8)v129[i9 - 1];
if ( v131 != (unsigned __int8)_newEnemy.cstr[i9 - 1] )
break;
if ( v131 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_232;
if ( i9 >= 0x80001 )
break;
v132 = (unsigned __int8)v129[i9];
if ( v132 != (unsigned __int8)_newEnemy.cstr[i9] )
break;
if ( v132 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_232;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Guardian_Mini_Middle";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v133 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v133 == _newEnemy.cstr )
{
LABEL_241:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Guardian_Mini_Senior";
}
else
{
v134 = enemy->cstr;
for ( i10 = 1LL; ; i10 += 2LL )
{
v136 = (unsigned __int8)v134[i10 - 1];
if ( v136 != (unsigned __int8)_newEnemy.cstr[i10 - 1] )
break;
if ( v136 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_241;
if ( i10 >= 0x80001 )
break;
v137 = (unsigned __int8)v134[i10];
if ( v137 != (unsigned __int8)_newEnemy.cstr[i10] )
break;
if ( v137 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_241;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Guardian_Mini_Junior_DetachLineBeam";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v138 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v138 == _newEnemy.cstr )
{
LABEL_250:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Guardian_Mini_Middle_DetachLineBeam";
}
else
{
v139 = enemy->cstr;
for ( i11 = 1LL; ; i11 += 2LL )
{
v141 = (unsigned __int8)v139[i11 - 1];
if ( v141 != (unsigned __int8)_newEnemy.cstr[i11 - 1] )
break;
if ( v141 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_250;
if ( i11 >= 0x80001 )
break;
v142 = (unsigned __int8)v139[i11];
if ( v142 != (unsigned __int8)_newEnemy.cstr[i11] )
break;
if ( v142 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_250;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Lizalfos_Junior";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v143 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v143 == _newEnemy.cstr )
{
LABEL_259:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Lizalfos_Middle";
}
else
{
v144 = enemy->cstr;
for ( i12 = 1LL; ; i12 += 2LL )
{
v146 = (unsigned __int8)v144[i12 - 1];
if ( v146 != (unsigned __int8)_newEnemy.cstr[i12 - 1] )
break;
if ( v146 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_259;
if ( i12 >= 0x80001 )
break;
v147 = (unsigned __int8)v144[i12];
if ( v147 != (unsigned __int8)_newEnemy.cstr[i12] )
break;
if ( v147 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_259;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Lizalfos_Middle";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v148 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v148 == _newEnemy.cstr )
{
LABEL_268:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Lizalfos_Senior";
}
else
{
v149 = enemy->cstr;
for ( i13 = 1LL; ; i13 += 2LL )
{
v151 = (unsigned __int8)v149[i13 - 1];
if ( v151 != (unsigned __int8)_newEnemy.cstr[i13 - 1] )
break;
if ( v151 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_268;
if ( i13 >= 0x80001 )
break;
v152 = (unsigned __int8)v149[i13];
if ( v152 != (unsigned __int8)_newEnemy.cstr[i13] )
break;
if ( v152 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_268;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Lizalfos_Senior";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v153 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v153 == _newEnemy.cstr )
{
LABEL_277:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Lizalfos_Dark";
}
else
{
v154 = enemy->cstr;
for ( i14 = 1LL; ; i14 += 2LL )
{
v156 = (unsigned __int8)v154[i14 - 1];
if ( v156 != (unsigned __int8)_newEnemy.cstr[i14 - 1] )
break;
if ( v156 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_277;
if ( i14 >= 0x80001 )
break;
v157 = (unsigned __int8)v154[i14];
if ( v157 != (unsigned __int8)_newEnemy.cstr[i14] )
break;
if ( v157 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_277;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Lizalfos_Dark";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v158 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v158 == _newEnemy.cstr )
{
LABEL_286:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Lizalfos_Gold";
}
else
{
v159 = enemy->cstr;
for ( i15 = 1LL; ; i15 += 2LL )
{
v161 = (unsigned __int8)v159[i15 - 1];
if ( v161 != (unsigned __int8)_newEnemy.cstr[i15 - 1] )
break;
if ( v161 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_286;
if ( i15 >= 0x80001 )
break;
v162 = (unsigned __int8)v159[i15];
if ( v162 != (unsigned __int8)_newEnemy.cstr[i15] )
break;
if ( v162 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_286;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Lizalfos_Guard_Junior";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v163 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v163 == _newEnemy.cstr )
{
LABEL_295:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Lizalfos_Guard_Middle";
}
else
{
v164 = enemy->cstr;
for ( i16 = 1LL; ; i16 += 2LL )
{
v166 = (unsigned __int8)v164[i16 - 1];
if ( v166 != (unsigned __int8)_newEnemy.cstr[i16 - 1] )
break;
if ( v166 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_295;
if ( i16 >= 0x80001 )
break;
v167 = (unsigned __int8)v164[i16];
if ( v167 != (unsigned __int8)_newEnemy.cstr[i16] )
break;
if ( v167 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_295;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Lizalfos_Guard_Junior_LongVisibility";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v168 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v168 == _newEnemy.cstr )
{
LABEL_304:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Lizalfos_Guard_Middle_LongVisibility";
}
else
{
v169 = enemy->cstr;
for ( i17 = 1LL; ; i17 += 2LL )
{
v171 = (unsigned __int8)v169[i17 - 1];
if ( v171 != (unsigned __int8)_newEnemy.cstr[i17 - 1] )
break;
if ( v171 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_304;
if ( i17 >= 0x80001 )
break;
v172 = (unsigned __int8)v169[i17];
if ( v172 != (unsigned __int8)_newEnemy.cstr[i17] )
break;
if ( v172 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_304;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Lizalfos_Junior_Guard_Ambush";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v173 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v173 == _newEnemy.cstr )
{
LABEL_313:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Lizalfos_Middle_Guard_Ambush";
}
else
{
v174 = enemy->cstr;
for ( i18 = 1LL; ; i18 += 2LL )
{
v176 = (unsigned __int8)v174[i18 - 1];
if ( v176 != (unsigned __int8)_newEnemy.cstr[i18 - 1] )
break;
if ( v176 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_313;
if ( i18 >= 0x80001 )
break;
v177 = (unsigned __int8)v174[i18];
if ( v177 != (unsigned __int8)_newEnemy.cstr[i18] )
break;
if ( v177 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_313;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Lynel_Junior";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v178 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v178 == _newEnemy.cstr )
{
LABEL_322:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Lynel_Middle";
}
else
{
v179 = enemy->cstr;
for ( i19 = 1LL; ; i19 += 2LL )
{
v181 = (unsigned __int8)v179[i19 - 1];
if ( v181 != (unsigned __int8)_newEnemy.cstr[i19 - 1] )
break;
if ( v181 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_322;
if ( i19 >= 0x80001 )
break;
v182 = (unsigned __int8)v179[i19];
if ( v182 != (unsigned __int8)_newEnemy.cstr[i19] )
break;
if ( v182 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_322;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Lynel_Middle";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v183 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v183 == _newEnemy.cstr )
{
LABEL_331:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Lynel_Senior";
}
else
{
v184 = enemy->cstr;
for ( i20 = 1LL; ; i20 += 2LL )
{
v186 = (unsigned __int8)v184[i20 - 1];
if ( v186 != (unsigned __int8)_newEnemy.cstr[i20 - 1] )
break;
if ( v186 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_331;
if ( i20 >= 0x80001 )
break;
v187 = (unsigned __int8)v184[i20];
if ( v187 != (unsigned __int8)_newEnemy.cstr[i20] )
break;
if ( v187 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_331;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Lynel_Senior";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v188 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v188 == _newEnemy.cstr )
{
LABEL_340:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Lynel_Dark";
}
else
{
v189 = enemy->cstr;
for ( i21 = 1LL; ; i21 += 2LL )
{
v191 = (unsigned __int8)v189[i21 - 1];
if ( v191 != (unsigned __int8)_newEnemy.cstr[i21 - 1] )
break;
if ( v191 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_340;
if ( i21 >= 0x80001 )
break;
v192 = (unsigned __int8)v189[i21];
if ( v192 != (unsigned __int8)_newEnemy.cstr[i21] )
break;
if ( v192 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_340;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Lynel_Dark";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v193 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v193 == _newEnemy.cstr )
{
LABEL_349:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Lynel_Gold";
}
else
{
v194 = enemy->cstr;
for ( i22 = 1LL; ; i22 += 2LL )
{
v196 = (unsigned __int8)v194[i22 - 1];
if ( v196 != (unsigned __int8)_newEnemy.cstr[i22 - 1] )
break;
if ( v196 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_349;
if ( i22 >= 0x80001 )
break;
v197 = (unsigned __int8)v194[i22];
if ( v197 != (unsigned __int8)_newEnemy.cstr[i22] )
break;
if ( v197 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_349;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Moriblin_Junior";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v198 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v198 == _newEnemy.cstr )
{
LABEL_358:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Moriblin_Middle";
}
else
{
v199 = enemy->cstr;
for ( i23 = 1LL; ; i23 += 2LL )
{
v201 = (unsigned __int8)v199[i23 - 1];
if ( v201 != (unsigned __int8)_newEnemy.cstr[i23 - 1] )
break;
if ( v201 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_358;
if ( i23 >= 0x80001 )
break;
v202 = (unsigned __int8)v199[i23];
if ( v202 != (unsigned __int8)_newEnemy.cstr[i23] )
break;
if ( v202 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_358;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Moriblin_Middle";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v203 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v203 == _newEnemy.cstr )
{
LABEL_367:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Moriblin_Senior";
}
else
{
v204 = enemy->cstr;
for ( i24 = 1LL; ; i24 += 2LL )
{
v206 = (unsigned __int8)v204[i24 - 1];
if ( v206 != (unsigned __int8)_newEnemy.cstr[i24 - 1] )
break;
if ( v206 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_367;
if ( i24 >= 0x80001 )
break;
v207 = (unsigned __int8)v204[i24];
if ( v207 != (unsigned __int8)_newEnemy.cstr[i24] )
break;
if ( v207 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_367;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Moriblin_Senior";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v208 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v208 == _newEnemy.cstr )
{
LABEL_376:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Moriblin_Dark";
}
else
{
v209 = enemy->cstr;
for ( i25 = 1LL; ; i25 += 2LL )
{
v211 = (unsigned __int8)v209[i25 - 1];
if ( v211 != (unsigned __int8)_newEnemy.cstr[i25 - 1] )
break;
if ( v211 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_376;
if ( i25 >= 0x80001 )
break;
v212 = (unsigned __int8)v209[i25];
if ( v212 != (unsigned __int8)_newEnemy.cstr[i25] )
break;
if ( v212 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_376;
}
_newEnemy.vptr = &sead::SafeString::vt;
_newEnemy.cstr = "Enemy_Moriblin_Dark";
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v213 = enemy->cstr;
_newEnemy.vptr->assureTermination(&_newEnemy);
if ( v213 == _newEnemy.cstr )
{
LABEL_385:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Moriblin_Gold";
}
else
{
v214 = enemy->cstr;
for ( i26 = 1LL; ; i26 += 2LL )
{
v216 = (unsigned __int8)v214[i26 - 1];
if ( v216 != (unsigned __int8)_newEnemy.cstr[i26 - 1] )
break;
if ( v216 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_385;
if ( i26 >= 0x80001 )
break;
v217 = (unsigned __int8)v214[i26];
if ( v217 != (unsigned __int8)_newEnemy.cstr[i26] )
break;
if ( v217 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_385;
}
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v218 = enemy->cstr;
if ( v218 == "Enemy_Wizzrobe_Electric" )
{
LABEL_402:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Wizzrobe_Electric_Senior";
}
else
{
v219 = 0LL;
do
{
v220 = (unsigned __int8)v218[v219];
if ( v220 != (unsigned __int8)aEnemyWizzrobeE[v219] )
break;
if ( v220 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_402;
++v219;
}
while ( v219 < 0x80001 );
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v221 = enemy->cstr;
if ( v221 == "Enemy_Wizzrobe_Fire" )
{
LABEL_403:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Wizzrobe_Fire_Senior";
}
else
{
v222 = 0LL;
do
{
v223 = (unsigned __int8)v221[v222];
if ( v223 != (unsigned __int8)aEnemyWizzrobeF[v222] )
break;
if ( v223 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_403;
++v222;
}
while ( v222 < 0x80001 );
enemy->vptr->assureTermination(enemy);
enemy->vptr->assureTermination(enemy);
v224 = enemy->cstr;
if ( v224 != "Enemy_Wizzrobe_Ice" )
{
v225 = 0LL;
do
{
v226 = (unsigned __int8)v224[v225];
if ( v226 != (unsigned __int8)aEnemyWizzrobeI[v225] )
break;
if ( v226 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_404;
++v225;
}
while ( v225 < 0x80001 );
goto LABEL_50;
}
LABEL_404:
_newEnemy.vptr = &sead::SafeString::vt;
newEnemyCstr = "Enemy_Wizzrobe_Ice_Senior";
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
LABEL_49:
_newEnemy.cstr = newEnemyCstr;
sead::SafeStringBase<char>::operator=(&newEnemy, &_newEnemy);
LABEL_50:
if ( *newEnemy.cstr == sead::SafeStringBase<char>::cNullChar )
return 0;
newEnemy.vptr->assureTermination(&newEnemy);
result = 1;
*newEnemyName = newEnemy.cstr;
return result;
}
v6 = enemy->cstr;
v7 = "nemy";
v8 = 0x45;
while ( (unsigned __int8)*v6 == v8 )
{
v9 = (unsigned __int8)*v7++;
v8 = v9;
++v6;
if ( v9 == (unsigned __int8)sead::SafeStringBase<char>::cNullChar )
goto LABEL_7;
}
return 0;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment