Created
August 1, 2022 03:21
-
-
Save Lusamine/854dd4f3433faf2aa3f2d95c585953b0 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
__int64 __fastcall calc_initial_damage_LA(damage_info *damage_calc_info) | |
{ | |
unsigned __int8 v1; // w8 | |
unsigned __int64 v3; // x8 | |
float damage_atk_power_coef; // s8 | |
unsigned __int64 v5; // x9 | |
unsigned __int64 v6; // x11 | |
unsigned __int64 v7; // x9 | |
_QWORD *v8; // x10 | |
_QWORD *v9; // x10 | |
unsigned __int64 v10; // x11 | |
unsigned int *v11; // x0 | |
unsigned int *v12; // x8 | |
unsigned int v13; // w9 | |
unsigned __int64 v14; // x10 | |
unsigned __int64 v15; // x11 | |
unsigned __int64 v16; // x13 | |
unsigned __int64 v17; // x11 | |
float **v18; // x12 | |
float *v19; // x12 | |
unsigned __int64 v20; // x13 | |
unsigned __int64 v21; // x10 | |
__int64 v22; // x13 | |
unsigned int v23; // w9 | |
unsigned int v24; // w9 | |
unsigned __int8 v25; // w8 | |
unsigned __int64 v26; // x8 | |
float damage_atk_level_coef; // s9 | |
unsigned __int64 v28; // x9 | |
unsigned __int64 v29; // x11 | |
unsigned __int64 v30; // x9 | |
_QWORD *v31; // x10 | |
_QWORD *v32; // x10 | |
unsigned __int64 v33; // x11 | |
unsigned int *v34; // x0 | |
unsigned int *v35; // x8 | |
unsigned int v36; // w9 | |
unsigned __int64 v37; // x10 | |
unsigned __int64 v38; // x11 | |
unsigned __int64 v39; // x13 | |
__int64 v40; // x11 | |
float **v41; // x12 | |
float *v42; // x12 | |
unsigned __int64 v43; // x13 | |
unsigned __int64 v44; // x10 | |
__int64 v45; // x13 | |
unsigned int v46; // w9 | |
unsigned int v47; // w9 | |
unsigned __int8 v48; // w8 | |
unsigned __int64 v49; // x8 | |
float damage_def_power_coef; // s10 | |
unsigned __int64 v51; // x9 | |
unsigned __int64 v52; // x11 | |
unsigned __int64 v53; // x9 | |
_QWORD *v54; // x10 | |
_QWORD *v55; // x10 | |
unsigned __int64 v56; // x11 | |
unsigned int *v57; // x0 | |
unsigned int *v58; // x8 | |
unsigned int v59; // w9 | |
unsigned __int64 v60; // x10 | |
unsigned __int64 v61; // x11 | |
unsigned __int64 v62; // x13 | |
unsigned __int64 v63; // x11 | |
float **v64; // x12 | |
float *v65; // x12 | |
unsigned __int64 v66; // x13 | |
unsigned __int64 v67; // x10 | |
__int64 v68; // x13 | |
unsigned int v69; // w9 | |
unsigned int v70; // w9 | |
unsigned __int8 v71; // w8 | |
unsigned __int64 v72; // x8 | |
float damage_denominator; // s11 | |
unsigned __int64 v74; // x9 | |
unsigned __int64 v75; // x11 | |
unsigned __int64 v76; // x9 | |
_QWORD *v77; // x10 | |
_QWORD *v78; // x10 | |
unsigned __int64 v79; // x11 | |
unsigned int *v80; // x0 | |
unsigned int *v81; // x8 | |
unsigned int v82; // w9 | |
unsigned __int64 v83; // x10 | |
unsigned __int64 v84; // x11 | |
unsigned __int64 v85; // x13 | |
__int64 v86; // x11 | |
float **v87; // x12 | |
float *v88; // x12 | |
unsigned __int64 v89; // x13 | |
unsigned __int64 v90; // x10 | |
__int64 v91; // x13 | |
unsigned int v92; // w9 | |
unsigned int v93; // w9 | |
int opponent_def_stage; // w8 | |
int attacker_atk_stage; // w9 | |
unsigned int initial_damage; // w20 | |
float def_mod; // s8 | |
float atk_mod; // s9 | |
unsigned __int8 v100; // w8 | |
unsigned __int64 v101; // x8 | |
unsigned __int64 v102; // x9 | |
unsigned __int64 v103; // x11 | |
unsigned __int64 v104; // x9 | |
_QWORD *v105; // x10 | |
_QWORD *v106; // x10 | |
unsigned __int64 v107; // x11 | |
unsigned int *v108; // x0 | |
unsigned int *v109; // x8 | |
unsigned int v110; // w9 | |
unsigned __int64 v111; // x10 | |
unsigned __int64 v112; // x11 | |
unsigned __int64 v113; // x13 | |
unsigned __int64 v114; // x11 | |
float **v115; // x12 | |
float *v116; // x12 | |
unsigned __int64 v117; // x13 | |
unsigned __int8 v118; // w8 | |
unsigned __int64 v119; // x8 | |
unsigned __int64 v120; // x9 | |
unsigned __int64 v121; // x11 | |
unsigned __int64 v122; // x9 | |
_QWORD *v123; // x10 | |
_QWORD *v124; // x10 | |
unsigned __int64 v125; // x11 | |
unsigned int *v126; // x8 | |
unsigned int v127; // w9 | |
unsigned __int64 v128; // x10 | |
unsigned __int64 v129; // x11 | |
unsigned __int64 v130; // x13 | |
unsigned __int64 v131; // x11 | |
float **v132; // x12 | |
float *v133; // x12 | |
unsigned __int64 v134; // x13 | |
unsigned __int8 v135; // w8 | |
unsigned __int8 v136; // w8 | |
unsigned __int8 v137; // w8 | |
unsigned __int64 v138; // x10 | |
__int64 v139; // x13 | |
unsigned int v140; // w9 | |
bool v141; // zf | |
unsigned __int64 v142; // x10 | |
__int64 v143; // x13 | |
unsigned int v144; // w9 | |
unsigned __int8 v145; // w8 | |
unsigned __int64 v146; // x8 | |
unsigned __int64 v147; // x9 | |
unsigned __int64 v148; // x11 | |
unsigned __int64 v149; // x9 | |
_QWORD *v150; // x10 | |
_QWORD *v151; // x10 | |
unsigned __int64 v152; // x11 | |
unsigned int *v153; // x0 | |
unsigned int *v154; // x8 | |
unsigned int v155; // w9 | |
unsigned __int64 v156; // x10 | |
unsigned __int64 v157; // x11 | |
unsigned __int64 v158; // x13 | |
__int64 v159; // x11 | |
float **v160; // x12 | |
float *v161; // x12 | |
unsigned __int64 v162; // x13 | |
unsigned __int8 v163; // w8 | |
unsigned __int64 v164; // x8 | |
unsigned __int64 v165; // x9 | |
unsigned __int64 v166; // x11 | |
unsigned __int64 v167; // x9 | |
_QWORD *v168; // x10 | |
_QWORD *v169; // x10 | |
unsigned __int64 v170; // x11 | |
unsigned int *v171; // x8 | |
unsigned int v172; // w9 | |
unsigned __int64 v173; // x10 | |
unsigned __int64 v174; // x11 | |
unsigned __int64 v175; // x13 | |
__int64 v176; // x11 | |
float **v177; // x12 | |
float *v178; // x12 | |
unsigned __int64 v179; // x13 | |
unsigned __int64 v180; // x10 | |
__int64 v181; // x13 | |
unsigned int v182; // w9 | |
bool v183; // zf | |
unsigned __int64 v184; // x10 | |
__int64 v185; // x13 | |
unsigned int v186; // w9 | |
unsigned __int64 v187; // x8 | |
__int64 v188; // x11 | |
unsigned __int64 v189; // x8 | |
__int64 v190; // x11 | |
unsigned __int64 v191; // x8 | |
__int64 v192; // x11 | |
unsigned __int64 v193; // x8 | |
__int64 v194; // x11 | |
unsigned __int64 v195; // x8 | |
__int64 v196; // x11 | |
unsigned __int64 v197; // x8 | |
__int64 v198; // x11 | |
unsigned __int64 v199; // x8 | |
__int64 v200; // x11 | |
unsigned __int64 v201; // x8 | |
__int64 v202; // x11 | |
v1 = atomic_load((unsigned __int8 *)&qword_71042A6FE0); | |
if ( (v1 & 1) == 0 && _cxa_guard_acquire_0(&qword_71042A6FE0) ) | |
{ | |
sub_7100000250((__int64)sub_71007B3CB4, (__int64)&qword_71042A6FD0, (__int64)&off_710401A000); | |
_cxa_guard_release_0(&qword_71042A6FE0); | |
} | |
qword_71042A6FC8 = qword_71042A6FD0; | |
v3 = *(_QWORD *)(qword_71042A6FD0 + 96); | |
damage_atk_power_coef = 0.0; | |
if ( !v3 ) | |
goto LABEL_45; | |
v5 = ((v3 - ((v3 >> 1) & 0x5555555555555555LL)) & 0x3333333333333333LL) | |
+ (((v3 - ((v3 >> 1) & 0x5555555555555555LL)) >> 2) & 0x3333333333333333LL); | |
v6 = (0x101010101010101LL * ((v5 + (v5 >> 4)) & 0xF0F0F0F0F0F0F0FLL)) >> 56; | |
if ( v6 <= 1 ) | |
{ | |
v7 = (v3 - 1) & 0x63E2672F9E43A54ELL; | |
} | |
else | |
{ | |
v7 = 0x63E2672F9E43A54ELL; | |
if ( v3 <= 0x63E2672F9E43A54ELL ) | |
v7 = 0x63E2672F9E43A54ELL % v3; | |
} | |
v8 = *(_QWORD **)(*(_QWORD *)(qword_71042A6FD0 + 88) + 8 * v7); | |
if ( !v8 ) | |
goto LABEL_45; | |
v9 = (_QWORD *)*v8; | |
if ( !v9 ) | |
goto LABEL_45; | |
if ( v6 > 1 ) | |
{ | |
while ( 1 ) | |
{ | |
v10 = v9[1]; | |
if ( v10 == 0x63E2672F9E43A54ELL ) | |
{ | |
if ( v9[2] == 0x63E2672F9E43A54ELL ) | |
goto LABEL_11; | |
} | |
else | |
{ | |
if ( v10 >= v3 ) | |
v10 %= v3; | |
if ( v10 != v7 ) | |
goto LABEL_45; | |
} | |
v9 = (_QWORD *)*v9; | |
if ( !v9 ) | |
goto LABEL_45; | |
} | |
} | |
v187 = v3 - 1; | |
while ( 1 ) | |
{ | |
v188 = v9[1]; | |
if ( v188 != 0x63E2672F9E43A54ELL ) | |
{ | |
if ( (v188 & v187) != v7 ) | |
goto LABEL_45; | |
goto LABEL_397; | |
} | |
if ( v9[2] == 0x63E2672F9E43A54ELL ) | |
break; | |
LABEL_397: | |
v9 = (_QWORD *)*v9; | |
if ( !v9 ) | |
goto LABEL_45; | |
} | |
LABEL_11: | |
v11 = (unsigned int *)v9[3]; | |
if ( !v11 ) | |
goto LABEL_45; | |
v12 = v11 + 20; | |
do | |
v13 = __ldaxr(v12); | |
while ( __stlxr(v13 + 1, v12) ); | |
v14 = *((_QWORD *)v11 + 33); | |
damage_atk_power_coef = 0.0; | |
if ( v14 ) | |
{ | |
v15 = ((v14 - ((v14 >> 1) & 0x5555555555555555LL)) & 0x3333333333333333LL) | |
+ (((v14 - ((v14 >> 1) & 0x5555555555555555LL)) >> 2) & 0x3333333333333333LL); | |
v16 = (0x101010101010101LL * ((v15 + (v15 >> 4)) & 0xF0F0F0F0F0F0F0FLL)) >> 56; | |
if ( v16 <= 1 ) | |
v17 = (v14 - 1) & 0xB21685D155591C8DLL; | |
else | |
v17 = v14 > 0xB21685D155591C8DLL ? 0xB21685D155591C8DLL : 0xB21685D155591C8DLL % v14; | |
v18 = *(float ***)(*((_QWORD *)v11 + 32) + 8 * v17); | |
if ( v18 ) | |
{ | |
v19 = *v18; | |
if ( v19 ) | |
{ | |
if ( v16 > 1 ) | |
{ | |
while ( 1 ) | |
{ | |
v20 = *((_QWORD *)v19 + 1); | |
if ( v20 == 0xB21685D155591C8DLL ) | |
{ | |
if ( *((_QWORD *)v19 + 2) == 0xB21685D155591C8DLL ) | |
goto LABEL_42; | |
} | |
else | |
{ | |
if ( v20 >= v14 ) | |
v20 %= v14; | |
if ( v20 != v17 ) | |
goto LABEL_43; | |
} | |
v19 = *(float **)v19; | |
if ( !v19 ) | |
goto LABEL_43; | |
} | |
} | |
v21 = v14 - 1; | |
while ( 1 ) | |
{ | |
v22 = *((_QWORD *)v19 + 1); | |
if ( v22 == 0xB21685D155591C8DLL ) | |
{ | |
if ( *((_QWORD *)v19 + 2) == 0xB21685D155591C8DLL ) | |
{ | |
LABEL_42: | |
damage_atk_power_coef = v19[12]; | |
goto LABEL_43; | |
} | |
} | |
else if ( (v22 & v21) != v17 ) | |
{ | |
goto LABEL_43; | |
} | |
v19 = *(float **)v19; | |
if ( !v19 ) | |
goto LABEL_43; | |
} | |
} | |
} | |
} | |
do | |
{ | |
LABEL_43: | |
v23 = __ldaxr(v12); | |
v24 = v23 - 1; | |
} | |
while ( __stlxr(v24, v12) ); | |
if ( !v24 ) | |
{ | |
(*(void (__fastcall **)(unsigned int *))(*(_QWORD *)v11 + 16LL))(v11); | |
v135 = atomic_load((unsigned __int8 *)&qword_71042A6FE0); | |
if ( (v135 & 1) != 0 ) | |
goto LABEL_46; | |
} | |
else | |
{ | |
LABEL_45: | |
v25 = atomic_load((unsigned __int8 *)&qword_71042A6FE0); | |
if ( (v25 & 1) != 0 ) | |
goto LABEL_46; | |
} | |
if ( _cxa_guard_acquire_0(&qword_71042A6FE0) ) | |
{ | |
sub_7100000250((__int64)sub_71007B3CB4, (__int64)&qword_71042A6FD0, (__int64)&off_710401A000); | |
_cxa_guard_release_0(&qword_71042A6FE0); | |
} | |
LABEL_46: | |
qword_71042A6FC8 = qword_71042A6FD0; | |
v26 = *(_QWORD *)(qword_71042A6FD0 + 96); | |
damage_atk_level_coef = 0.0; | |
if ( !v26 ) | |
goto LABEL_89; | |
v28 = ((v26 - ((v26 >> 1) & 0x5555555555555555LL)) & 0x3333333333333333LL) | |
+ (((v26 - ((v26 >> 1) & 0x5555555555555555LL)) >> 2) & 0x3333333333333333LL); | |
v29 = (0x101010101010101LL * ((v28 + (v28 >> 4)) & 0xF0F0F0F0F0F0F0FLL)) >> 56; | |
if ( v29 <= 1 ) | |
{ | |
v30 = (v26 - 1) & 0x63E2672F9E43A54ELL; | |
} | |
else | |
{ | |
v30 = 0x63E2672F9E43A54ELL; | |
if ( v26 <= 0x63E2672F9E43A54ELL ) | |
v30 = 0x63E2672F9E43A54ELL % v26; | |
} | |
v31 = *(_QWORD **)(*(_QWORD *)(qword_71042A6FD0 + 88) + 8 * v30); | |
if ( !v31 ) | |
goto LABEL_89; | |
v32 = (_QWORD *)*v31; | |
if ( !v32 ) | |
goto LABEL_89; | |
if ( v29 > 1 ) | |
{ | |
while ( 1 ) | |
{ | |
v33 = v32[1]; | |
if ( v33 == 0x63E2672F9E43A54ELL ) | |
{ | |
if ( v32[2] == 0x63E2672F9E43A54ELL ) | |
goto LABEL_55; | |
} | |
else | |
{ | |
if ( v33 >= v26 ) | |
v33 %= v26; | |
if ( v33 != v30 ) | |
goto LABEL_89; | |
} | |
v32 = (_QWORD *)*v32; | |
if ( !v32 ) | |
goto LABEL_89; | |
} | |
} | |
v189 = v26 - 1; | |
while ( 2 ) | |
{ | |
v190 = v32[1]; | |
if ( v190 != 0x63E2672F9E43A54ELL ) | |
{ | |
if ( (v190 & v189) != v30 ) | |
goto LABEL_89; | |
LABEL_400: | |
v32 = (_QWORD *)*v32; | |
if ( !v32 ) | |
goto LABEL_89; | |
continue; | |
} | |
break; | |
} | |
if ( v32[2] != 0x63E2672F9E43A54ELL ) | |
goto LABEL_400; | |
LABEL_55: | |
v34 = (unsigned int *)v32[3]; | |
if ( !v34 ) | |
goto LABEL_89; | |
v35 = v34 + 20; | |
do | |
v36 = __ldaxr(v35); | |
while ( __stlxr(v36 + 1, v35) ); | |
v37 = *((_QWORD *)v34 + 33); | |
damage_atk_level_coef = 0.0; | |
if ( v37 ) | |
{ | |
v38 = ((v37 - ((v37 >> 1) & 0x5555555555555555LL)) & 0x3333333333333333LL) | |
+ (((v37 - ((v37 >> 1) & 0x5555555555555555LL)) >> 2) & 0x3333333333333333LL); | |
v39 = (0x101010101010101LL * ((v38 + (v38 >> 4)) & 0xF0F0F0F0F0F0F0FLL)) >> 56; | |
if ( v39 <= 1 ) | |
v40 = (v37 - 1) & 0x45990018E9C0F480LL; | |
else | |
v40 = v37 > 0x45990018E9C0F480LL ? 0x45990018E9C0F480LL : 0x45990018E9C0F480LL % v37; | |
v41 = *(float ***)(*((_QWORD *)v34 + 32) + 8 * v40); | |
if ( v41 ) | |
{ | |
v42 = *v41; | |
if ( v42 ) | |
{ | |
if ( v39 > 1 ) | |
{ | |
while ( 1 ) | |
{ | |
v43 = *((_QWORD *)v42 + 1); | |
if ( v43 == 0x45990018E9C0F480LL ) | |
{ | |
if ( *((_QWORD *)v42 + 2) == 0x45990018E9C0F480LL ) | |
goto LABEL_86; | |
} | |
else | |
{ | |
if ( v43 >= v37 ) | |
v43 %= v37; | |
if ( v43 != v40 ) | |
goto LABEL_87; | |
} | |
v42 = *(float **)v42; | |
if ( !v42 ) | |
goto LABEL_87; | |
} | |
} | |
v44 = v37 - 1; | |
while ( 1 ) | |
{ | |
v45 = *((_QWORD *)v42 + 1); | |
if ( v45 == 0x45990018E9C0F480LL ) | |
{ | |
if ( *((_QWORD *)v42 + 2) == 0x45990018E9C0F480LL ) | |
{ | |
LABEL_86: | |
damage_atk_level_coef = v42[12]; | |
goto LABEL_87; | |
} | |
} | |
else if ( (v45 & v44) != v40 ) | |
{ | |
goto LABEL_87; | |
} | |
v42 = *(float **)v42; | |
if ( !v42 ) | |
goto LABEL_87; | |
} | |
} | |
} | |
} | |
do | |
{ | |
LABEL_87: | |
v46 = __ldaxr(v35); | |
v47 = v46 - 1; | |
} | |
while ( __stlxr(v47, v35) ); | |
if ( !v47 ) | |
{ | |
(*(void (__fastcall **)(unsigned int *))(*(_QWORD *)v34 + 16LL))(v34); | |
v136 = atomic_load((unsigned __int8 *)&qword_71042A6FE0); | |
if ( (v136 & 1) != 0 ) | |
goto LABEL_90; | |
} | |
else | |
{ | |
LABEL_89: | |
v48 = atomic_load((unsigned __int8 *)&qword_71042A6FE0); | |
if ( (v48 & 1) != 0 ) | |
goto LABEL_90; | |
} | |
if ( _cxa_guard_acquire_0(&qword_71042A6FE0) ) | |
{ | |
sub_7100000250((__int64)sub_71007B3CB4, (__int64)&qword_71042A6FD0, (__int64)&off_710401A000); | |
_cxa_guard_release_0(&qword_71042A6FE0); | |
} | |
LABEL_90: | |
qword_71042A6FC8 = qword_71042A6FD0; | |
v49 = *(_QWORD *)(qword_71042A6FD0 + 96); | |
damage_def_power_coef = 0.0; | |
if ( !v49 ) | |
goto LABEL_133; | |
v51 = ((v49 - ((v49 >> 1) & 0x5555555555555555LL)) & 0x3333333333333333LL) | |
+ (((v49 - ((v49 >> 1) & 0x5555555555555555LL)) >> 2) & 0x3333333333333333LL); | |
v52 = (0x101010101010101LL * ((v51 + (v51 >> 4)) & 0xF0F0F0F0F0F0F0FLL)) >> 56; | |
if ( v52 <= 1 ) | |
{ | |
v53 = (v49 - 1) & 0x63E2672F9E43A54ELL; | |
} | |
else | |
{ | |
v53 = 0x63E2672F9E43A54ELL; | |
if ( v49 <= 0x63E2672F9E43A54ELL ) | |
v53 = 0x63E2672F9E43A54ELL % v49; | |
} | |
v54 = *(_QWORD **)(*(_QWORD *)(qword_71042A6FD0 + 88) + 8 * v53); | |
if ( !v54 ) | |
goto LABEL_133; | |
v55 = (_QWORD *)*v54; | |
if ( !v55 ) | |
goto LABEL_133; | |
if ( v52 > 1 ) | |
{ | |
while ( 1 ) | |
{ | |
v56 = v55[1]; | |
if ( v56 == 0x63E2672F9E43A54ELL ) | |
{ | |
if ( v55[2] == 0x63E2672F9E43A54ELL ) | |
goto LABEL_99; | |
} | |
else | |
{ | |
if ( v56 >= v49 ) | |
v56 %= v49; | |
if ( v56 != v53 ) | |
goto LABEL_133; | |
} | |
v55 = (_QWORD *)*v55; | |
if ( !v55 ) | |
goto LABEL_133; | |
} | |
} | |
v191 = v49 - 1; | |
while ( 2 ) | |
{ | |
v192 = v55[1]; | |
if ( v192 != 0x63E2672F9E43A54ELL ) | |
{ | |
if ( (v192 & v191) != v53 ) | |
goto LABEL_133; | |
LABEL_403: | |
v55 = (_QWORD *)*v55; | |
if ( !v55 ) | |
goto LABEL_133; | |
continue; | |
} | |
break; | |
} | |
if ( v55[2] != 0x63E2672F9E43A54ELL ) | |
goto LABEL_403; | |
LABEL_99: | |
v57 = (unsigned int *)v55[3]; | |
if ( !v57 ) | |
goto LABEL_133; | |
v58 = v57 + 20; | |
do | |
v59 = __ldaxr(v58); | |
while ( __stlxr(v59 + 1, v58) ); | |
v60 = *((_QWORD *)v57 + 33); | |
damage_def_power_coef = 0.0; | |
if ( v60 ) | |
{ | |
v61 = ((v60 - ((v60 >> 1) & 0x5555555555555555LL)) & 0x3333333333333333LL) | |
+ (((v60 - ((v60 >> 1) & 0x5555555555555555LL)) >> 2) & 0x3333333333333333LL); | |
v62 = (0x101010101010101LL * ((v61 + (v61 >> 4)) & 0xF0F0F0F0F0F0F0FLL)) >> 56; | |
if ( v62 <= 1 ) | |
v63 = (v60 - 1) & 0xBA4D65E8A0531F16LL; | |
else | |
v63 = v60 > 0xBA4D65E8A0531F16LL ? 0xBA4D65E8A0531F16LL : 0xBA4D65E8A0531F16LL % v60; | |
v64 = *(float ***)(*((_QWORD *)v57 + 32) + 8 * v63); | |
if ( v64 ) | |
{ | |
v65 = *v64; | |
if ( v65 ) | |
{ | |
if ( v62 > 1 ) | |
{ | |
while ( 1 ) | |
{ | |
v66 = *((_QWORD *)v65 + 1); | |
if ( v66 == 0xBA4D65E8A0531F16LL ) | |
{ | |
if ( *((_QWORD *)v65 + 2) == 0xBA4D65E8A0531F16LL ) | |
goto LABEL_130; | |
} | |
else | |
{ | |
if ( v66 >= v60 ) | |
v66 %= v60; | |
if ( v66 != v63 ) | |
goto LABEL_131; | |
} | |
v65 = *(float **)v65; | |
if ( !v65 ) | |
goto LABEL_131; | |
} | |
} | |
v67 = v60 - 1; | |
while ( 1 ) | |
{ | |
v68 = *((_QWORD *)v65 + 1); | |
if ( v68 == 0xBA4D65E8A0531F16LL ) | |
{ | |
if ( *((_QWORD *)v65 + 2) == 0xBA4D65E8A0531F16LL ) | |
{ | |
LABEL_130: | |
damage_def_power_coef = v65[12]; | |
goto LABEL_131; | |
} | |
} | |
else if ( (v68 & v67) != v63 ) | |
{ | |
goto LABEL_131; | |
} | |
v65 = *(float **)v65; | |
if ( !v65 ) | |
goto LABEL_131; | |
} | |
} | |
} | |
} | |
do | |
{ | |
LABEL_131: | |
v69 = __ldaxr(v58); | |
v70 = v69 - 1; | |
} | |
while ( __stlxr(v70, v58) ); | |
if ( !v70 ) | |
{ | |
(*(void (__fastcall **)(unsigned int *))(*(_QWORD *)v57 + 16LL))(v57); | |
v137 = atomic_load((unsigned __int8 *)&qword_71042A6FE0); | |
if ( (v137 & 1) != 0 ) | |
goto LABEL_134; | |
} | |
else | |
{ | |
LABEL_133: | |
v71 = atomic_load((unsigned __int8 *)&qword_71042A6FE0); | |
if ( (v71 & 1) != 0 ) | |
goto LABEL_134; | |
} | |
if ( _cxa_guard_acquire_0(&qword_71042A6FE0) ) | |
{ | |
sub_7100000250((__int64)sub_71007B3CB4, (__int64)&qword_71042A6FD0, (__int64)&off_710401A000); | |
_cxa_guard_release_0(&qword_71042A6FE0); | |
} | |
LABEL_134: | |
qword_71042A6FC8 = qword_71042A6FD0; | |
v72 = *(_QWORD *)(qword_71042A6FD0 + 96); | |
damage_denominator = 0.0; | |
if ( !v72 ) | |
goto LABEL_178; | |
v74 = ((v72 - ((v72 >> 1) & 0x5555555555555555LL)) & 0x3333333333333333LL) | |
+ (((v72 - ((v72 >> 1) & 0x5555555555555555LL)) >> 2) & 0x3333333333333333LL); | |
v75 = (0x101010101010101LL * ((v74 + (v74 >> 4)) & 0xF0F0F0F0F0F0F0FLL)) >> 56; | |
if ( v75 <= 1 ) | |
{ | |
v76 = (v72 - 1) & 0x63E2672F9E43A54ELL; | |
} | |
else | |
{ | |
v76 = 0x63E2672F9E43A54ELL; | |
if ( v72 <= 0x63E2672F9E43A54ELL ) | |
v76 = 0x63E2672F9E43A54ELL % v72; | |
} | |
v77 = *(_QWORD **)(*(_QWORD *)(qword_71042A6FD0 + 88) + 8 * v76); | |
if ( !v77 ) | |
goto LABEL_178; | |
v78 = (_QWORD *)*v77; | |
if ( !v78 ) | |
goto LABEL_178; | |
if ( v75 > 1 ) | |
{ | |
while ( 1 ) | |
{ | |
v79 = v78[1]; | |
if ( v79 == 0x63E2672F9E43A54ELL ) | |
{ | |
if ( v78[2] == 0x63E2672F9E43A54ELL ) | |
goto LABEL_143; | |
} | |
else | |
{ | |
if ( v79 >= v72 ) | |
v79 %= v72; | |
if ( v79 != v76 ) | |
goto LABEL_178; | |
} | |
v78 = (_QWORD *)*v78; | |
if ( !v78 ) | |
goto LABEL_178; | |
} | |
} | |
v193 = v72 - 1; | |
while ( 2 ) | |
{ | |
v194 = v78[1]; | |
if ( v194 != 0x63E2672F9E43A54ELL ) | |
{ | |
if ( (v194 & v193) != v76 ) | |
goto LABEL_178; | |
LABEL_406: | |
v78 = (_QWORD *)*v78; | |
if ( !v78 ) | |
goto LABEL_178; | |
continue; | |
} | |
break; | |
} | |
if ( v78[2] != 0x63E2672F9E43A54ELL ) | |
goto LABEL_406; | |
LABEL_143: | |
v80 = (unsigned int *)v78[3]; | |
if ( !v80 ) | |
goto LABEL_178; | |
v81 = v80 + 20; | |
do | |
v82 = __ldaxr(v81); | |
while ( __stlxr(v82 + 1, v81) ); | |
v83 = *((_QWORD *)v80 + 33); | |
damage_denominator = 0.0; | |
if ( !v83 ) | |
goto LABEL_175; | |
v84 = ((v83 - ((v83 >> 1) & 0x5555555555555555LL)) & 0x3333333333333333LL) | |
+ (((v83 - ((v83 >> 1) & 0x5555555555555555LL)) >> 2) & 0x3333333333333333LL); | |
v85 = (0x101010101010101LL * ((v84 + (v84 >> 4)) & 0xF0F0F0F0F0F0F0FLL)) >> 56; | |
if ( v85 <= 1 ) | |
v86 = (v83 - 1) & 0x44ADE38F089ABB5BLL; | |
else | |
v86 = v83 > 0x44ADE38F089ABB5BLL ? 0x44ADE38F089ABB5BLL : 0x44ADE38F089ABB5BLL % v83; | |
v87 = *(float ***)(*((_QWORD *)v80 + 32) + 8 * v86); | |
if ( !v87 ) | |
goto LABEL_175; | |
v88 = *v87; | |
if ( !v88 ) | |
goto LABEL_175; | |
if ( v85 > 1 ) | |
{ | |
while ( 1 ) | |
{ | |
v89 = *((_QWORD *)v88 + 1); | |
if ( v89 == 0x44ADE38F089ABB5BLL ) | |
{ | |
if ( *((_QWORD *)v88 + 2) == 0x44ADE38F089ABB5BLL ) | |
goto LABEL_174; | |
} | |
else | |
{ | |
if ( v89 >= v83 ) | |
v89 %= v83; | |
if ( v89 != v86 ) | |
goto LABEL_175; | |
} | |
v88 = *(float **)v88; | |
if ( !v88 ) | |
goto LABEL_175; | |
} | |
} | |
v90 = v83 - 1; | |
while ( 2 ) | |
{ | |
v91 = *((_QWORD *)v88 + 1); | |
if ( v91 != 0x44ADE38F089ABB5BLL ) | |
{ | |
if ( (v91 & v90) != v86 ) | |
goto LABEL_175; | |
LABEL_172: | |
v88 = *(float **)v88; | |
if ( !v88 ) | |
goto LABEL_175; | |
continue; | |
} | |
break; | |
} | |
if ( *((_QWORD *)v88 + 2) != 0x44ADE38F089ABB5BLL ) | |
goto LABEL_172; | |
LABEL_174: | |
damage_denominator = v88[12]; | |
do | |
{ | |
LABEL_175: | |
v92 = __ldaxr(v81); | |
v93 = v92 - 1; | |
} | |
while ( __stlxr(v93, v81) ); | |
if ( !v93 ) | |
(*(void (__fastcall **)(unsigned int *))(*(_QWORD *)v80 + 16LL))(v80); | |
LABEL_178: | |
attacker_atk_stage = damage_calc_info->attacker_atk_stage;// Can be 0 (-1), 1 (neutral), 2 (+1) | |
opponent_def_stage = damage_calc_info->opponent_def_stage; | |
initial_damage = (unsigned int)(float)((float)(unsigned int)(float)((float)(unsigned int)(float)((float)((float)(damage_atk_power_coef + (float)damage_calc_info->attacker_atk) + (float)(damage_atk_level_coef * (float)damage_calc_info->attacker_lvl)) | |
* (float)damage_calc_info->base_power) | |
/ (float)(damage_def_power_coef | |
+ (float)damage_calc_info->opponent_defense)) | |
/ damage_denominator); | |
if ( attacker_atk_stage == opponent_def_stage ) | |
return initial_damage; | |
def_mod = 1.0; | |
atk_mod = 1.0; | |
if ( attacker_atk_stage == 1 ) | |
goto LABEL_281; | |
if ( !attacker_atk_stage ) | |
{ | |
v118 = atomic_load((unsigned __int8 *)&qword_71042A6FE0); | |
if ( (v118 & 1) == 0 && _cxa_guard_acquire_0(&qword_71042A6FE0) ) | |
{ | |
sub_7100000250((__int64)sub_71007B3CB4, (__int64)&qword_71042A6FD0, (__int64)&off_710401A000); | |
_cxa_guard_release_0(&qword_71042A6FE0); | |
} | |
qword_71042A6FC8 = qword_71042A6FD0; | |
v119 = *(_QWORD *)(qword_71042A6FD0 + 96); | |
atk_mod = 0.0; | |
if ( !v119 ) | |
goto LABEL_280; | |
v120 = ((v119 - ((v119 >> 1) & 0x5555555555555555LL)) & 0x3333333333333333LL) | |
+ (((v119 - ((v119 >> 1) & 0x5555555555555555LL)) >> 2) & 0x3333333333333333LL); | |
v121 = (0x101010101010101LL * ((v120 + (v120 >> 4)) & 0xF0F0F0F0F0F0F0FLL)) >> 56; | |
if ( v121 <= 1 ) | |
{ | |
v122 = (v119 - 1) & 0x63E2672F9E43A54ELL; | |
} | |
else | |
{ | |
v122 = 0x63E2672F9E43A54ELL; | |
if ( v119 <= 0x63E2672F9E43A54ELL ) | |
v122 = 0x63E2672F9E43A54ELL % v119; | |
} | |
v123 = *(_QWORD **)(*(_QWORD *)(qword_71042A6FD0 + 88) + 8 * v122); | |
if ( !v123 ) | |
goto LABEL_280; | |
v124 = (_QWORD *)*v123; | |
if ( !v124 ) | |
goto LABEL_280; | |
if ( v121 > 1 ) | |
{ | |
while ( 1 ) | |
{ | |
v125 = v124[1]; | |
if ( v125 == 0x63E2672F9E43A54ELL ) | |
{ | |
if ( v124[2] == 0x63E2672F9E43A54ELL ) | |
goto LABEL_220; | |
} | |
else | |
{ | |
if ( v125 >= v119 ) | |
v125 %= v119; | |
if ( v125 != v122 ) | |
goto LABEL_280; | |
} | |
v124 = (_QWORD *)*v124; | |
if ( !v124 ) | |
goto LABEL_280; | |
} | |
} | |
v199 = v119 - 1; | |
while ( 1 ) | |
{ | |
v200 = v124[1]; | |
if ( v200 == 0x63E2672F9E43A54ELL ) | |
{ | |
if ( v124[2] == 0x63E2672F9E43A54ELL ) | |
{ | |
LABEL_220: | |
v108 = (unsigned int *)v124[3]; | |
if ( !v108 ) | |
goto LABEL_280; | |
v126 = v108 + 20; | |
do | |
v127 = __ldaxr(v126); | |
while ( __stlxr(v127 + 1, v126) ); | |
v128 = *((_QWORD *)v108 + 33); | |
atk_mod = 0.0; | |
if ( v128 ) | |
{ | |
v129 = ((v128 - ((v128 >> 1) & 0x5555555555555555LL)) & 0x3333333333333333LL) | |
+ (((v128 - ((v128 >> 1) & 0x5555555555555555LL)) >> 2) & 0x3333333333333333LL); | |
v130 = (0x101010101010101LL * ((v129 + (v129 >> 4)) & 0xF0F0F0F0F0F0F0FLL)) >> 56; | |
if ( v130 <= 1 ) | |
v131 = (v128 - 1) & 0xC4C828B65D3E2AAFLL; | |
else | |
v131 = v128 > 0xC4C828B65D3E2AAFLL ? 0xC4C828B65D3E2AAFLL : 0xC4C828B65D3E2AAFLL % v128; | |
v132 = *(float ***)(*((_QWORD *)v108 + 32) + 8 * v131); | |
if ( v132 ) | |
{ | |
v133 = *v132; | |
if ( v133 ) | |
{ | |
if ( v130 > 1 ) | |
{ | |
while ( 1 ) | |
{ | |
v134 = *((_QWORD *)v133 + 1); | |
if ( v134 == 0xC4C828B65D3E2AAFLL ) | |
{ | |
if ( *((_QWORD *)v133 + 2) == 0xC4C828B65D3E2AAFLL ) | |
goto LABEL_276; | |
} | |
else | |
{ | |
if ( v134 >= v128 ) | |
v134 %= v128; | |
if ( v134 != v131 ) | |
goto LABEL_277; | |
} | |
v133 = *(float **)v133; | |
if ( !v133 ) | |
goto LABEL_277; | |
} | |
} | |
v142 = v128 - 1; | |
while ( 1 ) | |
{ | |
v143 = *((_QWORD *)v133 + 1); | |
if ( v143 == 0xC4C828B65D3E2AAFLL ) | |
{ | |
if ( *((_QWORD *)v133 + 2) == 0xC4C828B65D3E2AAFLL ) | |
{ | |
LABEL_276: | |
atk_mod = v133[12]; // attack modifier for decreased attack stage of 0 | |
goto LABEL_277; | |
} | |
} | |
else if ( (v143 & v142) != v131 ) | |
{ | |
goto LABEL_277; | |
} | |
v133 = *(float **)v133; | |
if ( !v133 ) | |
goto LABEL_277; | |
} | |
} | |
} | |
} | |
do | |
{ | |
LABEL_277: | |
v144 = __ldaxr(v126); | |
v141 = --v144 == 0; | |
} | |
while ( __stlxr(v144, v126) ); | |
goto LABEL_278; | |
} | |
} | |
else if ( (v200 & v199) != v122 ) | |
{ | |
goto LABEL_280; | |
} | |
v124 = (_QWORD *)*v124; | |
if ( !v124 ) | |
goto LABEL_280; | |
} | |
} | |
v100 = atomic_load((unsigned __int8 *)&qword_71042A6FE0); | |
if ( (v100 & 1) == 0 && _cxa_guard_acquire_0(&qword_71042A6FE0) ) | |
{ | |
sub_7100000250((__int64)sub_71007B3CB4, (__int64)&qword_71042A6FD0, (__int64)&off_710401A000); | |
_cxa_guard_release_0(&qword_71042A6FE0); | |
} | |
qword_71042A6FC8 = qword_71042A6FD0; | |
v101 = *(_QWORD *)(qword_71042A6FD0 + 96); | |
atk_mod = 0.0; | |
if ( !v101 ) | |
goto LABEL_280; | |
v102 = ((v101 - ((v101 >> 1) & 0x5555555555555555LL)) & 0x3333333333333333LL) | |
+ (((v101 - ((v101 >> 1) & 0x5555555555555555LL)) >> 2) & 0x3333333333333333LL); | |
v103 = (0x101010101010101LL * ((v102 + (v102 >> 4)) & 0xF0F0F0F0F0F0F0FLL)) >> 56; | |
if ( v103 <= 1 ) | |
{ | |
v104 = (v101 - 1) & 0x63E2672F9E43A54ELL; | |
} | |
else | |
{ | |
v104 = 0x63E2672F9E43A54ELL; | |
if ( v101 <= 0x63E2672F9E43A54ELL ) | |
v104 = 0x63E2672F9E43A54ELL % v101; | |
} | |
v105 = *(_QWORD **)(*(_QWORD *)(qword_71042A6FD0 + 88) + 8 * v104); | |
if ( !v105 ) | |
goto LABEL_280; | |
v106 = (_QWORD *)*v105; | |
if ( !v106 ) | |
goto LABEL_280; | |
if ( v103 > 1 ) | |
{ | |
while ( 1 ) | |
{ | |
v107 = v106[1]; | |
if ( v107 == 0x63E2672F9E43A54ELL ) | |
{ | |
if ( v106[2] == 0x63E2672F9E43A54ELL ) | |
goto LABEL_192; | |
} | |
else | |
{ | |
if ( v107 >= v101 ) | |
v107 %= v101; | |
if ( v107 != v104 ) | |
goto LABEL_280; | |
} | |
v106 = (_QWORD *)*v106; | |
if ( !v106 ) | |
goto LABEL_280; | |
} | |
} | |
v195 = v101 - 1; | |
while ( 2 ) | |
{ | |
v196 = v106[1]; | |
if ( v196 != 0x63E2672F9E43A54ELL ) | |
{ | |
if ( (v196 & v195) != v104 ) | |
goto LABEL_280; | |
LABEL_437: | |
v106 = (_QWORD *)*v106; | |
if ( !v106 ) | |
goto LABEL_280; | |
continue; | |
} | |
break; | |
} | |
if ( v106[2] != 0x63E2672F9E43A54ELL ) | |
goto LABEL_437; | |
LABEL_192: | |
v108 = (unsigned int *)v106[3]; | |
if ( v108 ) | |
{ | |
v109 = v108 + 20; | |
do | |
v110 = __ldaxr(v109); | |
while ( __stlxr(v110 + 1, v109) ); | |
v111 = *((_QWORD *)v108 + 33); | |
atk_mod = 0.0; | |
if ( v111 ) | |
{ | |
v112 = ((v111 - ((v111 >> 1) & 0x5555555555555555LL)) & 0x3333333333333333LL) | |
+ (((v111 - ((v111 >> 1) & 0x5555555555555555LL)) >> 2) & 0x3333333333333333LL); | |
v113 = (0x101010101010101LL * ((v112 + (v112 >> 4)) & 0xF0F0F0F0F0F0F0FLL)) >> 56; | |
if ( v113 <= 1 ) | |
v114 = (v111 - 1) & 0xD880C65BC7CDE5FCLL; | |
else | |
v114 = v111 > 0xD880C65BC7CDE5FCLL ? 0xD880C65BC7CDE5FCLL : 0xD880C65BC7CDE5FCLL % v111; | |
v115 = *(float ***)(*((_QWORD *)v108 + 32) + 8 * v114); | |
if ( v115 ) | |
{ | |
v116 = *v115; | |
if ( v116 ) | |
{ | |
if ( v113 > 1 ) | |
{ | |
while ( 1 ) | |
{ | |
v117 = *((_QWORD *)v116 + 1); | |
if ( v117 == 0xD880C65BC7CDE5FCLL ) | |
{ | |
if ( *((_QWORD *)v116 + 2) == 0xD880C65BC7CDE5FCLL ) | |
goto LABEL_265; | |
} | |
else | |
{ | |
if ( v117 >= v111 ) | |
v117 %= v111; | |
if ( v117 != v114 ) | |
goto LABEL_266; | |
} | |
v116 = *(float **)v116; | |
if ( !v116 ) | |
goto LABEL_266; | |
} | |
} | |
v138 = v111 - 1; | |
while ( 1 ) | |
{ | |
v139 = *((_QWORD *)v116 + 1); | |
if ( v139 == 0xD880C65BC7CDE5FCLL ) | |
{ | |
if ( *((_QWORD *)v116 + 2) == 0xD880C65BC7CDE5FCLL ) | |
{ | |
LABEL_265: | |
atk_mod = v116[12]; // attack modifier for boosted attack stage of 2 | |
goto LABEL_266; | |
} | |
} | |
else if ( (v139 & v138) != v114 ) | |
{ | |
goto LABEL_266; | |
} | |
v116 = *(float **)v116; | |
if ( !v116 ) | |
goto LABEL_266; | |
} | |
} | |
} | |
} | |
do | |
{ | |
LABEL_266: | |
v140 = __ldaxr(v109); | |
v141 = --v140 == 0; | |
} | |
while ( __stlxr(v140, v109) ); | |
LABEL_278: | |
if ( v141 ) | |
(*(void (__fastcall **)(unsigned int *))(*(_QWORD *)v108 + 16LL))(v108); | |
} | |
LABEL_280: | |
opponent_def_stage = damage_calc_info->opponent_def_stage; | |
LABEL_281: | |
if ( opponent_def_stage == 1 ) | |
return (unsigned int)(float)((float)(atk_mod * (float)initial_damage) * def_mod); | |
if ( !opponent_def_stage ) | |
{ | |
v163 = atomic_load((unsigned __int8 *)&qword_71042A6FE0); | |
if ( (v163 & 1) == 0 && _cxa_guard_acquire_0(&qword_71042A6FE0) ) | |
{ | |
sub_7100000250((__int64)sub_71007B3CB4, (__int64)&qword_71042A6FD0, (__int64)&off_710401A000); | |
_cxa_guard_release_0(&qword_71042A6FE0); | |
} | |
qword_71042A6FC8 = qword_71042A6FD0; | |
v164 = *(_QWORD *)(qword_71042A6FD0 + 96); | |
def_mod = 0.0; | |
if ( !v164 ) | |
return (unsigned int)(float)((float)(atk_mod * (float)initial_damage) * def_mod); | |
v165 = ((v164 - ((v164 >> 1) & 0x5555555555555555LL)) & 0x3333333333333333LL) | |
+ (((v164 - ((v164 >> 1) & 0x5555555555555555LL)) >> 2) & 0x3333333333333333LL); | |
v166 = (0x101010101010101LL * ((v165 + (v165 >> 4)) & 0xF0F0F0F0F0F0F0FLL)) >> 56; | |
if ( v166 <= 1 ) | |
{ | |
v167 = (v164 - 1) & 0x63E2672F9E43A54ELL; | |
} | |
else | |
{ | |
v167 = 0x63E2672F9E43A54ELL; | |
if ( v164 <= 0x63E2672F9E43A54ELL ) | |
v167 = 0x63E2672F9E43A54ELL % v164; | |
} | |
v168 = *(_QWORD **)(*(_QWORD *)(qword_71042A6FD0 + 88) + 8 * v167); | |
if ( !v168 ) | |
return (unsigned int)(float)((float)(atk_mod * (float)initial_damage) * def_mod); | |
v169 = (_QWORD *)*v168; | |
if ( !v169 ) | |
return (unsigned int)(float)((float)(atk_mod * (float)initial_damage) * def_mod); | |
if ( v166 > 1 ) | |
{ | |
while ( 1 ) | |
{ | |
v170 = v169[1]; | |
if ( v170 == 0x63E2672F9E43A54ELL ) | |
{ | |
if ( v169[2] == 0x63E2672F9E43A54ELL ) | |
goto LABEL_322; | |
} | |
else | |
{ | |
if ( v170 >= v164 ) | |
v170 %= v164; | |
if ( v170 != v167 ) | |
return (unsigned int)(float)((float)(atk_mod * (float)initial_damage) * def_mod); | |
} | |
v169 = (_QWORD *)*v169; | |
if ( !v169 ) | |
return (unsigned int)(float)((float)(atk_mod * (float)initial_damage) * def_mod); | |
} | |
} | |
v201 = v164 - 1; | |
while ( 1 ) | |
{ | |
v202 = v169[1]; | |
if ( v202 == 0x63E2672F9E43A54ELL ) | |
{ | |
if ( v169[2] == 0x63E2672F9E43A54ELL ) | |
{ | |
LABEL_322: | |
v153 = (unsigned int *)v169[3]; | |
if ( !v153 ) | |
return (unsigned int)(float)((float)(atk_mod * (float)initial_damage) * def_mod); | |
v171 = v153 + 20; | |
do | |
v172 = __ldaxr(v171); | |
while ( __stlxr(v172 + 1, v171) ); | |
v173 = *((_QWORD *)v153 + 33); | |
def_mod = 0.0; | |
if ( v173 ) | |
{ | |
v174 = ((v173 - ((v173 >> 1) & 0x5555555555555555LL)) & 0x3333333333333333LL) | |
+ (((v173 - ((v173 >> 1) & 0x5555555555555555LL)) >> 2) & 0x3333333333333333LL); | |
v175 = (0x101010101010101LL * ((v174 + (v174 >> 4)) & 0xF0F0F0F0F0F0F0FLL)) >> 56; | |
if ( v175 <= 1 ) | |
v176 = (v173 - 1) & 0x74CF0C9C083F0690LL; | |
else | |
v176 = v173 > 0x74CF0C9C083F0690LL ? 0x74CF0C9C083F0690LL : 0x74CF0C9C083F0690LL % v173; | |
v177 = *(float ***)(*((_QWORD *)v153 + 32) + 8 * v176); | |
if ( v177 ) | |
{ | |
v178 = *v177; | |
if ( v178 ) | |
{ | |
if ( v175 > 1 ) | |
{ | |
while ( 1 ) | |
{ | |
v179 = *((_QWORD *)v178 + 1); | |
if ( v179 == 0x74CF0C9C083F0690LL ) | |
{ | |
if ( *((_QWORD *)v178 + 2) == 0x74CF0C9C083F0690LL ) | |
goto LABEL_371; | |
} | |
else | |
{ | |
if ( v179 >= v173 ) | |
v179 %= v173; | |
if ( v179 != v176 ) | |
goto LABEL_372; | |
} | |
v178 = *(float **)v178; | |
if ( !v178 ) | |
goto LABEL_372; | |
} | |
} | |
v184 = v173 - 1; | |
while ( 1 ) | |
{ | |
v185 = *((_QWORD *)v178 + 1); | |
if ( v185 == 0x74CF0C9C083F0690LL ) | |
{ | |
if ( *((_QWORD *)v178 + 2) == 0x74CF0C9C083F0690LL ) | |
{ | |
LABEL_371: | |
def_mod = v178[12]; // defense modifier for decreased defense stage of 0 | |
goto LABEL_372; | |
} | |
} | |
else if ( (v185 & v184) != v176 ) | |
{ | |
goto LABEL_372; | |
} | |
v178 = *(float **)v178; | |
if ( !v178 ) | |
goto LABEL_372; | |
} | |
} | |
} | |
} | |
do | |
{ | |
LABEL_372: | |
v186 = __ldaxr(v171); | |
v183 = --v186 == 0; | |
} | |
while ( __stlxr(v186, v171) ); | |
goto LABEL_355; | |
} | |
} | |
else if ( (v202 & v201) != v167 ) | |
{ | |
return (unsigned int)(float)((float)(atk_mod * (float)initial_damage) * def_mod); | |
} | |
v169 = (_QWORD *)*v169; | |
if ( !v169 ) | |
return (unsigned int)(float)((float)(atk_mod * (float)initial_damage) * def_mod); | |
} | |
} | |
v145 = atomic_load((unsigned __int8 *)&qword_71042A6FE0); | |
if ( (v145 & 1) == 0 && _cxa_guard_acquire_0(&qword_71042A6FE0) ) | |
{ | |
sub_7100000250((__int64)sub_71007B3CB4, (__int64)&qword_71042A6FD0, (__int64)&off_710401A000); | |
_cxa_guard_release_0(&qword_71042A6FE0); | |
} | |
qword_71042A6FC8 = qword_71042A6FD0; | |
v146 = *(_QWORD *)(qword_71042A6FD0 + 96); | |
def_mod = 0.0; | |
if ( !v146 ) | |
return (unsigned int)(float)((float)(atk_mod * (float)initial_damage) * def_mod); | |
v147 = ((v146 - ((v146 >> 1) & 0x5555555555555555LL)) & 0x3333333333333333LL) | |
+ (((v146 - ((v146 >> 1) & 0x5555555555555555LL)) >> 2) & 0x3333333333333333LL); | |
v148 = (0x101010101010101LL * ((v147 + (v147 >> 4)) & 0xF0F0F0F0F0F0F0FLL)) >> 56; | |
if ( v148 <= 1 ) | |
{ | |
v149 = (v146 - 1) & 0x63E2672F9E43A54ELL; | |
} | |
else | |
{ | |
v149 = 0x63E2672F9E43A54ELL; | |
if ( v146 <= 0x63E2672F9E43A54ELL ) | |
v149 = 0x63E2672F9E43A54ELL % v146; | |
} | |
v150 = *(_QWORD **)(*(_QWORD *)(qword_71042A6FD0 + 88) + 8 * v149); | |
if ( !v150 ) | |
return (unsigned int)(float)((float)(atk_mod * (float)initial_damage) * def_mod); | |
v151 = (_QWORD *)*v150; | |
if ( !v151 ) | |
return (unsigned int)(float)((float)(atk_mod * (float)initial_damage) * def_mod); | |
if ( v148 > 1 ) | |
{ | |
while ( 1 ) | |
{ | |
v152 = v151[1]; | |
if ( v152 == 0x63E2672F9E43A54ELL ) | |
{ | |
if ( v151[2] == 0x63E2672F9E43A54ELL ) | |
goto LABEL_294; | |
} | |
else | |
{ | |
if ( v152 >= v146 ) | |
v152 %= v146; | |
if ( v152 != v149 ) | |
return (unsigned int)(float)((float)(atk_mod * (float)initial_damage) * def_mod); | |
} | |
v151 = (_QWORD *)*v151; | |
if ( !v151 ) | |
return (unsigned int)(float)((float)(atk_mod * (float)initial_damage) * def_mod); | |
} | |
} | |
v197 = v146 - 1; | |
while ( 2 ) | |
{ | |
v198 = v151[1]; | |
if ( v198 != 0x63E2672F9E43A54ELL ) | |
{ | |
if ( (v198 & v197) != v149 ) | |
return (unsigned int)(float)((float)(atk_mod * (float)initial_damage) * def_mod); | |
LABEL_440: | |
v151 = (_QWORD *)*v151; | |
if ( !v151 ) | |
return (unsigned int)(float)((float)(atk_mod * (float)initial_damage) * def_mod); | |
continue; | |
} | |
break; | |
} | |
if ( v151[2] != 0x63E2672F9E43A54ELL ) | |
goto LABEL_440; | |
LABEL_294: | |
v153 = (unsigned int *)v151[3]; | |
if ( v153 ) | |
{ | |
v154 = v153 + 20; | |
do | |
v155 = __ldaxr(v154); | |
while ( __stlxr(v155 + 1, v154) ); | |
v156 = *((_QWORD *)v153 + 33); | |
def_mod = 0.0; | |
if ( v156 ) | |
{ | |
v157 = ((v156 - ((v156 >> 1) & 0x5555555555555555LL)) & 0x3333333333333333LL) | |
+ (((v156 - ((v156 >> 1) & 0x5555555555555555LL)) >> 2) & 0x3333333333333333LL); | |
v158 = (0x101010101010101LL * ((v157 + (v157 >> 4)) & 0xF0F0F0F0F0F0F0FLL)) >> 56; | |
if ( v158 <= 1 ) | |
v159 = (v156 - 1) & 0x7FFFA5D75E18DE47LL; | |
else | |
v159 = v156 > 0x7FFFA5D75E18DE47LL ? 0x7FFFA5D75E18DE47LL : 0x7FFFA5D75E18DE47LL % v156; | |
v160 = *(float ***)(*((_QWORD *)v153 + 32) + 8 * v159); | |
if ( v160 ) | |
{ | |
v161 = *v160; | |
if ( v161 ) | |
{ | |
if ( v158 > 1 ) | |
{ | |
while ( 1 ) | |
{ | |
v162 = *((_QWORD *)v161 + 1); | |
if ( v162 == 0x7FFFA5D75E18DE47LL ) | |
{ | |
if ( *((_QWORD *)v161 + 2) == 0x7FFFA5D75E18DE47LL ) | |
goto LABEL_353; | |
} | |
else | |
{ | |
if ( v162 >= v156 ) | |
v162 %= v156; | |
if ( v162 != v159 ) | |
goto LABEL_354; | |
} | |
v161 = *(float **)v161; | |
if ( !v161 ) | |
goto LABEL_354; | |
} | |
} | |
v180 = v156 - 1; | |
while ( 1 ) | |
{ | |
v181 = *((_QWORD *)v161 + 1); | |
if ( v181 == 0x7FFFA5D75E18DE47LL ) | |
{ | |
if ( *((_QWORD *)v161 + 2) == 0x7FFFA5D75E18DE47LL ) | |
{ | |
LABEL_353: | |
def_mod = v161[12]; // defense modifier for increased defense stage of 2 | |
goto LABEL_354; | |
} | |
} | |
else if ( (v181 & v180) != v159 ) | |
{ | |
goto LABEL_354; | |
} | |
v161 = *(float **)v161; | |
if ( !v161 ) | |
goto LABEL_354; | |
} | |
} | |
} | |
} | |
do | |
{ | |
LABEL_354: | |
v182 = __ldaxr(v154); | |
v183 = --v182 == 0; | |
} | |
while ( __stlxr(v182, v154) ); | |
LABEL_355: | |
if ( v183 ) | |
(*(void (__fastcall **)(unsigned int *))(*(_QWORD *)v153 + 16LL))(v153); | |
} | |
return (unsigned int)(float)((float)(atk_mod * (float)initial_damage) * def_mod); | |
} | |
----- | |
.text:000000710083DDE0 ; __int64 __fastcall calc_initial_damage_LA(damage_info *damage_calc_info) | |
.text:000000710083DDE0 calc_initial_damage_LA ; DATA XREF: sub_7100842C38+78↓o | |
.text:000000710083DDE0 | |
.text:000000710083DDE0 var_50 = -0x50 | |
.text:000000710083DDE0 var_40 = -0x40 | |
.text:000000710083DDE0 var_30 = -0x30 | |
.text:000000710083DDE0 var_20 = -0x20 | |
.text:000000710083DDE0 var_10 = -0x10 | |
.text:000000710083DDE0 var_s0 = 0 | |
.text:000000710083DDE0 | |
.text:000000710083DDE0 STP D11, D10, [SP,#-0x60]! | |
.text:000000710083DDE4 STP D9, D8, [SP,#0x50+var_40] | |
.text:000000710083DDE8 STP X24, X23, [SP,#0x50+var_30] | |
.text:000000710083DDEC STP X22, X21, [SP,#0x50+var_20] | |
.text:000000710083DDF0 STP X20, X19, [SP,#0x50+var_10] | |
.text:000000710083DDF4 STP X29, X30, [SP,#0x50+var_s0] | |
.text:000000710083DDF8 ADD X29, SP, #0x50 | |
.text:000000710083DDFC ADRP X24, #off_7104279660@PAGE | |
.text:000000710083DE00 LDR X24, [X24,#off_7104279660@PAGEOFF] | |
.text:000000710083DE04 LDARB W8, [X24] | |
.text:000000710083DE08 MOV X19, X0 | |
.text:000000710083DE0C TBZ W8, #0, loc_710083EFB4 | |
.text:000000710083DE10 | |
.text:000000710083DE10 loc_710083DE10 ; CODE XREF: calc_initial_damage_LA+11E0↓j | |
.text:000000710083DE10 ; calc_initial_damage_LA+120C↓j | |
.text:000000710083DE10 ADRP X22, #off_7104279668@PAGE | |
.text:000000710083DE14 LDR X22, [X22,#off_7104279668@PAGEOFF] | |
.text:000000710083DE18 ADRP X23, #off_7104279670@PAGE | |
.text:000000710083DE1C LDR X10, [X22] | |
.text:000000710083DE20 LDR X23, [X23,#off_7104279670@PAGEOFF] | |
.text:000000710083DE24 STR X10, [X23] | |
.text:000000710083DE28 LDR X8, [X10,#0x60] | |
.text:000000710083DE2C FMOV S8, WZR | |
.text:000000710083DE30 MOV X21, #0x63E2672F9E43A54E | |
.text:000000710083DE40 CBZ X8, loc_710083E020 | |
.text:000000710083DE44 LSR X9, X8, #1 | |
.text:000000710083DE48 AND X9, X9, #0x5555555555555555 | |
.text:000000710083DE4C SUB X9, X8, X9 | |
.text:000000710083DE50 AND X11, X9, #0x3333333333333333 | |
.text:000000710083DE54 LSR X9, X9, #2 | |
.text:000000710083DE58 AND X9, X9, #0x3333333333333333 | |
.text:000000710083DE5C ADD X9, X11, X9 | |
.text:000000710083DE60 MOV X11, #0x101010101010101 | |
.text:000000710083DE64 ADD X9, X9, X9,LSR#4 | |
.text:000000710083DE68 AND X9, X9, #0xF0F0F0F0F0F0F0F | |
.text:000000710083DE6C MUL X9, X9, X11 | |
.text:000000710083DE70 LSR X11, X9, #0x38 ; '8' | |
.text:000000710083DE74 CMP X11, #1 | |
.text:000000710083DE78 B.LS loc_710083EFF0 | |
.text:000000710083DE7C CMP X8, X21 | |
.text:000000710083DE80 MOV X9, X21 | |
.text:000000710083DE84 B.HI loc_710083DE90 | |
.text:000000710083DE88 UDIV X9, X21, X8 | |
.text:000000710083DE8C MSUB X9, X9, X8, X21 | |
.text:000000710083DE90 | |
.text:000000710083DE90 loc_710083DE90 ; CODE XREF: calc_initial_damage_LA+A4↑j | |
.text:000000710083DE90 ; calc_initial_damage_LA+1218↓j | |
.text:000000710083DE90 LDR X10, [X10,#0x58] | |
.text:000000710083DE94 LDR X10, [X10,X9,LSL#3] | |
.text:000000710083DE98 CBZ X10, loc_710083E020 | |
.text:000000710083DE9C LDR X10, [X10] | |
.text:000000710083DEA0 CBZ X10, loc_710083E020 | |
.text:000000710083DEA4 CMP X11, #1 | |
.text:000000710083DEA8 B.LS loc_710083F020 | |
.text:000000710083DEAC | |
.text:000000710083DEAC loc_710083DEAC ; CODE XREF: calc_initial_damage_LA+1DC↓j | |
.text:000000710083DEAC LDR X11, [X10,#8] | |
.text:000000710083DEB0 CMP X11, X21 | |
.text:000000710083DEB4 B.NE loc_710083DFA0 | |
.text:000000710083DEB8 LDR X11, [X10,#0x10] | |
.text:000000710083DEBC CMP X11, X21 | |
.text:000000710083DEC0 B.NE loc_710083DFB8 | |
.text:000000710083DEC4 | |
.text:000000710083DEC4 loc_710083DEC4 ; CODE XREF: calc_initial_damage_LA+1258↓j | |
.text:000000710083DEC4 LDR X0, [X10,#0x18] | |
.text:000000710083DEC8 CBZ X0, loc_710083E020 | |
.text:000000710083DECC ADD X8, X0, #0x50 ; 'P' | |
.text:000000710083DED0 | |
.text:000000710083DED0 loc_710083DED0 ; CODE XREF: calc_initial_damage_LA+FC↓j | |
.text:000000710083DED0 LDAXR W9, [X8] | |
.text:000000710083DED4 ADD W9, W9, #1 | |
.text:000000710083DED8 STLXR W10, W9, [X8] | |
.text:000000710083DEDC CBNZ W10, loc_710083DED0 | |
.text:000000710083DEE0 LDR X10, [X0,#0x108] | |
.text:000000710083DEE4 FMOV S8, WZR | |
.text:000000710083DEE8 CBZ X10, loc_710083E00C | |
.text:000000710083DEEC LSR X11, X10, #1 | |
.text:000000710083DEF0 AND X11, X11, #0x5555555555555555 | |
.text:000000710083DEF4 SUB X11, X10, X11 | |
.text:000000710083DEF8 AND X12, X11, #0x3333333333333333 | |
.text:000000710083DEFC LSR X11, X11, #2 | |
.text:000000710083DF00 AND X11, X11, #0x3333333333333333 | |
.text:000000710083DF04 ADD X11, X12, X11 | |
.text:000000710083DF08 MOV X12, #0x101010101010101 | |
.text:000000710083DF0C ADD X11, X11, X11,LSR#4 | |
.text:000000710083DF10 AND X11, X11, #0xF0F0F0F0F0F0F0F | |
.text:000000710083DF14 MUL X11, X11, X12 | |
.text:000000710083DF18 MOV X9, #0xB21685D155591C8D | |
.text:000000710083DF28 LSR X13, X11, #0x38 ; '8' | |
.text:000000710083DF2C CMP X13, #1 | |
.text:000000710083DF30 B.LS loc_710083DFC4 | |
.text:000000710083DF34 CMP X10, X9 | |
.text:000000710083DF38 B.HI loc_710083F2E8 | |
.text:000000710083DF3C UDIV X11, X9, X10 | |
.text:000000710083DF40 MSUB X11, X11, X10, X9 | |
.text:000000710083DF44 | |
.text:000000710083DF44 loc_710083DF44 ; CODE XREF: calc_initial_damage_LA+1EC↓j | |
.text:000000710083DF44 ; calc_initial_damage_LA+150C↓j | |
.text:000000710083DF44 LDR X12, [X0,#0x100] | |
.text:000000710083DF48 LDR X12, [X12,X11,LSL#3] | |
.text:000000710083DF4C CBZ X12, loc_710083E00C | |
.text:000000710083DF50 LDR X12, [X12] | |
.text:000000710083DF54 CBZ X12, loc_710083E00C | |
.text:000000710083DF58 CMP X13, #1 | |
.text:000000710083DF5C B.LS loc_710083DFD0 | |
.text:000000710083DF60 | |
.text:000000710083DF60 loc_710083DF60 ; CODE XREF: calc_initial_damage_LA+1B8↓j | |
.text:000000710083DF60 LDR X13, [X12,#8] | |
.text:000000710083DF64 CMP X13, X9 | |
.text:000000710083DF68 B.NE loc_710083DF7C | |
.text:000000710083DF6C LDR X13, [X12,#0x10] | |
.text:000000710083DF70 CMP X13, X9 | |
.text:000000710083DF74 B.EQ loc_710083E008 | |
.text:000000710083DF78 B loc_710083DF94 | |
.text:000000710083DF7C ; --------------------------------------------------------------------------- | |
.text:000000710083DF7C | |
.text:000000710083DF7C loc_710083DF7C ; CODE XREF: calc_initial_damage_LA+188↑j | |
.text:000000710083DF7C CMP X13, X10 | |
.text:000000710083DF80 B.CC loc_710083DF8C | |
.text:000000710083DF84 UDIV X14, X13, X10 | |
.text:000000710083DF88 MSUB X13, X14, X10, X13 | |
.text:000000710083DF8C | |
.text:000000710083DF8C loc_710083DF8C ; CODE XREF: calc_initial_damage_LA+1A0↑j | |
.text:000000710083DF8C CMP X13, X11 | |
.text:000000710083DF90 B.NE loc_710083E00C | |
.text:000000710083DF94 | |
.text:000000710083DF94 loc_710083DF94 ; CODE XREF: calc_initial_damage_LA+198↑j | |
.text:000000710083DF94 LDR X12, [X12] | |
.text:000000710083DF98 CBNZ X12, loc_710083DF60 | |
.text:000000710083DF9C B loc_710083E00C | |
.text:000000710083DFA0 ; --------------------------------------------------------------------------- | |
.text:000000710083DFA0 | |
.text:000000710083DFA0 loc_710083DFA0 ; CODE XREF: calc_initial_damage_LA+D4↑j | |
.text:000000710083DFA0 CMP X11, X8 | |
.text:000000710083DFA4 B.CC loc_710083DFB0 | |
.text:000000710083DFA8 UDIV X12, X11, X8 | |
.text:000000710083DFAC MSUB X11, X12, X8, X11 | |
.text:000000710083DFB0 | |
.text:000000710083DFB0 loc_710083DFB0 ; CODE XREF: calc_initial_damage_LA+1C4↑j | |
.text:000000710083DFB0 CMP X11, X9 | |
.text:000000710083DFB4 B.NE loc_710083E020 | |
.text:000000710083DFB8 | |
.text:000000710083DFB8 loc_710083DFB8 ; CODE XREF: calc_initial_damage_LA+E0↑j | |
.text:000000710083DFB8 LDR X10, [X10] | |
.text:000000710083DFBC CBNZ X10, loc_710083DEAC | |
.text:000000710083DFC0 B loc_710083E020 | |
.text:000000710083DFC4 ; --------------------------------------------------------------------------- | |
.text:000000710083DFC4 | |
.text:000000710083DFC4 loc_710083DFC4 ; CODE XREF: calc_initial_damage_LA+150↑j | |
.text:000000710083DFC4 SUB X11, X10, #1 | |
.text:000000710083DFC8 AND X11, X11, X9 | |
.text:000000710083DFCC B loc_710083DF44 | |
.text:000000710083DFD0 ; --------------------------------------------------------------------------- | |
.text:000000710083DFD0 | |
.text:000000710083DFD0 loc_710083DFD0 ; CODE XREF: calc_initial_damage_LA+17C↑j | |
.text:000000710083DFD0 SUB X10, X10, #1 | |
.text:000000710083DFD4 | |
.text:000000710083DFD4 loc_710083DFD4 ; CODE XREF: calc_initial_damage_LA+220↓j | |
.text:000000710083DFD4 LDR X13, [X12,#8] | |
.text:000000710083DFD8 CMP X13, X9 | |
.text:000000710083DFDC B.NE loc_710083DFF0 | |
.text:000000710083DFE0 LDR X13, [X12,#0x10] | |
.text:000000710083DFE4 CMP X13, X9 | |
.text:000000710083DFE8 B.EQ loc_710083E008 | |
.text:000000710083DFEC B loc_710083DFFC | |
.text:000000710083DFF0 ; --------------------------------------------------------------------------- | |
.text:000000710083DFF0 | |
.text:000000710083DFF0 loc_710083DFF0 ; CODE XREF: calc_initial_damage_LA+1FC↑j | |
.text:000000710083DFF0 AND X13, X13, X10 | |
.text:000000710083DFF4 CMP X13, X11 | |
.text:000000710083DFF8 B.NE loc_710083E00C | |
.text:000000710083DFFC | |
.text:000000710083DFFC loc_710083DFFC ; CODE XREF: calc_initial_damage_LA+20C↑j | |
.text:000000710083DFFC LDR X12, [X12] | |
.text:000000710083E000 CBNZ X12, loc_710083DFD4 | |
.text:000000710083E004 B loc_710083E00C | |
.text:000000710083E008 ; --------------------------------------------------------------------------- | |
.text:000000710083E008 | |
.text:000000710083E008 loc_710083E008 ; CODE XREF: calc_initial_damage_LA+194↑j | |
.text:000000710083E008 ; calc_initial_damage_LA+208↑j | |
.text:000000710083E008 LDR S8, [X12,#0x30] | |
.text:000000710083E00C | |
.text:000000710083E00C loc_710083E00C ; CODE XREF: calc_initial_damage_LA+108↑j | |
.text:000000710083E00C ; calc_initial_damage_LA+16C↑j ... | |
.text:000000710083E00C LDAXR W9, [X8] | |
.text:000000710083E010 SUBS W9, W9, #1 | |
.text:000000710083E014 STLXR W10, W9, [X8] | |
.text:000000710083E018 CBNZ W10, loc_710083E00C | |
.text:000000710083E01C B.EQ loc_710083E980 | |
.text:000000710083E020 | |
.text:000000710083E020 loc_710083E020 ; CODE XREF: calc_initial_damage_LA+60↑j | |
.text:000000710083E020 ; calc_initial_damage_LA+B8↑j ... | |
.text:000000710083E020 LDARB W8, [X24] | |
.text:000000710083E024 TBZ W8, #0, loc_710083E994 | |
.text:000000710083E028 | |
.text:000000710083E028 loc_710083E028 ; CODE XREF: calc_initial_damage_LA+BB0↓j | |
.text:000000710083E028 ; calc_initial_damage_LA+BC0↓j ... | |
.text:000000710083E028 LDR X10, [X22] | |
.text:000000710083E02C STR X10, [X23] | |
.text:000000710083E030 LDR X8, [X10,#0x60] | |
.text:000000710083E034 FMOV S9, WZR | |
.text:000000710083E038 CBZ X8, loc_710083E218 | |
.text:000000710083E03C LSR X9, X8, #1 | |
.text:000000710083E040 AND X9, X9, #0x5555555555555555 | |
.text:000000710083E044 SUB X9, X8, X9 | |
.text:000000710083E048 AND X11, X9, #0x3333333333333333 | |
.text:000000710083E04C LSR X9, X9, #2 | |
.text:000000710083E050 AND X9, X9, #0x3333333333333333 | |
.text:000000710083E054 ADD X9, X11, X9 | |
.text:000000710083E058 MOV X11, #0x101010101010101 | |
.text:000000710083E05C ADD X9, X9, X9,LSR#4 | |
.text:000000710083E060 AND X9, X9, #0xF0F0F0F0F0F0F0F | |
.text:000000710083E064 MUL X9, X9, X11 | |
.text:000000710083E068 LSR X11, X9, #0x38 ; '8' | |
.text:000000710083E06C CMP X11, #1 | |
.text:000000710083E070 B.LS loc_710083EFFC | |
.text:000000710083E074 CMP X8, X21 | |
.text:000000710083E078 MOV X9, X21 | |
.text:000000710083E07C B.HI loc_710083E088 | |
.text:000000710083E080 UDIV X9, X21, X8 | |
.text:000000710083E084 MSUB X9, X9, X8, X21 | |
.text:000000710083E088 | |
.text:000000710083E088 loc_710083E088 ; CODE XREF: calc_initial_damage_LA+29C↑j | |
.text:000000710083E088 ; calc_initial_damage_LA+1224↓j | |
.text:000000710083E088 LDR X10, [X10,#0x58] | |
.text:000000710083E08C LDR X10, [X10,X9,LSL#3] | |
.text:000000710083E090 CBZ X10, loc_710083E218 | |
.text:000000710083E094 LDR X10, [X10] | |
.text:000000710083E098 CBZ X10, loc_710083E218 | |
.text:000000710083E09C CMP X11, #1 | |
.text:000000710083E0A0 B.LS loc_710083F040 | |
.text:000000710083E0A4 | |
.text:000000710083E0A4 loc_710083E0A4 ; CODE XREF: calc_initial_damage_LA+3D4↓j | |
.text:000000710083E0A4 LDR X11, [X10,#8] | |
.text:000000710083E0A8 CMP X11, X21 | |
.text:000000710083E0AC B.NE loc_710083E198 | |
.text:000000710083E0B0 LDR X11, [X10,#0x10] | |
.text:000000710083E0B4 CMP X11, X21 | |
.text:000000710083E0B8 B.NE loc_710083E1B0 | |
.text:000000710083E0BC | |
.text:000000710083E0BC loc_710083E0BC ; CODE XREF: calc_initial_damage_LA+1278↓j | |
.text:000000710083E0BC LDR X0, [X10,#0x18] | |
.text:000000710083E0C0 CBZ X0, loc_710083E218 | |
.text:000000710083E0C4 ADD X8, X0, #0x50 ; 'P' | |
.text:000000710083E0C8 | |
.text:000000710083E0C8 loc_710083E0C8 ; CODE XREF: calc_initial_damage_LA+2F4↓j | |
.text:000000710083E0C8 LDAXR W9, [X8] | |
.text:000000710083E0CC ADD W9, W9, #1 | |
.text:000000710083E0D0 STLXR W10, W9, [X8] | |
.text:000000710083E0D4 CBNZ W10, loc_710083E0C8 | |
.text:000000710083E0D8 LDR X10, [X0,#0x108] | |
.text:000000710083E0DC FMOV S9, WZR | |
.text:000000710083E0E0 CBZ X10, loc_710083E204 | |
.text:000000710083E0E4 LSR X11, X10, #1 | |
.text:000000710083E0E8 AND X11, X11, #0x5555555555555555 | |
.text:000000710083E0EC SUB X11, X10, X11 | |
.text:000000710083E0F0 AND X12, X11, #0x3333333333333333 | |
.text:000000710083E0F4 LSR X11, X11, #2 | |
.text:000000710083E0F8 AND X11, X11, #0x3333333333333333 | |
.text:000000710083E0FC ADD X11, X12, X11 | |
.text:000000710083E100 MOV X12, #0x101010101010101 | |
.text:000000710083E104 ADD X11, X11, X11,LSR#4 | |
.text:000000710083E108 AND X11, X11, #0xF0F0F0F0F0F0F0F | |
.text:000000710083E10C MUL X11, X11, X12 | |
.text:000000710083E110 MOV X9, #0x45990018E9C0F480 | |
.text:000000710083E120 LSR X13, X11, #0x38 ; '8' | |
.text:000000710083E124 CMP X13, #1 | |
.text:000000710083E128 B.LS loc_710083E1BC | |
.text:000000710083E12C CMP X10, X9 | |
.text:000000710083E130 B.HI loc_710083F2F0 | |
.text:000000710083E134 UDIV X11, X9, X10 | |
.text:000000710083E138 MSUB X11, X11, X10, X9 | |
.text:000000710083E13C | |
.text:000000710083E13C loc_710083E13C ; CODE XREF: calc_initial_damage_LA+3E4↓j | |
.text:000000710083E13C ; calc_initial_damage_LA+1514↓j | |
.text:000000710083E13C LDR X12, [X0,#0x100] | |
.text:000000710083E140 LDR X12, [X12,X11,LSL#3] | |
.text:000000710083E144 CBZ X12, loc_710083E204 | |
.text:000000710083E148 LDR X12, [X12] | |
.text:000000710083E14C CBZ X12, loc_710083E204 | |
.text:000000710083E150 CMP X13, #1 | |
.text:000000710083E154 B.LS loc_710083E1C8 | |
.text:000000710083E158 | |
.text:000000710083E158 loc_710083E158 ; CODE XREF: calc_initial_damage_LA+3B0↓j | |
.text:000000710083E158 LDR X13, [X12,#8] | |
.text:000000710083E15C CMP X13, X9 | |
.text:000000710083E160 B.NE loc_710083E174 | |
.text:000000710083E164 LDR X13, [X12,#0x10] | |
.text:000000710083E168 CMP X13, X9 | |
.text:000000710083E16C B.EQ loc_710083E200 | |
.text:000000710083E170 B loc_710083E18C | |
.text:000000710083E174 ; --------------------------------------------------------------------------- | |
.text:000000710083E174 | |
.text:000000710083E174 loc_710083E174 ; CODE XREF: calc_initial_damage_LA+380↑j | |
.text:000000710083E174 CMP X13, X10 | |
.text:000000710083E178 B.CC loc_710083E184 | |
.text:000000710083E17C UDIV X14, X13, X10 | |
.text:000000710083E180 MSUB X13, X14, X10, X13 | |
.text:000000710083E184 | |
.text:000000710083E184 loc_710083E184 ; CODE XREF: calc_initial_damage_LA+398↑j | |
.text:000000710083E184 CMP X13, X11 | |
.text:000000710083E188 B.NE loc_710083E204 | |
.text:000000710083E18C | |
.text:000000710083E18C loc_710083E18C ; CODE XREF: calc_initial_damage_LA+390↑j | |
.text:000000710083E18C LDR X12, [X12] | |
.text:000000710083E190 CBNZ X12, loc_710083E158 | |
.text:000000710083E194 B loc_710083E204 | |
.text:000000710083E198 ; --------------------------------------------------------------------------- | |
.text:000000710083E198 | |
.text:000000710083E198 loc_710083E198 ; CODE XREF: calc_initial_damage_LA+2CC↑j | |
.text:000000710083E198 CMP X11, X8 | |
.text:000000710083E19C B.CC loc_710083E1A8 | |
.text:000000710083E1A0 UDIV X12, X11, X8 | |
.text:000000710083E1A4 MSUB X11, X12, X8, X11 | |
.text:000000710083E1A8 | |
.text:000000710083E1A8 loc_710083E1A8 ; CODE XREF: calc_initial_damage_LA+3BC↑j | |
.text:000000710083E1A8 CMP X11, X9 | |
.text:000000710083E1AC B.NE loc_710083E218 | |
.text:000000710083E1B0 | |
.text:000000710083E1B0 loc_710083E1B0 ; CODE XREF: calc_initial_damage_LA+2D8↑j | |
.text:000000710083E1B0 LDR X10, [X10] | |
.text:000000710083E1B4 CBNZ X10, loc_710083E0A4 | |
.text:000000710083E1B8 B loc_710083E218 | |
.text:000000710083E1BC ; --------------------------------------------------------------------------- | |
.text:000000710083E1BC | |
.text:000000710083E1BC loc_710083E1BC ; CODE XREF: calc_initial_damage_LA+348↑j | |
.text:000000710083E1BC SUB X11, X10, #1 | |
.text:000000710083E1C0 AND X11, X11, X9 | |
.text:000000710083E1C4 B loc_710083E13C | |
.text:000000710083E1C8 ; --------------------------------------------------------------------------- | |
.text:000000710083E1C8 | |
.text:000000710083E1C8 loc_710083E1C8 ; CODE XREF: calc_initial_damage_LA+374↑j | |
.text:000000710083E1C8 SUB X10, X10, #1 | |
.text:000000710083E1CC | |
.text:000000710083E1CC loc_710083E1CC ; CODE XREF: calc_initial_damage_LA+418↓j | |
.text:000000710083E1CC LDR X13, [X12,#8] | |
.text:000000710083E1D0 CMP X13, X9 | |
.text:000000710083E1D4 B.NE loc_710083E1E8 | |
.text:000000710083E1D8 LDR X13, [X12,#0x10] | |
.text:000000710083E1DC CMP X13, X9 | |
.text:000000710083E1E0 B.EQ loc_710083E200 | |
.text:000000710083E1E4 B loc_710083E1F4 | |
.text:000000710083E1E8 ; --------------------------------------------------------------------------- | |
.text:000000710083E1E8 | |
.text:000000710083E1E8 loc_710083E1E8 ; CODE XREF: calc_initial_damage_LA+3F4↑j | |
.text:000000710083E1E8 AND X13, X13, X10 | |
.text:000000710083E1EC CMP X13, X11 | |
.text:000000710083E1F0 B.NE loc_710083E204 | |
.text:000000710083E1F4 | |
.text:000000710083E1F4 loc_710083E1F4 ; CODE XREF: calc_initial_damage_LA+404↑j | |
.text:000000710083E1F4 LDR X12, [X12] | |
.text:000000710083E1F8 CBNZ X12, loc_710083E1CC | |
.text:000000710083E1FC B loc_710083E204 | |
.text:000000710083E200 ; --------------------------------------------------------------------------- | |
.text:000000710083E200 | |
.text:000000710083E200 loc_710083E200 ; CODE XREF: calc_initial_damage_LA+38C↑j | |
.text:000000710083E200 ; calc_initial_damage_LA+400↑j | |
.text:000000710083E200 LDR S9, [X12,#0x30] | |
.text:000000710083E204 | |
.text:000000710083E204 loc_710083E204 ; CODE XREF: calc_initial_damage_LA+300↑j | |
.text:000000710083E204 ; calc_initial_damage_LA+364↑j ... | |
.text:000000710083E204 LDAXR W9, [X8] | |
.text:000000710083E208 SUBS W9, W9, #1 | |
.text:000000710083E20C STLXR W10, W9, [X8] | |
.text:000000710083E210 CBNZ W10, loc_710083E204 | |
.text:000000710083E214 B.EQ loc_710083E9D0 | |
.text:000000710083E218 | |
.text:000000710083E218 loc_710083E218 ; CODE XREF: calc_initial_damage_LA+258↑j | |
.text:000000710083E218 ; calc_initial_damage_LA+2B0↑j ... | |
.text:000000710083E218 LDARB W8, [X24] | |
.text:000000710083E21C TBZ W8, #0, loc_710083E9E4 | |
.text:000000710083E220 | |
.text:000000710083E220 loc_710083E220 ; CODE XREF: calc_initial_damage_LA+C00↓j | |
.text:000000710083E220 ; calc_initial_damage_LA+C10↓j ... | |
.text:000000710083E220 LDR X10, [X22] | |
.text:000000710083E224 STR X10, [X23] | |
.text:000000710083E228 LDR X8, [X10,#0x60] | |
.text:000000710083E22C FMOV S10, WZR | |
.text:000000710083E230 CBZ X8, loc_710083E410 | |
.text:000000710083E234 LSR X9, X8, #1 | |
.text:000000710083E238 AND X9, X9, #0x5555555555555555 | |
.text:000000710083E23C SUB X9, X8, X9 | |
.text:000000710083E240 AND X11, X9, #0x3333333333333333 | |
.text:000000710083E244 LSR X9, X9, #2 | |
.text:000000710083E248 AND X9, X9, #0x3333333333333333 | |
.text:000000710083E24C ADD X9, X11, X9 | |
.text:000000710083E250 MOV X11, #0x101010101010101 | |
.text:000000710083E254 ADD X9, X9, X9,LSR#4 | |
.text:000000710083E258 AND X9, X9, #0xF0F0F0F0F0F0F0F | |
.text:000000710083E25C MUL X9, X9, X11 | |
.text:000000710083E260 LSR X11, X9, #0x38 ; '8' | |
.text:000000710083E264 CMP X11, #1 | |
.text:000000710083E268 B.LS loc_710083F008 | |
.text:000000710083E26C CMP X8, X21 | |
.text:000000710083E270 MOV X9, X21 | |
.text:000000710083E274 B.HI loc_710083E280 | |
.text:000000710083E278 UDIV X9, X21, X8 | |
.text:000000710083E27C MSUB X9, X9, X8, X21 | |
.text:000000710083E280 | |
.text:000000710083E280 loc_710083E280 ; CODE XREF: calc_initial_damage_LA+494↑j | |
.text:000000710083E280 ; calc_initial_damage_LA+1230↓j | |
.text:000000710083E280 LDR X10, [X10,#0x58] | |
.text:000000710083E284 LDR X10, [X10,X9,LSL#3] | |
.text:000000710083E288 CBZ X10, loc_710083E410 | |
.text:000000710083E28C LDR X10, [X10] | |
.text:000000710083E290 CBZ X10, loc_710083E410 | |
.text:000000710083E294 CMP X11, #1 | |
.text:000000710083E298 B.LS loc_710083F060 | |
.text:000000710083E29C | |
.text:000000710083E29C loc_710083E29C ; CODE XREF: calc_initial_damage_LA+5CC↓j | |
.text:000000710083E29C LDR X11, [X10,#8] | |
.text:000000710083E2A0 CMP X11, X21 | |
.text:000000710083E2A4 B.NE loc_710083E390 | |
.text:000000710083E2A8 LDR X11, [X10,#0x10] | |
.text:000000710083E2AC CMP X11, X21 | |
.text:000000710083E2B0 B.NE loc_710083E3A8 | |
.text:000000710083E2B4 | |
.text:000000710083E2B4 loc_710083E2B4 ; CODE XREF: calc_initial_damage_LA+1298↓j | |
.text:000000710083E2B4 LDR X0, [X10,#0x18] | |
.text:000000710083E2B8 CBZ X0, loc_710083E410 | |
.text:000000710083E2BC ADD X8, X0, #0x50 ; 'P' | |
.text:000000710083E2C0 | |
.text:000000710083E2C0 loc_710083E2C0 ; CODE XREF: calc_initial_damage_LA+4EC↓j | |
.text:000000710083E2C0 LDAXR W9, [X8] | |
.text:000000710083E2C4 ADD W9, W9, #1 | |
.text:000000710083E2C8 STLXR W10, W9, [X8] | |
.text:000000710083E2CC CBNZ W10, loc_710083E2C0 | |
.text:000000710083E2D0 LDR X10, [X0,#0x108] | |
.text:000000710083E2D4 FMOV S10, WZR | |
.text:000000710083E2D8 CBZ X10, loc_710083E3FC | |
.text:000000710083E2DC LSR X11, X10, #1 | |
.text:000000710083E2E0 AND X11, X11, #0x5555555555555555 | |
.text:000000710083E2E4 SUB X11, X10, X11 | |
.text:000000710083E2E8 AND X12, X11, #0x3333333333333333 | |
.text:000000710083E2EC LSR X11, X11, #2 | |
.text:000000710083E2F0 AND X11, X11, #0x3333333333333333 | |
.text:000000710083E2F4 ADD X11, X12, X11 | |
.text:000000710083E2F8 MOV X12, #0x101010101010101 | |
.text:000000710083E2FC ADD X11, X11, X11,LSR#4 | |
.text:000000710083E300 AND X11, X11, #0xF0F0F0F0F0F0F0F | |
.text:000000710083E304 MUL X11, X11, X12 | |
.text:000000710083E308 MOV X9, #0xBA4D65E8A0531F16 | |
.text:000000710083E318 LSR X13, X11, #0x38 ; '8' | |
.text:000000710083E31C CMP X13, #1 | |
.text:000000710083E320 B.LS loc_710083E3B4 | |
.text:000000710083E324 CMP X10, X9 | |
.text:000000710083E328 B.HI loc_710083F2F8 | |
.text:000000710083E32C UDIV X11, X9, X10 | |
.text:000000710083E330 MSUB X11, X11, X10, X9 | |
.text:000000710083E334 | |
.text:000000710083E334 loc_710083E334 ; CODE XREF: calc_initial_damage_LA+5DC↓j | |
.text:000000710083E334 ; calc_initial_damage_LA+151C↓j | |
.text:000000710083E334 LDR X12, [X0,#0x100] | |
.text:000000710083E338 LDR X12, [X12,X11,LSL#3] | |
.text:000000710083E33C CBZ X12, loc_710083E3FC | |
.text:000000710083E340 LDR X12, [X12] | |
.text:000000710083E344 CBZ X12, loc_710083E3FC | |
.text:000000710083E348 CMP X13, #1 | |
.text:000000710083E34C B.LS loc_710083E3C0 | |
.text:000000710083E350 | |
.text:000000710083E350 loc_710083E350 ; CODE XREF: calc_initial_damage_LA+5A8↓j | |
.text:000000710083E350 LDR X13, [X12,#8] | |
.text:000000710083E354 CMP X13, X9 | |
.text:000000710083E358 B.NE loc_710083E36C | |
.text:000000710083E35C LDR X13, [X12,#0x10] | |
.text:000000710083E360 CMP X13, X9 | |
.text:000000710083E364 B.EQ loc_710083E3F8 | |
.text:000000710083E368 B loc_710083E384 | |
.text:000000710083E36C ; --------------------------------------------------------------------------- | |
.text:000000710083E36C | |
.text:000000710083E36C loc_710083E36C ; CODE XREF: calc_initial_damage_LA+578↑j | |
.text:000000710083E36C CMP X13, X10 | |
.text:000000710083E370 B.CC loc_710083E37C | |
.text:000000710083E374 UDIV X14, X13, X10 | |
.text:000000710083E378 MSUB X13, X14, X10, X13 | |
.text:000000710083E37C | |
.text:000000710083E37C loc_710083E37C ; CODE XREF: calc_initial_damage_LA+590↑j | |
.text:000000710083E37C CMP X13, X11 | |
.text:000000710083E380 B.NE loc_710083E3FC | |
.text:000000710083E384 | |
.text:000000710083E384 loc_710083E384 ; CODE XREF: calc_initial_damage_LA+588↑j | |
.text:000000710083E384 LDR X12, [X12] | |
.text:000000710083E388 CBNZ X12, loc_710083E350 | |
.text:000000710083E38C B loc_710083E3FC | |
.text:000000710083E390 ; --------------------------------------------------------------------------- | |
.text:000000710083E390 | |
.text:000000710083E390 loc_710083E390 ; CODE XREF: calc_initial_damage_LA+4C4↑j | |
.text:000000710083E390 CMP X11, X8 | |
.text:000000710083E394 B.CC loc_710083E3A0 | |
.text:000000710083E398 UDIV X12, X11, X8 | |
.text:000000710083E39C MSUB X11, X12, X8, X11 | |
.text:000000710083E3A0 | |
.text:000000710083E3A0 loc_710083E3A0 ; CODE XREF: calc_initial_damage_LA+5B4↑j | |
.text:000000710083E3A0 CMP X11, X9 | |
.text:000000710083E3A4 B.NE loc_710083E410 | |
.text:000000710083E3A8 | |
.text:000000710083E3A8 loc_710083E3A8 ; CODE XREF: calc_initial_damage_LA+4D0↑j | |
.text:000000710083E3A8 LDR X10, [X10] | |
.text:000000710083E3AC CBNZ X10, loc_710083E29C | |
.text:000000710083E3B0 B loc_710083E410 | |
.text:000000710083E3B4 ; --------------------------------------------------------------------------- | |
.text:000000710083E3B4 | |
.text:000000710083E3B4 loc_710083E3B4 ; CODE XREF: calc_initial_damage_LA+540↑j | |
.text:000000710083E3B4 SUB X11, X10, #1 | |
.text:000000710083E3B8 AND X11, X11, X9 | |
.text:000000710083E3BC B loc_710083E334 | |
.text:000000710083E3C0 ; --------------------------------------------------------------------------- | |
.text:000000710083E3C0 | |
.text:000000710083E3C0 loc_710083E3C0 ; CODE XREF: calc_initial_damage_LA+56C↑j | |
.text:000000710083E3C0 SUB X10, X10, #1 | |
.text:000000710083E3C4 | |
.text:000000710083E3C4 loc_710083E3C4 ; CODE XREF: calc_initial_damage_LA+610↓j | |
.text:000000710083E3C4 LDR X13, [X12,#8] | |
.text:000000710083E3C8 CMP X13, X9 | |
.text:000000710083E3CC B.NE loc_710083E3E0 | |
.text:000000710083E3D0 LDR X13, [X12,#0x10] | |
.text:000000710083E3D4 CMP X13, X9 | |
.text:000000710083E3D8 B.EQ loc_710083E3F8 | |
.text:000000710083E3DC B loc_710083E3EC | |
.text:000000710083E3E0 ; --------------------------------------------------------------------------- | |
.text:000000710083E3E0 | |
.text:000000710083E3E0 loc_710083E3E0 ; CODE XREF: calc_initial_damage_LA+5EC↑j | |
.text:000000710083E3E0 AND X13, X13, X10 | |
.text:000000710083E3E4 CMP X13, X11 | |
.text:000000710083E3E8 B.NE loc_710083E3FC | |
.text:000000710083E3EC | |
.text:000000710083E3EC loc_710083E3EC ; CODE XREF: calc_initial_damage_LA+5FC↑j | |
.text:000000710083E3EC LDR X12, [X12] | |
.text:000000710083E3F0 CBNZ X12, loc_710083E3C4 | |
.text:000000710083E3F4 B loc_710083E3FC | |
.text:000000710083E3F8 ; --------------------------------------------------------------------------- | |
.text:000000710083E3F8 | |
.text:000000710083E3F8 loc_710083E3F8 ; CODE XREF: calc_initial_damage_LA+584↑j | |
.text:000000710083E3F8 ; calc_initial_damage_LA+5F8↑j | |
.text:000000710083E3F8 LDR S10, [X12,#0x30] | |
.text:000000710083E3FC | |
.text:000000710083E3FC loc_710083E3FC ; CODE XREF: calc_initial_damage_LA+4F8↑j | |
.text:000000710083E3FC ; calc_initial_damage_LA+55C↑j ... | |
.text:000000710083E3FC LDAXR W9, [X8] | |
.text:000000710083E400 SUBS W9, W9, #1 | |
.text:000000710083E404 STLXR W10, W9, [X8] | |
.text:000000710083E408 CBNZ W10, loc_710083E3FC | |
.text:000000710083E40C B.EQ loc_710083EA20 | |
.text:000000710083E410 | |
.text:000000710083E410 loc_710083E410 ; CODE XREF: calc_initial_damage_LA+450↑j | |
.text:000000710083E410 ; calc_initial_damage_LA+4A8↑j ... | |
.text:000000710083E410 LDARB W8, [X24] | |
.text:000000710083E414 TBZ W8, #0, loc_710083EA34 | |
.text:000000710083E418 | |
.text:000000710083E418 loc_710083E418 ; CODE XREF: calc_initial_damage_LA+C50↓j | |
.text:000000710083E418 ; calc_initial_damage_LA+C60↓j ... | |
.text:000000710083E418 LDR X10, [X22] | |
.text:000000710083E41C STR X10, [X23] | |
.text:000000710083E420 LDR X8, [X10,#0x60] | |
.text:000000710083E424 FMOV S11, WZR | |
.text:000000710083E428 CBZ X8, loc_710083E608 | |
.text:000000710083E42C LSR X9, X8, #1 | |
.text:000000710083E430 AND X9, X9, #0x5555555555555555 | |
.text:000000710083E434 SUB X9, X8, X9 | |
.text:000000710083E438 AND X11, X9, #0x3333333333333333 | |
.text:000000710083E43C LSR X9, X9, #2 | |
.text:000000710083E440 AND X9, X9, #0x3333333333333333 | |
.text:000000710083E444 ADD X9, X11, X9 | |
.text:000000710083E448 MOV X11, #0x101010101010101 | |
.text:000000710083E44C ADD X9, X9, X9,LSR#4 | |
.text:000000710083E450 AND X9, X9, #0xF0F0F0F0F0F0F0F | |
.text:000000710083E454 MUL X9, X9, X11 | |
.text:000000710083E458 LSR X11, X9, #0x38 ; '8' | |
.text:000000710083E45C CMP X11, #1 | |
.text:000000710083E460 B.LS loc_710083F014 | |
.text:000000710083E464 CMP X8, X21 | |
.text:000000710083E468 MOV X9, X21 | |
.text:000000710083E46C B.HI loc_710083E478 | |
.text:000000710083E470 UDIV X9, X21, X8 | |
.text:000000710083E474 MSUB X9, X9, X8, X21 | |
.text:000000710083E478 | |
.text:000000710083E478 loc_710083E478 ; CODE XREF: calc_initial_damage_LA+68C↑j | |
.text:000000710083E478 ; calc_initial_damage_LA+123C↓j | |
.text:000000710083E478 LDR X10, [X10,#0x58] | |
.text:000000710083E47C LDR X10, [X10,X9,LSL#3] | |
.text:000000710083E480 CBZ X10, loc_710083E608 | |
.text:000000710083E484 LDR X10, [X10] | |
.text:000000710083E488 CBZ X10, loc_710083E608 | |
.text:000000710083E48C CMP X11, #1 | |
.text:000000710083E490 B.LS loc_710083F080 | |
.text:000000710083E494 | |
.text:000000710083E494 loc_710083E494 ; CODE XREF: calc_initial_damage_LA+7C4↓j | |
.text:000000710083E494 LDR X11, [X10,#8] | |
.text:000000710083E498 CMP X11, X21 | |
.text:000000710083E49C B.NE loc_710083E588 | |
.text:000000710083E4A0 LDR X11, [X10,#0x10] | |
.text:000000710083E4A4 CMP X11, X21 | |
.text:000000710083E4A8 B.NE loc_710083E5A0 | |
.text:000000710083E4AC | |
.text:000000710083E4AC loc_710083E4AC ; CODE XREF: calc_initial_damage_LA+12B8↓j | |
.text:000000710083E4AC LDR X0, [X10,#0x18] | |
.text:000000710083E4B0 CBZ X0, loc_710083E608 | |
.text:000000710083E4B4 ADD X8, X0, #0x50 ; 'P' | |
.text:000000710083E4B8 | |
.text:000000710083E4B8 loc_710083E4B8 ; CODE XREF: calc_initial_damage_LA+6E4↓j | |
.text:000000710083E4B8 LDAXR W9, [X8] | |
.text:000000710083E4BC ADD W9, W9, #1 | |
.text:000000710083E4C0 STLXR W10, W9, [X8] | |
.text:000000710083E4C4 CBNZ W10, loc_710083E4B8 | |
.text:000000710083E4C8 LDR X10, [X0,#0x108] | |
.text:000000710083E4CC FMOV S11, WZR | |
.text:000000710083E4D0 CBZ X10, loc_710083E5F4 | |
.text:000000710083E4D4 LSR X11, X10, #1 | |
.text:000000710083E4D8 AND X11, X11, #0x5555555555555555 | |
.text:000000710083E4DC SUB X11, X10, X11 | |
.text:000000710083E4E0 AND X12, X11, #0x3333333333333333 | |
.text:000000710083E4E4 LSR X11, X11, #2 | |
.text:000000710083E4E8 AND X11, X11, #0x3333333333333333 | |
.text:000000710083E4EC ADD X11, X12, X11 | |
.text:000000710083E4F0 MOV X12, #0x101010101010101 | |
.text:000000710083E4F4 ADD X11, X11, X11,LSR#4 | |
.text:000000710083E4F8 AND X11, X11, #0xF0F0F0F0F0F0F0F | |
.text:000000710083E4FC MUL X11, X11, X12 | |
.text:000000710083E500 MOV X9, #0x44ADE38F089ABB5B | |
.text:000000710083E510 LSR X13, X11, #0x38 ; '8' | |
.text:000000710083E514 CMP X13, #1 | |
.text:000000710083E518 B.LS loc_710083E5AC | |
.text:000000710083E51C CMP X10, X9 | |
.text:000000710083E520 B.HI loc_710083F300 | |
.text:000000710083E524 UDIV X11, X9, X10 | |
.text:000000710083E528 MSUB X11, X11, X10, X9 | |
.text:000000710083E52C | |
.text:000000710083E52C loc_710083E52C ; CODE XREF: calc_initial_damage_LA+7D4↓j | |
.text:000000710083E52C ; calc_initial_damage_LA+1524↓j | |
.text:000000710083E52C LDR X12, [X0,#0x100] | |
.text:000000710083E530 LDR X12, [X12,X11,LSL#3] | |
.text:000000710083E534 CBZ X12, loc_710083E5F4 | |
.text:000000710083E538 LDR X12, [X12] | |
.text:000000710083E53C CBZ X12, loc_710083E5F4 | |
.text:000000710083E540 CMP X13, #1 | |
.text:000000710083E544 B.LS loc_710083E5B8 | |
.text:000000710083E548 | |
.text:000000710083E548 loc_710083E548 ; CODE XREF: calc_initial_damage_LA+7A0↓j | |
.text:000000710083E548 LDR X13, [X12,#8] | |
.text:000000710083E54C CMP X13, X9 | |
.text:000000710083E550 B.NE loc_710083E564 | |
.text:000000710083E554 LDR X13, [X12,#0x10] | |
.text:000000710083E558 CMP X13, X9 | |
.text:000000710083E55C B.EQ loc_710083E5F0 | |
.text:000000710083E560 B loc_710083E57C | |
.text:000000710083E564 ; --------------------------------------------------------------------------- | |
.text:000000710083E564 | |
.text:000000710083E564 loc_710083E564 ; CODE XREF: calc_initial_damage_LA+770↑j | |
.text:000000710083E564 CMP X13, X10 | |
.text:000000710083E568 B.CC loc_710083E574 | |
.text:000000710083E56C UDIV X14, X13, X10 | |
.text:000000710083E570 MSUB X13, X14, X10, X13 | |
.text:000000710083E574 | |
.text:000000710083E574 loc_710083E574 ; CODE XREF: calc_initial_damage_LA+788↑j | |
.text:000000710083E574 CMP X13, X11 | |
.text:000000710083E578 B.NE loc_710083E5F4 | |
.text:000000710083E57C | |
.text:000000710083E57C loc_710083E57C ; CODE XREF: calc_initial_damage_LA+780↑j | |
.text:000000710083E57C LDR X12, [X12] | |
.text:000000710083E580 CBNZ X12, loc_710083E548 | |
.text:000000710083E584 B loc_710083E5F4 | |
.text:000000710083E588 ; --------------------------------------------------------------------------- | |
.text:000000710083E588 | |
.text:000000710083E588 loc_710083E588 ; CODE XREF: calc_initial_damage_LA+6BC↑j | |
.text:000000710083E588 CMP X11, X8 | |
.text:000000710083E58C B.CC loc_710083E598 | |
.text:000000710083E590 UDIV X12, X11, X8 | |
.text:000000710083E594 MSUB X11, X12, X8, X11 | |
.text:000000710083E598 | |
.text:000000710083E598 loc_710083E598 ; CODE XREF: calc_initial_damage_LA+7AC↑j | |
.text:000000710083E598 CMP X11, X9 | |
.text:000000710083E59C B.NE loc_710083E608 | |
.text:000000710083E5A0 | |
.text:000000710083E5A0 loc_710083E5A0 ; CODE XREF: calc_initial_damage_LA+6C8↑j | |
.text:000000710083E5A0 LDR X10, [X10] | |
.text:000000710083E5A4 CBNZ X10, loc_710083E494 | |
.text:000000710083E5A8 B loc_710083E608 | |
.text:000000710083E5AC ; --------------------------------------------------------------------------- | |
.text:000000710083E5AC | |
.text:000000710083E5AC loc_710083E5AC ; CODE XREF: calc_initial_damage_LA+738↑j | |
.text:000000710083E5AC SUB X11, X10, #1 | |
.text:000000710083E5B0 AND X11, X11, X9 | |
.text:000000710083E5B4 B loc_710083E52C | |
.text:000000710083E5B8 ; --------------------------------------------------------------------------- | |
.text:000000710083E5B8 | |
.text:000000710083E5B8 loc_710083E5B8 ; CODE XREF: calc_initial_damage_LA+764↑j | |
.text:000000710083E5B8 SUB X10, X10, #1 | |
.text:000000710083E5BC | |
.text:000000710083E5BC loc_710083E5BC ; CODE XREF: calc_initial_damage_LA+808↓j | |
.text:000000710083E5BC LDR X13, [X12,#8] | |
.text:000000710083E5C0 CMP X13, X9 | |
.text:000000710083E5C4 B.NE loc_710083E5D8 | |
.text:000000710083E5C8 LDR X13, [X12,#0x10] | |
.text:000000710083E5CC CMP X13, X9 | |
.text:000000710083E5D0 B.EQ loc_710083E5F0 | |
.text:000000710083E5D4 B loc_710083E5E4 | |
.text:000000710083E5D8 ; --------------------------------------------------------------------------- | |
.text:000000710083E5D8 | |
.text:000000710083E5D8 loc_710083E5D8 ; CODE XREF: calc_initial_damage_LA+7E4↑j | |
.text:000000710083E5D8 AND X13, X13, X10 | |
.text:000000710083E5DC CMP X13, X11 | |
.text:000000710083E5E0 B.NE loc_710083E5F4 | |
.text:000000710083E5E4 | |
.text:000000710083E5E4 loc_710083E5E4 ; CODE XREF: calc_initial_damage_LA+7F4↑j | |
.text:000000710083E5E4 LDR X12, [X12] | |
.text:000000710083E5E8 CBNZ X12, loc_710083E5BC | |
.text:000000710083E5EC B loc_710083E5F4 | |
.text:000000710083E5F0 ; --------------------------------------------------------------------------- | |
.text:000000710083E5F0 | |
.text:000000710083E5F0 loc_710083E5F0 ; CODE XREF: calc_initial_damage_LA+77C↑j | |
.text:000000710083E5F0 ; calc_initial_damage_LA+7F0↑j | |
.text:000000710083E5F0 LDR S11, [X12,#0x30] | |
.text:000000710083E5F4 | |
.text:000000710083E5F4 loc_710083E5F4 ; CODE XREF: calc_initial_damage_LA+6F0↑j | |
.text:000000710083E5F4 ; calc_initial_damage_LA+754↑j ... | |
.text:000000710083E5F4 LDAXR W9, [X8] | |
.text:000000710083E5F8 SUBS W9, W9, #1 | |
.text:000000710083E5FC STLXR W10, W9, [X8] | |
.text:000000710083E600 CBNZ W10, loc_710083E5F4 | |
.text:000000710083E604 B.EQ loc_710083EA70 | |
.text:000000710083E608 | |
.text:000000710083E608 loc_710083E608 ; CODE XREF: calc_initial_damage_LA+648↑j | |
.text:000000710083E608 ; calc_initial_damage_LA+6A0↑j ... | |
.text:000000710083E608 LDP S0, S1, [X19,#8] | |
.text:000000710083E60C LDP S2, S3, [X19] | |
.text:000000710083E610 UCVTF S3, S3 | |
.text:000000710083E614 FMUL S3, S9, S3 | |
.text:000000710083E618 UCVTF S0, S0 | |
.text:000000710083E61C FADD S0, S8, S0 | |
.text:000000710083E620 UCVTF S2, S2 | |
.text:000000710083E624 FADD S0, S0, S3 | |
.text:000000710083E628 UCVTF S1, S1 | |
.text:000000710083E62C FADD S1, S10, S1 | |
.text:000000710083E630 FMUL S0, S0, S2 | |
.text:000000710083E634 FCVTZU W8, S0 | |
.text:000000710083E638 UCVTF S0, W8 | |
.text:000000710083E63C FDIV S0, S0, S1 | |
.text:000000710083E640 FCVTZU W8, S0 | |
.text:000000710083E644 UCVTF S0, W8 | |
.text:000000710083E648 FDIV S0, S0, S11 | |
.text:000000710083E64C LDP W9, W8, [X19,#0x10] | |
.text:000000710083E650 CMP W9, W8 | |
.text:000000710083E654 FCVTZU W20, S0 | |
.text:000000710083E658 B.NE loc_710083E67C | |
.text:000000710083E65C | |
.text:000000710083E65C loc_710083E65C ; CODE XREF: calc_initial_damage_LA+DBC↓j | |
.text:000000710083E65C LDP D9, D8, [SP,#0x50+var_40] | |
.text:000000710083E660 MOV W0, W20 | |
.text:000000710083E664 LDP X29, X30, [SP,#0x50+var_s0] | |
.text:000000710083E668 LDP X20, X19, [SP,#0x50+var_10] | |
.text:000000710083E66C LDP X22, X21, [SP,#0x50+var_20] | |
.text:000000710083E670 LDP X24, X23, [SP,#0x50+var_30] | |
.text:000000710083E674 LDP D11, D10, [SP+0x50+var_50],#0x60 | |
.text:000000710083E678 RET | |
.text:000000710083E67C ; --------------------------------------------------------------------------- | |
.text:000000710083E67C | |
.text:000000710083E67C loc_710083E67C ; CODE XREF: calc_initial_damage_LA+878↑j | |
.text:000000710083E67C FMOV S8, #1.0 | |
.text:000000710083E680 MOV V9.16B, V8.16B | |
.text:000000710083E684 CMP W9, #1 | |
.text:000000710083E688 B.EQ loc_710083EB84 | |
.text:000000710083E68C CBZ W9, loc_710083E808 | |
.text:000000710083E690 LDARB W8, [X24] | |
.text:000000710083E694 TBZ W8, #0, loc_710083F100 | |
.text:000000710083E698 | |
.text:000000710083E698 loc_710083E698 ; CODE XREF: calc_initial_damage_LA+132C↓j | |
.text:000000710083E698 ; calc_initial_damage_LA+1358↓j | |
.text:000000710083E698 LDR X10, [X22] | |
.text:000000710083E69C STR X10, [X23] | |
.text:000000710083E6A0 LDR X8, [X10,#0x60] | |
.text:000000710083E6A4 FMOV S9, WZR | |
.text:000000710083E6A8 CBZ X8, loc_710083EB80 | |
.text:000000710083E6AC LSR X9, X8, #1 | |
.text:000000710083E6B0 AND X9, X9, #0x5555555555555555 | |
.text:000000710083E6B4 SUB X9, X8, X9 | |
.text:000000710083E6B8 AND X11, X9, #0x3333333333333333 | |
.text:000000710083E6BC LSR X9, X9, #2 | |
.text:000000710083E6C0 AND X9, X9, #0x3333333333333333 | |
.text:000000710083E6C4 ADD X9, X11, X9 | |
.text:000000710083E6C8 MOV X11, #0x101010101010101 | |
.text:000000710083E6CC ADD X9, X9, X9,LSR#4 | |
.text:000000710083E6D0 AND X9, X9, #0xF0F0F0F0F0F0F0F | |
.text:000000710083E6D4 MUL X9, X9, X11 | |
.text:000000710083E6D8 LSR X11, X9, #0x38 ; '8' | |
.text:000000710083E6DC CMP X11, #1 | |
.text:000000710083E6E0 B.LS loc_710083F13C | |
.text:000000710083E6E4 CMP X8, X21 | |
.text:000000710083E6E8 MOV X9, X21 | |
.text:000000710083E6EC B.HI loc_710083E6F8 | |
.text:000000710083E6F0 UDIV X9, X21, X8 | |
.text:000000710083E6F4 MSUB X9, X9, X8, X21 | |
.text:000000710083E6F8 | |
.text:000000710083E6F8 loc_710083E6F8 ; CODE XREF: calc_initial_damage_LA+90C↑j | |
.text:000000710083E6F8 ; calc_initial_damage_LA+1364↓j | |
.text:000000710083E6F8 LDR X10, [X10,#0x58] | |
.text:000000710083E6FC LDR X10, [X10,X9,LSL#3] | |
.text:000000710083E700 CBZ X10, loc_710083EB80 | |
.text:000000710083E704 LDR X10, [X10] | |
.text:000000710083E708 CBZ X10, loc_710083EB80 | |
.text:000000710083E70C CMP X11, #1 | |
.text:000000710083E710 B.LS loc_710083F148 | |
.text:000000710083E714 | |
.text:000000710083E714 loc_710083E714 ; CODE XREF: calc_initial_damage_LA+CBC↓j | |
.text:000000710083E714 LDR X11, [X10,#8] | |
.text:000000710083E718 CMP X11, X21 | |
.text:000000710083E71C B.NE loc_710083EA80 | |
.text:000000710083E720 LDR X11, [X10,#0x10] | |
.text:000000710083E724 CMP X11, X21 | |
.text:000000710083E728 B.NE loc_710083EA98 | |
.text:000000710083E72C | |
.text:000000710083E72C loc_710083E72C ; CODE XREF: calc_initial_damage_LA+1380↓j | |
.text:000000710083E72C LDR X0, [X10,#0x18] | |
.text:000000710083E730 CBZ X0, loc_710083EB80 | |
.text:000000710083E734 ADD X8, X0, #0x50 ; 'P' | |
.text:000000710083E738 | |
.text:000000710083E738 loc_710083E738 ; CODE XREF: calc_initial_damage_LA+964↓j | |
.text:000000710083E738 LDAXR W9, [X8] | |
.text:000000710083E73C ADD W9, W9, #1 | |
.text:000000710083E740 STLXR W10, W9, [X8] | |
.text:000000710083E744 CBNZ W10, loc_710083E738 | |
.text:000000710083E748 LDR X10, [X0,#0x108] | |
.text:000000710083E74C FMOV S9, WZR | |
.text:000000710083E750 CBZ X10, loc_710083EB10 | |
.text:000000710083E754 LSR X11, X10, #1 | |
.text:000000710083E758 AND X11, X11, #0x5555555555555555 | |
.text:000000710083E75C SUB X11, X10, X11 | |
.text:000000710083E760 AND X12, X11, #0x3333333333333333 | |
.text:000000710083E764 LSR X11, X11, #2 | |
.text:000000710083E768 AND X11, X11, #0x3333333333333333 | |
.text:000000710083E76C ADD X11, X12, X11 | |
.text:000000710083E770 MOV X12, #0x101010101010101 | |
.text:000000710083E774 ADD X11, X11, X11,LSR#4 | |
.text:000000710083E778 AND X11, X11, #0xF0F0F0F0F0F0F0F | |
.text:000000710083E77C MUL X11, X11, X12 | |
.text:000000710083E780 MOV X9, #0xD880C65BC7CDE5FC | |
.text:000000710083E790 LSR X13, X11, #0x38 ; '8' | |
.text:000000710083E794 CMP X13, #1 | |
.text:000000710083E798 B.LS loc_710083EAC8 | |
.text:000000710083E79C CMP X10, X9 | |
.text:000000710083E7A0 B.HI loc_710083F320 | |
.text:000000710083E7A4 UDIV X11, X9, X10 | |
.text:000000710083E7A8 MSUB X11, X11, X10, X9 | |
.text:000000710083E7AC | |
.text:000000710083E7AC loc_710083E7AC ; CODE XREF: calc_initial_damage_LA+CF0↓j | |
.text:000000710083E7AC ; calc_initial_damage_LA+1544↓j | |
.text:000000710083E7AC LDR X12, [X0,#0x100] | |
.text:000000710083E7B0 LDR X12, [X12,X11,LSL#3] | |
.text:000000710083E7B4 CBZ X12, loc_710083EB10 | |
.text:000000710083E7B8 LDR X12, [X12] | |
.text:000000710083E7BC CBZ X12, loc_710083EB10 | |
.text:000000710083E7C0 CMP X13, #1 | |
.text:000000710083E7C4 B.LS loc_710083EAD4 | |
.text:000000710083E7C8 | |
.text:000000710083E7C8 loc_710083E7C8 ; CODE XREF: calc_initial_damage_LA+A20↓j | |
.text:000000710083E7C8 LDR X13, [X12,#8] | |
.text:000000710083E7CC CMP X13, X9 | |
.text:000000710083E7D0 B.NE loc_710083E7E4 | |
.text:000000710083E7D4 LDR X13, [X12,#0x10] | |
.text:000000710083E7D8 CMP X13, X9 | |
.text:000000710083E7DC B.EQ loc_710083EB0C | |
.text:000000710083E7E0 B loc_710083E7FC | |
.text:000000710083E7E4 ; --------------------------------------------------------------------------- | |
.text:000000710083E7E4 | |
.text:000000710083E7E4 loc_710083E7E4 ; CODE XREF: calc_initial_damage_LA+9F0↑j | |
.text:000000710083E7E4 CMP X13, X10 | |
.text:000000710083E7E8 B.CC loc_710083E7F4 | |
.text:000000710083E7EC UDIV X14, X13, X10 | |
.text:000000710083E7F0 MSUB X13, X14, X10, X13 | |
.text:000000710083E7F4 | |
.text:000000710083E7F4 loc_710083E7F4 ; CODE XREF: calc_initial_damage_LA+A08↑j | |
.text:000000710083E7F4 CMP X13, X11 | |
.text:000000710083E7F8 B.NE loc_710083EB10 | |
.text:000000710083E7FC | |
.text:000000710083E7FC loc_710083E7FC ; CODE XREF: calc_initial_damage_LA+A00↑j | |
.text:000000710083E7FC LDR X12, [X12] | |
.text:000000710083E800 CBNZ X12, loc_710083E7C8 | |
.text:000000710083E804 B loc_710083EB10 | |
.text:000000710083E808 ; --------------------------------------------------------------------------- | |
.text:000000710083E808 | |
.text:000000710083E808 loc_710083E808 ; CODE XREF: calc_initial_damage_LA+8AC↑j | |
.text:000000710083E808 LDARB W8, [X24] | |
.text:000000710083E80C TBZ W8, #0, loc_710083F1D0 | |
.text:000000710083E810 | |
.text:000000710083E810 loc_710083E810 ; CODE XREF: calc_initial_damage_LA+13FC↓j | |
.text:000000710083E810 ; calc_initial_damage_LA+1428↓j | |
.text:000000710083E810 LDR X10, [X22] | |
.text:000000710083E814 STR X10, [X23] | |
.text:000000710083E818 LDR X8, [X10,#0x60] | |
.text:000000710083E81C FMOV S9, WZR | |
.text:000000710083E820 CBZ X8, loc_710083EB80 | |
.text:000000710083E824 LSR X9, X8, #1 | |
.text:000000710083E828 AND X9, X9, #0x5555555555555555 | |
.text:000000710083E82C SUB X9, X8, X9 | |
.text:000000710083E830 AND X11, X9, #0x3333333333333333 | |
.text:000000710083E834 LSR X9, X9, #2 | |
.text:000000710083E838 AND X9, X9, #0x3333333333333333 | |
.text:000000710083E83C ADD X9, X11, X9 | |
.text:000000710083E840 MOV X11, #0x101010101010101 | |
.text:000000710083E844 ADD X9, X9, X9,LSR#4 | |
.text:000000710083E848 AND X9, X9, #0xF0F0F0F0F0F0F0F | |
.text:000000710083E84C MUL X9, X9, X11 | |
.text:000000710083E850 LSR X11, X9, #0x38 ; '8' | |
.text:000000710083E854 CMP X11, #1 | |
.text:000000710083E858 B.LS loc_710083F20C | |
.text:000000710083E85C CMP X8, X21 | |
.text:000000710083E860 MOV X9, X21 | |
.text:000000710083E864 B.HI loc_710083E870 | |
.text:000000710083E868 UDIV X9, X21, X8 | |
.text:000000710083E86C MSUB X9, X9, X8, X21 | |
.text:000000710083E870 | |
.text:000000710083E870 loc_710083E870 ; CODE XREF: calc_initial_damage_LA+A84↑j | |
.text:000000710083E870 ; calc_initial_damage_LA+1434↓j | |
.text:000000710083E870 LDR X10, [X10,#0x58] | |
.text:000000710083E874 LDR X10, [X10,X9,LSL#3] | |
.text:000000710083E878 CBZ X10, loc_710083EB80 | |
.text:000000710083E87C LDR X10, [X10] | |
.text:000000710083E880 CBZ X10, loc_710083EB80 | |
.text:000000710083E884 CMP X11, #1 | |
.text:000000710083E888 B.LS loc_710083F218 | |
.text:000000710083E88C | |
.text:000000710083E88C loc_710083E88C ; CODE XREF: calc_initial_damage_LA+CE0↓j | |
.text:000000710083E88C LDR X11, [X10,#8] | |
.text:000000710083E890 CMP X11, X21 | |
.text:000000710083E894 B.NE loc_710083EAA4 | |
.text:000000710083E898 LDR X11, [X10,#0x10] | |
.text:000000710083E89C CMP X11, X21 | |
.text:000000710083E8A0 B.NE loc_710083EABC | |
.text:000000710083E8A4 | |
.text:000000710083E8A4 loc_710083E8A4 ; CODE XREF: calc_initial_damage_LA+1450↓j | |
.text:000000710083E8A4 LDR X0, [X10,#0x18] | |
.text:000000710083E8A8 CBZ X0, loc_710083EB80 | |
.text:000000710083E8AC ADD X8, X0, #0x50 ; 'P' | |
.text:000000710083E8B0 | |
.text:000000710083E8B0 loc_710083E8B0 ; CODE XREF: calc_initial_damage_LA+ADC↓j | |
.text:000000710083E8B0 LDAXR W9, [X8] | |
.text:000000710083E8B4 ADD W9, W9, #1 | |
.text:000000710083E8B8 STLXR W10, W9, [X8] | |
.text:000000710083E8BC CBNZ W10, loc_710083E8B0 | |
.text:000000710083E8C0 LDR X10, [X0,#0x108] | |
.text:000000710083E8C4 FMOV S9, WZR | |
.text:000000710083E8C8 CBZ X10, loc_710083EB6C | |
.text:000000710083E8CC LSR X11, X10, #1 | |
.text:000000710083E8D0 AND X11, X11, #0x5555555555555555 | |
.text:000000710083E8D4 SUB X11, X10, X11 | |
.text:000000710083E8D8 AND X12, X11, #0x3333333333333333 | |
.text:000000710083E8DC LSR X11, X11, #2 | |
.text:000000710083E8E0 AND X11, X11, #0x3333333333333333 | |
.text:000000710083E8E4 ADD X11, X12, X11 | |
.text:000000710083E8E8 MOV X12, #0x101010101010101 | |
.text:000000710083E8EC ADD X11, X11, X11,LSR#4 | |
.text:000000710083E8F0 AND X11, X11, #0xF0F0F0F0F0F0F0F | |
.text:000000710083E8F4 MUL X11, X11, X12 | |
.text:000000710083E8F8 MOV X9, #0xC4C828B65D3E2AAF | |
.text:000000710083E908 LSR X13, X11, #0x38 ; '8' | |
.text:000000710083E90C CMP X13, #1 | |
.text:000000710083E910 B.LS loc_710083EB24 | |
.text:000000710083E914 CMP X10, X9 | |
.text:000000710083E918 B.HI loc_710083F330 | |
.text:000000710083E91C UDIV X11, X9, X10 | |
.text:000000710083E920 MSUB X11, X11, X10, X9 | |
.text:000000710083E924 | |
.text:000000710083E924 loc_710083E924 ; CODE XREF: calc_initial_damage_LA+D4C↓j | |
.text:000000710083E924 ; calc_initial_damage_LA+1554↓j | |
.text:000000710083E924 LDR X12, [X0,#0x100] | |
.text:000000710083E928 LDR X12, [X12,X11,LSL#3] | |
.text:000000710083E92C CBZ X12, loc_710083EB6C | |
.text:000000710083E930 LDR X12, [X12] | |
.text:000000710083E934 CBZ X12, loc_710083EB6C | |
.text:000000710083E938 CMP X13, #1 | |
.text:000000710083E93C B.LS loc_710083EB30 | |
.text:000000710083E940 | |
.text:000000710083E940 loc_710083E940 ; CODE XREF: calc_initial_damage_LA+B98↓j | |
.text:000000710083E940 LDR X13, [X12,#8] | |
.text:000000710083E944 CMP X13, X9 | |
.text:000000710083E948 B.NE loc_710083E95C | |
.text:000000710083E94C LDR X13, [X12,#0x10] | |
.text:000000710083E950 CMP X13, X9 | |
.text:000000710083E954 B.EQ loc_710083EB68 | |
.text:000000710083E958 B loc_710083E974 | |
.text:000000710083E95C ; --------------------------------------------------------------------------- | |
.text:000000710083E95C | |
.text:000000710083E95C loc_710083E95C ; CODE XREF: calc_initial_damage_LA+B68↑j | |
.text:000000710083E95C CMP X13, X10 | |
.text:000000710083E960 B.CC loc_710083E96C | |
.text:000000710083E964 UDIV X14, X13, X10 | |
.text:000000710083E968 MSUB X13, X14, X10, X13 | |
.text:000000710083E96C | |
.text:000000710083E96C loc_710083E96C ; CODE XREF: calc_initial_damage_LA+B80↑j | |
.text:000000710083E96C CMP X13, X11 | |
.text:000000710083E970 B.NE loc_710083EB6C | |
.text:000000710083E974 | |
.text:000000710083E974 loc_710083E974 ; CODE XREF: calc_initial_damage_LA+B78↑j | |
.text:000000710083E974 LDR X12, [X12] | |
.text:000000710083E978 CBNZ X12, loc_710083E940 | |
.text:000000710083E97C B loc_710083EB6C | |
.text:000000710083E980 ; --------------------------------------------------------------------------- | |
.text:000000710083E980 | |
.text:000000710083E980 loc_710083E980 ; CODE XREF: calc_initial_damage_LA+23C↑j | |
.text:000000710083E980 LDR X8, [X0] | |
.text:000000710083E984 LDR X8, [X8,#0x10] | |
.text:000000710083E988 BLR X8 | |
.text:000000710083E98C LDARB W8, [X24] | |
.text:000000710083E990 TBNZ W8, #0, loc_710083E028 | |
.text:000000710083E994 | |
.text:000000710083E994 loc_710083E994 ; CODE XREF: calc_initial_damage_LA+244↑j | |
.text:000000710083E994 ADRP X0, #off_7104279660@PAGE | |
.text:000000710083E998 LDR X0, [X0,#off_7104279660@PAGEOFF] ; __guard * | |
.text:000000710083E99C BL __cxa_guard_acquire_0 | |
.text:000000710083E9A0 CBZ W0, loc_710083E028 | |
.text:000000710083E9A4 ADRP X0, #off_71042796B0@PAGE | |
.text:000000710083E9A8 ADRP X1, #off_7104279668@PAGE | |
.text:000000710083E9AC LDR X0, [X0,#off_71042796B0@PAGEOFF] | |
.text:000000710083E9B0 LDR X1, [X1,#off_7104279668@PAGEOFF] | |
.text:000000710083E9B4 ADRL X2, off_710401A000 | |
.text:000000710083E9BC BL sub_7100000250 | |
.text:000000710083E9C0 ADRP X0, #off_7104279660@PAGE | |
.text:000000710083E9C4 LDR X0, [X0,#off_7104279660@PAGEOFF] ; __guard * | |
.text:000000710083E9C8 BL __cxa_guard_release_0 | |
.text:000000710083E9CC B loc_710083E028 | |
.text:000000710083E9D0 ; --------------------------------------------------------------------------- | |
.text:000000710083E9D0 | |
.text:000000710083E9D0 loc_710083E9D0 ; CODE XREF: calc_initial_damage_LA+434↑j | |
.text:000000710083E9D0 LDR X8, [X0] | |
.text:000000710083E9D4 LDR X8, [X8,#0x10] | |
.text:000000710083E9D8 BLR X8 | |
.text:000000710083E9DC LDARB W8, [X24] | |
.text:000000710083E9E0 TBNZ W8, #0, loc_710083E220 | |
.text:000000710083E9E4 | |
.text:000000710083E9E4 loc_710083E9E4 ; CODE XREF: calc_initial_damage_LA+43C↑j | |
.text:000000710083E9E4 ADRP X0, #off_7104279660@PAGE | |
.text:000000710083E9E8 LDR X0, [X0,#off_7104279660@PAGEOFF] ; __guard * | |
.text:000000710083E9EC BL __cxa_guard_acquire_0 | |
.text:000000710083E9F0 CBZ W0, loc_710083E220 | |
.text:000000710083E9F4 ADRP X0, #off_71042796B0@PAGE | |
.text:000000710083E9F8 ADRP X1, #off_7104279668@PAGE | |
.text:000000710083E9FC LDR X0, [X0,#off_71042796B0@PAGEOFF] | |
.text:000000710083EA00 LDR X1, [X1,#off_7104279668@PAGEOFF] | |
.text:000000710083EA04 ADRL X2, off_710401A000 | |
.text:000000710083EA0C BL sub_7100000250 | |
.text:000000710083EA10 ADRP X0, #off_7104279660@PAGE | |
.text:000000710083EA14 LDR X0, [X0,#off_7104279660@PAGEOFF] ; __guard * | |
.text:000000710083EA18 BL __cxa_guard_release_0 | |
.text:000000710083EA1C B loc_710083E220 | |
.text:000000710083EA20 ; --------------------------------------------------------------------------- | |
.text:000000710083EA20 | |
.text:000000710083EA20 loc_710083EA20 ; CODE XREF: calc_initial_damage_LA+62C↑j | |
.text:000000710083EA20 LDR X8, [X0] | |
.text:000000710083EA24 LDR X8, [X8,#0x10] | |
.text:000000710083EA28 BLR X8 | |
.text:000000710083EA2C LDARB W8, [X24] | |
.text:000000710083EA30 TBNZ W8, #0, loc_710083E418 | |
.text:000000710083EA34 | |
.text:000000710083EA34 loc_710083EA34 ; CODE XREF: calc_initial_damage_LA+634↑j | |
.text:000000710083EA34 ADRP X0, #off_7104279660@PAGE | |
.text:000000710083EA38 LDR X0, [X0,#off_7104279660@PAGEOFF] ; __guard * | |
.text:000000710083EA3C BL __cxa_guard_acquire_0 | |
.text:000000710083EA40 CBZ W0, loc_710083E418 | |
.text:000000710083EA44 ADRP X0, #off_71042796B0@PAGE | |
.text:000000710083EA48 ADRP X1, #off_7104279668@PAGE | |
.text:000000710083EA4C LDR X0, [X0,#off_71042796B0@PAGEOFF] | |
.text:000000710083EA50 LDR X1, [X1,#off_7104279668@PAGEOFF] | |
.text:000000710083EA54 ADRL X2, off_710401A000 | |
.text:000000710083EA5C BL sub_7100000250 | |
.text:000000710083EA60 ADRP X0, #off_7104279660@PAGE | |
.text:000000710083EA64 LDR X0, [X0,#off_7104279660@PAGEOFF] ; __guard * | |
.text:000000710083EA68 BL __cxa_guard_release_0 | |
.text:000000710083EA6C B loc_710083E418 | |
.text:000000710083EA70 ; --------------------------------------------------------------------------- | |
.text:000000710083EA70 | |
.text:000000710083EA70 loc_710083EA70 ; CODE XREF: calc_initial_damage_LA+824↑j | |
.text:000000710083EA70 LDR X8, [X0] | |
.text:000000710083EA74 LDR X8, [X8,#0x10] | |
.text:000000710083EA78 BLR X8 | |
.text:000000710083EA7C B loc_710083E608 | |
.text:000000710083EA80 ; --------------------------------------------------------------------------- | |
.text:000000710083EA80 | |
.text:000000710083EA80 loc_710083EA80 ; CODE XREF: calc_initial_damage_LA+93C↑j | |
.text:000000710083EA80 CMP X11, X8 | |
.text:000000710083EA84 B.CC loc_710083EA90 | |
.text:000000710083EA88 UDIV X12, X11, X8 | |
.text:000000710083EA8C MSUB X11, X12, X8, X11 | |
.text:000000710083EA90 | |
.text:000000710083EA90 loc_710083EA90 ; CODE XREF: calc_initial_damage_LA+CA4↑j | |
.text:000000710083EA90 CMP X11, X9 | |
.text:000000710083EA94 B.NE loc_710083EB80 | |
.text:000000710083EA98 | |
.text:000000710083EA98 loc_710083EA98 ; CODE XREF: calc_initial_damage_LA+948↑j | |
.text:000000710083EA98 LDR X10, [X10] | |
.text:000000710083EA9C CBNZ X10, loc_710083E714 | |
.text:000000710083EAA0 B loc_710083EB80 | |
.text:000000710083EAA4 ; --------------------------------------------------------------------------- | |
.text:000000710083EAA4 | |
.text:000000710083EAA4 loc_710083EAA4 ; CODE XREF: calc_initial_damage_LA+AB4↑j | |
.text:000000710083EAA4 CMP X11, X8 | |
.text:000000710083EAA8 B.CC loc_710083EAB4 | |
.text:000000710083EAAC UDIV X12, X11, X8 | |
.text:000000710083EAB0 MSUB X11, X12, X8, X11 | |
.text:000000710083EAB4 | |
.text:000000710083EAB4 loc_710083EAB4 ; CODE XREF: calc_initial_damage_LA+CC8↑j | |
.text:000000710083EAB4 CMP X11, X9 | |
.text:000000710083EAB8 B.NE loc_710083EB80 | |
.text:000000710083EABC | |
.text:000000710083EABC loc_710083EABC ; CODE XREF: calc_initial_damage_LA+AC0↑j | |
.text:000000710083EABC LDR X10, [X10] | |
.text:000000710083EAC0 CBNZ X10, loc_710083E88C | |
.text:000000710083EAC4 B loc_710083EB80 | |
.text:000000710083EAC8 ; --------------------------------------------------------------------------- | |
.text:000000710083EAC8 | |
.text:000000710083EAC8 loc_710083EAC8 ; CODE XREF: calc_initial_damage_LA+9B8↑j | |
.text:000000710083EAC8 SUB X11, X10, #1 | |
.text:000000710083EACC AND X11, X11, X9 | |
.text:000000710083EAD0 B loc_710083E7AC | |
.text:000000710083EAD4 ; --------------------------------------------------------------------------- | |
.text:000000710083EAD4 | |
.text:000000710083EAD4 loc_710083EAD4 ; CODE XREF: calc_initial_damage_LA+9E4↑j | |
.text:000000710083EAD4 SUB X10, X10, #1 | |
.text:000000710083EAD8 | |
.text:000000710083EAD8 loc_710083EAD8 ; CODE XREF: calc_initial_damage_LA+D24↓j | |
.text:000000710083EAD8 LDR X13, [X12,#8] | |
.text:000000710083EADC CMP X13, X9 | |
.text:000000710083EAE0 B.NE loc_710083EAF4 | |
.text:000000710083EAE4 LDR X13, [X12,#0x10] | |
.text:000000710083EAE8 CMP X13, X9 | |
.text:000000710083EAEC B.EQ loc_710083EB0C | |
.text:000000710083EAF0 B loc_710083EB00 | |
.text:000000710083EAF4 ; --------------------------------------------------------------------------- | |
.text:000000710083EAF4 | |
.text:000000710083EAF4 loc_710083EAF4 ; CODE XREF: calc_initial_damage_LA+D00↑j | |
.text:000000710083EAF4 AND X13, X13, X10 | |
.text:000000710083EAF8 CMP X13, X11 | |
.text:000000710083EAFC B.NE loc_710083EB10 | |
.text:000000710083EB00 | |
.text:000000710083EB00 loc_710083EB00 ; CODE XREF: calc_initial_damage_LA+D10↑j | |
.text:000000710083EB00 LDR X12, [X12] | |
.text:000000710083EB04 CBNZ X12, loc_710083EAD8 | |
.text:000000710083EB08 B loc_710083EB10 | |
.text:000000710083EB0C ; --------------------------------------------------------------------------- | |
.text:000000710083EB0C | |
.text:000000710083EB0C loc_710083EB0C ; CODE XREF: calc_initial_damage_LA+9FC↑j | |
.text:000000710083EB0C ; calc_initial_damage_LA+D0C↑j | |
.text:000000710083EB0C LDR S9, [X12,#0x30] | |
.text:000000710083EB10 | |
.text:000000710083EB10 loc_710083EB10 ; CODE XREF: calc_initial_damage_LA+970↑j | |
.text:000000710083EB10 ; calc_initial_damage_LA+9D4↑j ... | |
.text:000000710083EB10 LDAXR W9, [X8] | |
.text:000000710083EB14 SUBS W9, W9, #1 | |
.text:000000710083EB18 STLXR W10, W9, [X8] | |
.text:000000710083EB1C CBNZ W10, loc_710083EB10 | |
.text:000000710083EB20 B loc_710083EB7C | |
.text:000000710083EB24 ; --------------------------------------------------------------------------- | |
.text:000000710083EB24 | |
.text:000000710083EB24 loc_710083EB24 ; CODE XREF: calc_initial_damage_LA+B30↑j | |
.text:000000710083EB24 SUB X11, X10, #1 | |
.text:000000710083EB28 AND X11, X11, X9 | |
.text:000000710083EB2C B loc_710083E924 | |
.text:000000710083EB30 ; --------------------------------------------------------------------------- | |
.text:000000710083EB30 | |
.text:000000710083EB30 loc_710083EB30 ; CODE XREF: calc_initial_damage_LA+B5C↑j | |
.text:000000710083EB30 SUB X10, X10, #1 | |
.text:000000710083EB34 | |
.text:000000710083EB34 loc_710083EB34 ; CODE XREF: calc_initial_damage_LA+D80↓j | |
.text:000000710083EB34 LDR X13, [X12,#8] | |
.text:000000710083EB38 CMP X13, X9 | |
.text:000000710083EB3C B.NE loc_710083EB50 | |
.text:000000710083EB40 LDR X13, [X12,#0x10] | |
.text:000000710083EB44 CMP X13, X9 | |
.text:000000710083EB48 B.EQ loc_710083EB68 | |
.text:000000710083EB4C B loc_710083EB5C | |
.text:000000710083EB50 ; --------------------------------------------------------------------------- | |
.text:000000710083EB50 | |
.text:000000710083EB50 loc_710083EB50 ; CODE XREF: calc_initial_damage_LA+D5C↑j | |
.text:000000710083EB50 AND X13, X13, X10 | |
.text:000000710083EB54 CMP X13, X11 | |
.text:000000710083EB58 B.NE loc_710083EB6C | |
.text:000000710083EB5C | |
.text:000000710083EB5C loc_710083EB5C ; CODE XREF: calc_initial_damage_LA+D6C↑j | |
.text:000000710083EB5C LDR X12, [X12] | |
.text:000000710083EB60 CBNZ X12, loc_710083EB34 | |
.text:000000710083EB64 B loc_710083EB6C | |
.text:000000710083EB68 ; --------------------------------------------------------------------------- | |
.text:000000710083EB68 | |
.text:000000710083EB68 loc_710083EB68 ; CODE XREF: calc_initial_damage_LA+B74↑j | |
.text:000000710083EB68 ; calc_initial_damage_LA+D68↑j | |
.text:000000710083EB68 LDR S9, [X12,#0x30] | |
.text:000000710083EB6C | |
.text:000000710083EB6C loc_710083EB6C ; CODE XREF: calc_initial_damage_LA+AE8↑j | |
.text:000000710083EB6C ; calc_initial_damage_LA+B4C↑j ... | |
.text:000000710083EB6C LDAXR W9, [X8] | |
.text:000000710083EB70 SUBS W9, W9, #1 | |
.text:000000710083EB74 STLXR W10, W9, [X8] | |
.text:000000710083EB78 CBNZ W10, loc_710083EB6C | |
.text:000000710083EB7C | |
.text:000000710083EB7C loc_710083EB7C ; CODE XREF: calc_initial_damage_LA+D40↑j | |
.text:000000710083EB7C B.EQ loc_710083EF48 | |
.text:000000710083EB80 | |
.text:000000710083EB80 loc_710083EB80 ; CODE XREF: calc_initial_damage_LA+8C8↑j | |
.text:000000710083EB80 ; calc_initial_damage_LA+920↑j ... | |
.text:000000710083EB80 LDR W8, [X19,#0x14] | |
.text:000000710083EB84 | |
.text:000000710083EB84 loc_710083EB84 ; CODE XREF: calc_initial_damage_LA+8A8↑j | |
.text:000000710083EB84 CMP W8, #1 | |
.text:000000710083EB88 B.NE loc_710083EBA0 | |
.text:000000710083EB8C | |
.text:000000710083EB8C loc_710083EB8C ; CODE XREF: calc_initial_damage_LA+DDC↓j | |
.text:000000710083EB8C ; calc_initial_damage_LA+E34↓j ... | |
.text:000000710083EB8C UCVTF S0, W20 | |
.text:000000710083EB90 FMUL S0, S9, S0 | |
.text:000000710083EB94 FMUL S1, S0, S8 | |
.text:000000710083EB98 FCVTZU W20, S1 | |
.text:000000710083EB9C B loc_710083E65C | |
.text:000000710083EBA0 ; --------------------------------------------------------------------------- | |
.text:000000710083EBA0 | |
.text:000000710083EBA0 loc_710083EBA0 ; CODE XREF: calc_initial_damage_LA+DA8↑j | |
.text:000000710083EBA0 CBZ W8, loc_710083ED1C | |
.text:000000710083EBA4 LDARB W8, [X24] | |
.text:000000710083EBA8 TBZ W8, #0, loc_710083F168 | |
.text:000000710083EBAC | |
.text:000000710083EBAC loc_710083EBAC ; CODE XREF: calc_initial_damage_LA+1394↓j | |
.text:000000710083EBAC ; calc_initial_damage_LA+13C0↓j | |
.text:000000710083EBAC LDR X10, [X22] | |
.text:000000710083EBB0 STR X10, [X23] | |
.text:000000710083EBB4 LDR X8, [X10,#0x60] | |
.text:000000710083EBB8 FMOV S8, WZR | |
.text:000000710083EBBC CBZ X8, loc_710083EB8C | |
.text:000000710083EBC0 LSR X9, X8, #1 | |
.text:000000710083EBC4 AND X9, X9, #0x5555555555555555 | |
.text:000000710083EBC8 SUB X9, X8, X9 | |
.text:000000710083EBCC AND X11, X9, #0x3333333333333333 | |
.text:000000710083EBD0 LSR X9, X9, #2 | |
.text:000000710083EBD4 AND X9, X9, #0x3333333333333333 | |
.text:000000710083EBD8 ADD X9, X11, X9 | |
.text:000000710083EBDC MOV X11, #0x101010101010101 | |
.text:000000710083EBE0 ADD X9, X9, X9,LSR#4 | |
.text:000000710083EBE4 AND X9, X9, #0xF0F0F0F0F0F0F0F | |
.text:000000710083EBE8 MUL X9, X9, X11 | |
.text:000000710083EBEC LSR X11, X9, #0x38 ; '8' | |
.text:000000710083EBF0 CMP X11, #1 | |
.text:000000710083EBF4 B.LS loc_710083F1A4 | |
.text:000000710083EBF8 CMP X8, X21 | |
.text:000000710083EBFC MOV X9, X21 | |
.text:000000710083EC00 B.HI loc_710083EC0C | |
.text:000000710083EC04 UDIV X9, X21, X8 | |
.text:000000710083EC08 MSUB X9, X9, X8, X21 | |
.text:000000710083EC0C | |
.text:000000710083EC0C loc_710083EC0C ; CODE XREF: calc_initial_damage_LA+E20↑j | |
.text:000000710083EC0C ; calc_initial_damage_LA+13CC↓j | |
.text:000000710083EC0C LDR X10, [X10,#0x58] | |
.text:000000710083EC10 LDR X10, [X10,X9,LSL#3] | |
.text:000000710083EC14 CBZ X10, loc_710083EB8C | |
.text:000000710083EC18 LDR X10, [X10] | |
.text:000000710083EC1C CBZ X10, loc_710083EB8C | |
.text:000000710083EC20 CMP X11, #1 | |
.text:000000710083EC24 B.LS loc_710083F1B0 | |
.text:000000710083EC28 | |
.text:000000710083EC28 loc_710083EC28 ; CODE XREF: calc_initial_damage_LA+10D0↓j | |
.text:000000710083EC28 LDR X11, [X10,#8] | |
.text:000000710083EC2C CMP X11, X21 | |
.text:000000710083EC30 B.NE loc_710083EE94 | |
.text:000000710083EC34 LDR X11, [X10,#0x10] | |
.text:000000710083EC38 CMP X11, X21 | |
.text:000000710083EC3C B.NE loc_710083EEAC | |
.text:000000710083EC40 | |
.text:000000710083EC40 loc_710083EC40 ; CODE XREF: calc_initial_damage_LA+13E8↓j | |
.text:000000710083EC40 LDR X0, [X10,#0x18] | |
.text:000000710083EC44 CBZ X0, loc_710083EB8C | |
.text:000000710083EC48 ADD X8, X0, #0x50 ; 'P' | |
.text:000000710083EC4C | |
.text:000000710083EC4C loc_710083EC4C ; CODE XREF: calc_initial_damage_LA+E78↓j | |
.text:000000710083EC4C LDAXR W9, [X8] | |
.text:000000710083EC50 ADD W9, W9, #1 | |
.text:000000710083EC54 STLXR W10, W9, [X8] | |
.text:000000710083EC58 CBNZ W10, loc_710083EC4C | |
.text:000000710083EC5C LDR X10, [X0,#0x108] | |
.text:000000710083EC60 FMOV S8, WZR | |
.text:000000710083EC64 CBZ X10, loc_710083EF00 | |
.text:000000710083EC68 LSR X11, X10, #1 | |
.text:000000710083EC6C AND X11, X11, #0x5555555555555555 | |
.text:000000710083EC70 SUB X11, X10, X11 | |
.text:000000710083EC74 AND X12, X11, #0x3333333333333333 | |
.text:000000710083EC78 LSR X11, X11, #2 | |
.text:000000710083EC7C AND X11, X11, #0x3333333333333333 | |
.text:000000710083EC80 ADD X11, X12, X11 | |
.text:000000710083EC84 MOV X12, #0x101010101010101 | |
.text:000000710083EC88 ADD X11, X11, X11,LSR#4 | |
.text:000000710083EC8C AND X11, X11, #0xF0F0F0F0F0F0F0F | |
.text:000000710083EC90 MUL X11, X11, X12 | |
.text:000000710083EC94 MOV X9, #0x7FFFA5D75E18DE47 | |
.text:000000710083ECA4 LSR X13, X11, #0x38 ; '8' | |
.text:000000710083ECA8 CMP X13, #1 | |
.text:000000710083ECAC B.LS loc_710083EEB8 | |
.text:000000710083ECB0 CMP X10, X9 | |
.text:000000710083ECB4 B.HI loc_710083F328 | |
.text:000000710083ECB8 UDIV X11, X9, X10 | |
.text:000000710083ECBC MSUB X11, X11, X10, X9 | |
.text:000000710083ECC0 | |
.text:000000710083ECC0 loc_710083ECC0 ; CODE XREF: calc_initial_damage_LA+10E0↓j | |
.text:000000710083ECC0 ; calc_initial_damage_LA+154C↓j | |
.text:000000710083ECC0 LDR X12, [X0,#0x100] | |
.text:000000710083ECC4 LDR X12, [X12,X11,LSL#3] | |
.text:000000710083ECC8 CBZ X12, loc_710083EF00 | |
.text:000000710083ECCC LDR X12, [X12] | |
.text:000000710083ECD0 CBZ X12, loc_710083EF00 | |
.text:000000710083ECD4 CMP X13, #1 | |
.text:000000710083ECD8 B.LS loc_710083EEC4 | |
.text:000000710083ECDC | |
.text:000000710083ECDC loc_710083ECDC ; CODE XREF: calc_initial_damage_LA+F34↓j | |
.text:000000710083ECDC LDR X13, [X12,#8] | |
.text:000000710083ECE0 CMP X13, X9 | |
.text:000000710083ECE4 B.NE loc_710083ECF8 | |
.text:000000710083ECE8 LDR X13, [X12,#0x10] | |
.text:000000710083ECEC CMP X13, X9 | |
.text:000000710083ECF0 B.EQ loc_710083EEFC | |
.text:000000710083ECF4 B loc_710083ED10 | |
.text:000000710083ECF8 ; --------------------------------------------------------------------------- | |
.text:000000710083ECF8 | |
.text:000000710083ECF8 loc_710083ECF8 ; CODE XREF: calc_initial_damage_LA+F04↑j | |
.text:000000710083ECF8 CMP X13, X10 | |
.text:000000710083ECFC B.CC loc_710083ED08 | |
.text:000000710083ED00 UDIV X14, X13, X10 | |
.text:000000710083ED04 MSUB X13, X14, X10, X13 | |
.text:000000710083ED08 | |
.text:000000710083ED08 loc_710083ED08 ; CODE XREF: calc_initial_damage_LA+F1C↑j | |
.text:000000710083ED08 CMP X13, X11 | |
.text:000000710083ED0C B.NE loc_710083EF00 | |
.text:000000710083ED10 | |
.text:000000710083ED10 loc_710083ED10 ; CODE XREF: calc_initial_damage_LA+F14↑j | |
.text:000000710083ED10 LDR X12, [X12] | |
.text:000000710083ED14 CBNZ X12, loc_710083ECDC | |
.text:000000710083ED18 B loc_710083EF00 | |
.text:000000710083ED1C ; --------------------------------------------------------------------------- | |
.text:000000710083ED1C | |
.text:000000710083ED1C loc_710083ED1C ; CODE XREF: calc_initial_damage_LA:loc_710083EBA0↑j | |
.text:000000710083ED1C LDARB W8, [X24] | |
.text:000000710083ED20 TBZ W8, #0, loc_710083F238 | |
.text:000000710083ED24 | |
.text:000000710083ED24 loc_710083ED24 ; CODE XREF: calc_initial_damage_LA+1464↓j | |
.text:000000710083ED24 ; calc_initial_damage_LA+1490↓j | |
.text:000000710083ED24 LDR X10, [X22] | |
.text:000000710083ED28 STR X10, [X23] | |
.text:000000710083ED2C LDR X8, [X10,#0x60] | |
.text:000000710083ED30 FMOV S8, WZR | |
.text:000000710083ED34 CBZ X8, loc_710083EB8C | |
.text:000000710083ED38 LSR X9, X8, #1 | |
.text:000000710083ED3C AND X9, X9, #0x5555555555555555 | |
.text:000000710083ED40 SUB X9, X8, X9 | |
.text:000000710083ED44 AND X11, X9, #0x3333333333333333 | |
.text:000000710083ED48 LSR X9, X9, #2 | |
.text:000000710083ED4C AND X9, X9, #0x3333333333333333 | |
.text:000000710083ED50 ADD X9, X11, X9 | |
.text:000000710083ED54 MOV X11, #0x101010101010101 | |
.text:000000710083ED58 ADD X9, X9, X9,LSR#4 | |
.text:000000710083ED5C AND X9, X9, #0xF0F0F0F0F0F0F0F | |
.text:000000710083ED60 MUL X9, X9, X11 | |
.text:000000710083ED64 LSR X11, X9, #0x38 ; '8' | |
.text:000000710083ED68 CMP X11, #1 | |
.text:000000710083ED6C B.LS loc_710083F274 | |
.text:000000710083ED70 CMP X8, X21 | |
.text:000000710083ED74 MOV X9, X21 | |
.text:000000710083ED78 B.HI loc_710083ED84 | |
.text:000000710083ED7C UDIV X9, X21, X8 | |
.text:000000710083ED80 MSUB X9, X9, X8, X21 | |
.text:000000710083ED84 | |
.text:000000710083ED84 loc_710083ED84 ; CODE XREF: calc_initial_damage_LA+F98↑j | |
.text:000000710083ED84 ; calc_initial_damage_LA+149C↓j | |
.text:000000710083ED84 LDR X10, [X10,#0x58] | |
.text:000000710083ED88 LDR X10, [X10,X9,LSL#3] | |
.text:000000710083ED8C CBZ X10, loc_710083EB8C | |
.text:000000710083ED90 LDR X10, [X10] | |
.text:000000710083ED94 CBZ X10, loc_710083EB8C | |
.text:000000710083ED98 CMP X11, #1 | |
.text:000000710083ED9C B.LS loc_710083F280 | |
.text:000000710083EDA0 | |
.text:000000710083EDA0 loc_710083EDA0 ; CODE XREF: calc_initial_damage_LA+1160↓j | |
.text:000000710083EDA0 LDR X11, [X10,#8] | |
.text:000000710083EDA4 CMP X11, X21 | |
.text:000000710083EDA8 B.NE loc_710083EF24 | |
.text:000000710083EDAC LDR X11, [X10,#0x10] | |
.text:000000710083EDB0 CMP X11, X21 | |
.text:000000710083EDB4 B.NE loc_710083EF3C | |
.text:000000710083EDB8 | |
.text:000000710083EDB8 loc_710083EDB8 ; CODE XREF: calc_initial_damage_LA+14B8↓j | |
.text:000000710083EDB8 LDR X0, [X10,#0x18] | |
.text:000000710083EDBC CBZ X0, loc_710083EB8C | |
.text:000000710083EDC0 ADD X8, X0, #0x50 ; 'P' | |
.text:000000710083EDC4 | |
.text:000000710083EDC4 loc_710083EDC4 ; CODE XREF: calc_initial_damage_LA+FF0↓j | |
.text:000000710083EDC4 LDAXR W9, [X8] | |
.text:000000710083EDC8 ADD W9, W9, #1 | |
.text:000000710083EDCC STLXR W10, W9, [X8] | |
.text:000000710083EDD0 CBNZ W10, loc_710083EDC4 | |
.text:000000710083EDD4 LDR X10, [X0,#0x108] | |
.text:000000710083EDD8 FMOV S8, WZR | |
.text:000000710083EDDC CBZ X10, loc_710083EFA0 | |
.text:000000710083EDE0 LSR X11, X10, #1 | |
.text:000000710083EDE4 AND X11, X11, #0x5555555555555555 | |
.text:000000710083EDE8 SUB X11, X10, X11 | |
.text:000000710083EDEC AND X12, X11, #0x3333333333333333 | |
.text:000000710083EDF0 LSR X11, X11, #2 | |
.text:000000710083EDF4 AND X11, X11, #0x3333333333333333 | |
.text:000000710083EDF8 ADD X11, X12, X11 | |
.text:000000710083EDFC MOV X12, #0x101010101010101 | |
.text:000000710083EE00 ADD X11, X11, X11,LSR#4 | |
.text:000000710083EE04 AND X11, X11, #0xF0F0F0F0F0F0F0F | |
.text:000000710083EE08 MUL X11, X11, X12 | |
.text:000000710083EE0C MOV X9, #0x74CF0C9C083F0690 | |
.text:000000710083EE1C LSR X13, X11, #0x38 ; '8' | |
.text:000000710083EE20 CMP X13, #1 | |
.text:000000710083EE24 B.LS loc_710083EF58 | |
.text:000000710083EE28 CMP X10, X9 | |
.text:000000710083EE2C B.HI loc_710083F338 | |
.text:000000710083EE30 UDIV X11, X9, X10 | |
.text:000000710083EE34 MSUB X11, X11, X10, X9 | |
.text:000000710083EE38 | |
.text:000000710083EE38 loc_710083EE38 ; CODE XREF: calc_initial_damage_LA+1180↓j | |
.text:000000710083EE38 ; calc_initial_damage_LA+155C↓j | |
.text:000000710083EE38 LDR X12, [X0,#0x100] | |
.text:000000710083EE3C LDR X12, [X12,X11,LSL#3] | |
.text:000000710083EE40 CBZ X12, loc_710083EFA0 | |
.text:000000710083EE44 LDR X12, [X12] | |
.text:000000710083EE48 CBZ X12, loc_710083EFA0 | |
.text:000000710083EE4C CMP X13, #1 | |
.text:000000710083EE50 B.LS loc_710083EF64 | |
.text:000000710083EE54 | |
.text:000000710083EE54 loc_710083EE54 ; CODE XREF: calc_initial_damage_LA+10AC↓j | |
.text:000000710083EE54 LDR X13, [X12,#8] | |
.text:000000710083EE58 CMP X13, X9 | |
.text:000000710083EE5C B.NE loc_710083EE70 | |
.text:000000710083EE60 LDR X13, [X12,#0x10] | |
.text:000000710083EE64 CMP X13, X9 | |
.text:000000710083EE68 B.EQ loc_710083EF9C | |
.text:000000710083EE6C B loc_710083EE88 | |
.text:000000710083EE70 ; --------------------------------------------------------------------------- | |
.text:000000710083EE70 | |
.text:000000710083EE70 loc_710083EE70 ; CODE XREF: calc_initial_damage_LA+107C↑j | |
.text:000000710083EE70 CMP X13, X10 | |
.text:000000710083EE74 B.CC loc_710083EE80 | |
.text:000000710083EE78 UDIV X14, X13, X10 | |
.text:000000710083EE7C MSUB X13, X14, X10, X13 | |
.text:000000710083EE80 | |
.text:000000710083EE80 loc_710083EE80 ; CODE XREF: calc_initial_damage_LA+1094↑j | |
.text:000000710083EE80 CMP X13, X11 | |
.text:000000710083EE84 B.NE loc_710083EFA0 | |
.text:000000710083EE88 | |
.text:000000710083EE88 loc_710083EE88 ; CODE XREF: calc_initial_damage_LA+108C↑j | |
.text:000000710083EE88 LDR X12, [X12] | |
.text:000000710083EE8C CBNZ X12, loc_710083EE54 | |
.text:000000710083EE90 B loc_710083EFA0 | |
.text:000000710083EE94 ; --------------------------------------------------------------------------- | |
.text:000000710083EE94 | |
.text:000000710083EE94 loc_710083EE94 ; CODE XREF: calc_initial_damage_LA+E50↑j | |
.text:000000710083EE94 CMP X11, X8 | |
.text:000000710083EE98 B.CC loc_710083EEA4 | |
.text:000000710083EE9C UDIV X12, X11, X8 | |
.text:000000710083EEA0 MSUB X11, X12, X8, X11 | |
.text:000000710083EEA4 | |
.text:000000710083EEA4 loc_710083EEA4 ; CODE XREF: calc_initial_damage_LA+10B8↑j | |
.text:000000710083EEA4 CMP X11, X9 | |
.text:000000710083EEA8 B.NE loc_710083EB8C | |
.text:000000710083EEAC | |
.text:000000710083EEAC loc_710083EEAC ; CODE XREF: calc_initial_damage_LA+E5C↑j | |
.text:000000710083EEAC LDR X10, [X10] | |
.text:000000710083EEB0 CBNZ X10, loc_710083EC28 | |
.text:000000710083EEB4 B loc_710083EB8C | |
.text:000000710083EEB8 ; --------------------------------------------------------------------------- | |
.text:000000710083EEB8 | |
.text:000000710083EEB8 loc_710083EEB8 ; CODE XREF: calc_initial_damage_LA+ECC↑j | |
.text:000000710083EEB8 SUB X11, X10, #1 | |
.text:000000710083EEBC AND X11, X11, X9 | |
.text:000000710083EEC0 B loc_710083ECC0 | |
.text:000000710083EEC4 ; --------------------------------------------------------------------------- | |
.text:000000710083EEC4 | |
.text:000000710083EEC4 loc_710083EEC4 ; CODE XREF: calc_initial_damage_LA+EF8↑j | |
.text:000000710083EEC4 SUB X10, X10, #1 | |
.text:000000710083EEC8 | |
.text:000000710083EEC8 loc_710083EEC8 ; CODE XREF: calc_initial_damage_LA+1114↓j | |
.text:000000710083EEC8 LDR X13, [X12,#8] | |
.text:000000710083EECC CMP X13, X9 | |
.text:000000710083EED0 B.NE loc_710083EEE4 | |
.text:000000710083EED4 LDR X13, [X12,#0x10] | |
.text:000000710083EED8 CMP X13, X9 | |
.text:000000710083EEDC B.EQ loc_710083EEFC | |
.text:000000710083EEE0 B loc_710083EEF0 | |
.text:000000710083EEE4 ; --------------------------------------------------------------------------- | |
.text:000000710083EEE4 | |
.text:000000710083EEE4 loc_710083EEE4 ; CODE XREF: calc_initial_damage_LA+10F0↑j | |
.text:000000710083EEE4 AND X13, X13, X10 | |
.text:000000710083EEE8 CMP X13, X11 | |
.text:000000710083EEEC B.NE loc_710083EF00 | |
.text:000000710083EEF0 | |
.text:000000710083EEF0 loc_710083EEF0 ; CODE XREF: calc_initial_damage_LA+1100↑j | |
.text:000000710083EEF0 LDR X12, [X12] | |
.text:000000710083EEF4 CBNZ X12, loc_710083EEC8 | |
.text:000000710083EEF8 B loc_710083EF00 | |
.text:000000710083EEFC ; --------------------------------------------------------------------------- | |
.text:000000710083EEFC | |
.text:000000710083EEFC loc_710083EEFC ; CODE XREF: calc_initial_damage_LA+F10↑j | |
.text:000000710083EEFC ; calc_initial_damage_LA+10FC↑j | |
.text:000000710083EEFC LDR S8, [X12,#0x30] | |
.text:000000710083EF00 | |
.text:000000710083EF00 loc_710083EF00 ; CODE XREF: calc_initial_damage_LA+E84↑j | |
.text:000000710083EF00 ; calc_initial_damage_LA+EE8↑j ... | |
.text:000000710083EF00 LDAXR W9, [X8] | |
.text:000000710083EF04 SUBS W9, W9, #1 | |
.text:000000710083EF08 STLXR W10, W9, [X8] | |
.text:000000710083EF0C CBNZ W10, loc_710083EF00 | |
.text:000000710083EF10 | |
.text:000000710083EF10 loc_710083EF10 ; CODE XREF: calc_initial_damage_LA+11D0↓j | |
.text:000000710083EF10 B.NE loc_710083EB8C | |
.text:000000710083EF14 LDR X8, [X0] | |
.text:000000710083EF18 LDR X8, [X8,#0x10] | |
.text:000000710083EF1C BLR X8 | |
.text:000000710083EF20 B loc_710083EB8C | |
.text:000000710083EF24 ; --------------------------------------------------------------------------- | |
.text:000000710083EF24 | |
.text:000000710083EF24 loc_710083EF24 ; CODE XREF: calc_initial_damage_LA+FC8↑j | |
.text:000000710083EF24 CMP X11, X8 | |
.text:000000710083EF28 B.CC loc_710083EF34 | |
.text:000000710083EF2C UDIV X12, X11, X8 | |
.text:000000710083EF30 MSUB X11, X12, X8, X11 | |
.text:000000710083EF34 | |
.text:000000710083EF34 loc_710083EF34 ; CODE XREF: calc_initial_damage_LA+1148↑j | |
.text:000000710083EF34 CMP X11, X9 | |
.text:000000710083EF38 B.NE loc_710083EB8C | |
.text:000000710083EF3C | |
.text:000000710083EF3C loc_710083EF3C ; CODE XREF: calc_initial_damage_LA+FD4↑j | |
.text:000000710083EF3C LDR X10, [X10] | |
.text:000000710083EF40 CBNZ X10, loc_710083EDA0 | |
.text:000000710083EF44 B loc_710083EB8C | |
.text:000000710083EF48 ; --------------------------------------------------------------------------- | |
.text:000000710083EF48 | |
.text:000000710083EF48 loc_710083EF48 ; CODE XREF: calc_initial_damage_LA:loc_710083EB7C↑j | |
.text:000000710083EF48 LDR X8, [X0] | |
.text:000000710083EF4C LDR X8, [X8,#0x10] | |
.text:000000710083EF50 BLR X8 | |
.text:000000710083EF54 B loc_710083EB80 | |
.text:000000710083EF58 ; --------------------------------------------------------------------------- | |
.text:000000710083EF58 | |
.text:000000710083EF58 loc_710083EF58 ; CODE XREF: calc_initial_damage_LA+1044↑j | |
.text:000000710083EF58 SUB X11, X10, #1 | |
.text:000000710083EF5C AND X11, X11, X9 | |
.text:000000710083EF60 B loc_710083EE38 | |
.text:000000710083EF64 ; --------------------------------------------------------------------------- | |
.text:000000710083EF64 | |
.text:000000710083EF64 loc_710083EF64 ; CODE XREF: calc_initial_damage_LA+1070↑j | |
.text:000000710083EF64 SUB X10, X10, #1 | |
.text:000000710083EF68 | |
.text:000000710083EF68 loc_710083EF68 ; CODE XREF: calc_initial_damage_LA+11B4↓j | |
.text:000000710083EF68 LDR X13, [X12,#8] | |
.text:000000710083EF6C CMP X13, X9 | |
.text:000000710083EF70 B.NE loc_710083EF84 | |
.text:000000710083EF74 LDR X13, [X12,#0x10] | |
.text:000000710083EF78 CMP X13, X9 | |
.text:000000710083EF7C B.EQ loc_710083EF9C | |
.text:000000710083EF80 B loc_710083EF90 | |
.text:000000710083EF84 ; --------------------------------------------------------------------------- | |
.text:000000710083EF84 | |
.text:000000710083EF84 loc_710083EF84 ; CODE XREF: calc_initial_damage_LA+1190↑j | |
.text:000000710083EF84 AND X13, X13, X10 | |
.text:000000710083EF88 CMP X13, X11 | |
.text:000000710083EF8C B.NE loc_710083EFA0 | |
.text:000000710083EF90 | |
.text:000000710083EF90 loc_710083EF90 ; CODE XREF: calc_initial_damage_LA+11A0↑j | |
.text:000000710083EF90 LDR X12, [X12] | |
.text:000000710083EF94 CBNZ X12, loc_710083EF68 | |
.text:000000710083EF98 B loc_710083EFA0 | |
.text:000000710083EF9C ; --------------------------------------------------------------------------- | |
.text:000000710083EF9C | |
.text:000000710083EF9C loc_710083EF9C ; CODE XREF: calc_initial_damage_LA+1088↑j | |
.text:000000710083EF9C ; calc_initial_damage_LA+119C↑j | |
.text:000000710083EF9C LDR S8, [X12,#48] | |
.text:000000710083EFA0 | |
.text:000000710083EFA0 loc_710083EFA0 ; CODE XREF: calc_initial_damage_LA+FFC↑j | |
.text:000000710083EFA0 ; calc_initial_damage_LA+1060↑j ... | |
.text:000000710083EFA0 LDAXR W9, [X8] | |
.text:000000710083EFA4 SUBS W9, W9, #1 | |
.text:000000710083EFA8 STLXR W10, W9, [X8] | |
.text:000000710083EFAC CBNZ W10, loc_710083EFA0 | |
.text:000000710083EFB0 B loc_710083EF10 | |
.text:000000710083EFB4 ; --------------------------------------------------------------------------- | |
.text:000000710083EFB4 | |
.text:000000710083EFB4 loc_710083EFB4 ; CODE XREF: calc_initial_damage_LA+2C↑j | |
.text:000000710083EFB4 ADRP X0, #off_7104279660@PAGE | |
.text:000000710083EFB8 LDR X0, [X0,#off_7104279660@PAGEOFF] ; __guard * | |
.text:000000710083EFBC BL __cxa_guard_acquire_0 | |
.text:000000710083EFC0 CBZ W0, loc_710083DE10 | |
.text:000000710083EFC4 ADRP X0, #off_71042796B0@PAGE | |
.text:000000710083EFC8 ADRP X1, #off_7104279668@PAGE | |
.text:000000710083EFCC LDR X0, [X0,#off_71042796B0@PAGEOFF] | |
.text:000000710083EFD0 LDR X1, [X1,#off_7104279668@PAGEOFF] | |
.text:000000710083EFD4 ADRL X2, off_710401A000 | |
.text:000000710083EFDC BL sub_7100000250 | |
.text:000000710083EFE0 ADRP X0, #off_7104279660@PAGE | |
.text:000000710083EFE4 LDR X0, [X0,#off_7104279660@PAGEOFF] ; __guard * | |
.text:000000710083EFE8 BL __cxa_guard_release_0 | |
.text:000000710083EFEC B loc_710083DE10 | |
.text:000000710083EFF0 ; --------------------------------------------------------------------------- | |
.text:000000710083EFF0 | |
.text:000000710083EFF0 loc_710083EFF0 ; CODE XREF: calc_initial_damage_LA+98↑j | |
.text:000000710083EFF0 SUB X9, X8, #1 | |
.text:000000710083EFF4 AND X9, X9, X21 | |
.text:000000710083EFF8 B loc_710083DE90 | |
.text:000000710083EFFC ; --------------------------------------------------------------------------- | |
.text:000000710083EFFC | |
.text:000000710083EFFC loc_710083EFFC ; CODE XREF: calc_initial_damage_LA+290↑j | |
.text:000000710083EFFC SUB X9, X8, #1 | |
.text:000000710083F000 AND X9, X9, X21 | |
.text:000000710083F004 B loc_710083E088 | |
.text:000000710083F008 ; --------------------------------------------------------------------------- | |
.text:000000710083F008 | |
.text:000000710083F008 loc_710083F008 ; CODE XREF: calc_initial_damage_LA+488↑j | |
.text:000000710083F008 SUB X9, X8, #1 | |
.text:000000710083F00C AND X9, X9, X21 | |
.text:000000710083F010 B loc_710083E280 | |
.text:000000710083F014 ; --------------------------------------------------------------------------- | |
.text:000000710083F014 | |
.text:000000710083F014 loc_710083F014 ; CODE XREF: calc_initial_damage_LA+680↑j | |
.text:000000710083F014 SUB X9, X8, #1 | |
.text:000000710083F018 AND X9, X9, X21 | |
.text:000000710083F01C B loc_710083E478 | |
.text:000000710083F020 ; --------------------------------------------------------------------------- | |
.text:000000710083F020 | |
.text:000000710083F020 loc_710083F020 ; CODE XREF: calc_initial_damage_LA+C8↑j | |
.text:000000710083F020 SUB X8, X8, #1 | |
.text:000000710083F024 | |
.text:000000710083F024 loc_710083F024 ; CODE XREF: calc_initial_damage_LA+12D0↓j | |
.text:000000710083F024 LDR X11, [X10,#8] | |
.text:000000710083F028 CMP X11, X21 | |
.text:000000710083F02C B.NE loc_710083F0A0 | |
.text:000000710083F030 LDR X11, [X10,#0x10] | |
.text:000000710083F034 CMP X11, X21 | |
.text:000000710083F038 B.EQ loc_710083DEC4 | |
.text:000000710083F03C B loc_710083F0AC | |
.text:000000710083F040 ; --------------------------------------------------------------------------- | |
.text:000000710083F040 | |
.text:000000710083F040 loc_710083F040 ; CODE XREF: calc_initial_damage_LA+2C0↑j | |
.text:000000710083F040 SUB X8, X8, #1 | |
.text:000000710083F044 | |
.text:000000710083F044 loc_710083F044 ; CODE XREF: calc_initial_damage_LA+12E8↓j | |
.text:000000710083F044 LDR X11, [X10,#8] | |
.text:000000710083F048 CMP X11, X21 | |
.text:000000710083F04C B.NE loc_710083F0B8 | |
.text:000000710083F050 LDR X11, [X10,#0x10] | |
.text:000000710083F054 CMP X11, X21 | |
.text:000000710083F058 B.EQ loc_710083E0BC | |
.text:000000710083F05C B loc_710083F0C4 | |
.text:000000710083F060 ; --------------------------------------------------------------------------- | |
.text:000000710083F060 | |
.text:000000710083F060 loc_710083F060 ; CODE XREF: calc_initial_damage_LA+4B8↑j | |
.text:000000710083F060 SUB X8, X8, #1 | |
.text:000000710083F064 | |
.text:000000710083F064 loc_710083F064 ; CODE XREF: calc_initial_damage_LA+1300↓j | |
.text:000000710083F064 LDR X11, [X10,#8] | |
.text:000000710083F068 CMP X11, X21 | |
.text:000000710083F06C B.NE loc_710083F0D0 | |
.text:000000710083F070 LDR X11, [X10,#0x10] | |
.text:000000710083F074 CMP X11, X21 | |
.text:000000710083F078 B.EQ loc_710083E2B4 | |
.text:000000710083F07C B loc_710083F0DC | |
.text:000000710083F080 ; --------------------------------------------------------------------------- | |
.text:000000710083F080 | |
.text:000000710083F080 loc_710083F080 ; CODE XREF: calc_initial_damage_LA+6B0↑j | |
.text:000000710083F080 SUB X8, X8, #1 | |
.text:000000710083F084 | |
.text:000000710083F084 loc_710083F084 ; CODE XREF: calc_initial_damage_LA+1318↓j | |
.text:000000710083F084 LDR X11, [X10,#8] | |
.text:000000710083F088 CMP X11, X21 | |
.text:000000710083F08C B.NE loc_710083F0E8 | |
.text:000000710083F090 LDR X11, [X10,#0x10] | |
.text:000000710083F094 CMP X11, X21 | |
.text:000000710083F098 B.EQ loc_710083E4AC | |
.text:000000710083F09C B loc_710083F0F4 | |
.text:000000710083F0A0 ; --------------------------------------------------------------------------- | |
.text:000000710083F0A0 | |
.text:000000710083F0A0 loc_710083F0A0 ; CODE XREF: calc_initial_damage_LA+124C↑j | |
.text:000000710083F0A0 AND X11, X11, X8 | |
.text:000000710083F0A4 CMP X11, X9 | |
.text:000000710083F0A8 B.NE loc_710083E020 | |
.text:000000710083F0AC | |
.text:000000710083F0AC loc_710083F0AC ; CODE XREF: calc_initial_damage_LA+125C↑j | |
.text:000000710083F0AC LDR X10, [X10] | |
.text:000000710083F0B0 CBNZ X10, loc_710083F024 | |
.text:000000710083F0B4 B loc_710083E020 | |
.text:000000710083F0B8 ; --------------------------------------------------------------------------- | |
.text:000000710083F0B8 | |
.text:000000710083F0B8 loc_710083F0B8 ; CODE XREF: calc_initial_damage_LA+126C↑j | |
.text:000000710083F0B8 AND X11, X11, X8 | |
.text:000000710083F0BC CMP X11, X9 | |
.text:000000710083F0C0 B.NE loc_710083E218 | |
.text:000000710083F0C4 | |
.text:000000710083F0C4 loc_710083F0C4 ; CODE XREF: calc_initial_damage_LA+127C↑j | |
.text:000000710083F0C4 LDR X10, [X10] | |
.text:000000710083F0C8 CBNZ X10, loc_710083F044 | |
.text:000000710083F0CC B loc_710083E218 | |
.text:000000710083F0D0 ; --------------------------------------------------------------------------- | |
.text:000000710083F0D0 | |
.text:000000710083F0D0 loc_710083F0D0 ; CODE XREF: calc_initial_damage_LA+128C↑j | |
.text:000000710083F0D0 AND X11, X11, X8 | |
.text:000000710083F0D4 CMP X11, X9 | |
.text:000000710083F0D8 B.NE loc_710083E410 | |
.text:000000710083F0DC | |
.text:000000710083F0DC loc_710083F0DC ; CODE XREF: calc_initial_damage_LA+129C↑j | |
.text:000000710083F0DC LDR X10, [X10] | |
.text:000000710083F0E0 CBNZ X10, loc_710083F064 | |
.text:000000710083F0E4 B loc_710083E410 | |
.text:000000710083F0E8 ; --------------------------------------------------------------------------- | |
.text:000000710083F0E8 | |
.text:000000710083F0E8 loc_710083F0E8 ; CODE XREF: calc_initial_damage_LA+12AC↑j | |
.text:000000710083F0E8 AND X11, X11, X8 | |
.text:000000710083F0EC CMP X11, X9 | |
.text:000000710083F0F0 B.NE loc_710083E608 | |
.text:000000710083F0F4 | |
.text:000000710083F0F4 loc_710083F0F4 ; CODE XREF: calc_initial_damage_LA+12BC↑j | |
.text:000000710083F0F4 LDR X10, [X10] | |
.text:000000710083F0F8 CBNZ X10, loc_710083F084 | |
.text:000000710083F0FC B loc_710083E608 | |
.text:000000710083F100 ; --------------------------------------------------------------------------- | |
.text:000000710083F100 | |
.text:000000710083F100 loc_710083F100 ; CODE XREF: calc_initial_damage_LA+8B4↑j | |
.text:000000710083F100 ADRP X0, #off_7104279660@PAGE | |
.text:000000710083F104 LDR X0, [X0,#off_7104279660@PAGEOFF] ; __guard * | |
.text:000000710083F108 BL __cxa_guard_acquire_0 | |
.text:000000710083F10C CBZ W0, loc_710083E698 | |
.text:000000710083F110 ADRP X0, #off_71042796B0@PAGE | |
.text:000000710083F114 ADRP X1, #off_7104279668@PAGE | |
.text:000000710083F118 LDR X0, [X0,#off_71042796B0@PAGEOFF] | |
.text:000000710083F11C LDR X1, [X1,#off_7104279668@PAGEOFF] | |
.text:000000710083F120 ADRL X2, off_710401A000 | |
.text:000000710083F128 BL sub_7100000250 | |
.text:000000710083F12C ADRP X0, #off_7104279660@PAGE | |
.text:000000710083F130 LDR X0, [X0,#off_7104279660@PAGEOFF] ; __guard * | |
.text:000000710083F134 BL __cxa_guard_release_0 | |
.text:000000710083F138 B loc_710083E698 | |
.text:000000710083F13C ; --------------------------------------------------------------------------- | |
.text:000000710083F13C | |
.text:000000710083F13C loc_710083F13C ; CODE XREF: calc_initial_damage_LA+900↑j | |
.text:000000710083F13C SUB X9, X8, #1 | |
.text:000000710083F140 AND X9, X9, X21 | |
.text:000000710083F144 B loc_710083E6F8 | |
.text:000000710083F148 ; --------------------------------------------------------------------------- | |
.text:000000710083F148 | |
.text:000000710083F148 loc_710083F148 ; CODE XREF: calc_initial_damage_LA+930↑j | |
.text:000000710083F148 SUB X8, X8, #1 | |
.text:000000710083F14C | |
.text:000000710083F14C loc_710083F14C ; CODE XREF: calc_initial_damage_LA+14D0↓j | |
.text:000000710083F14C LDR X11, [X10,#8] | |
.text:000000710083F150 CMP X11, X21 | |
.text:000000710083F154 B.NE loc_710083F2A0 | |
.text:000000710083F158 LDR X11, [X10,#0x10] | |
.text:000000710083F15C CMP X11, X21 | |
.text:000000710083F160 B.EQ loc_710083E72C | |
.text:000000710083F164 B loc_710083F2AC | |
.text:000000710083F168 ; --------------------------------------------------------------------------- | |
.text:000000710083F168 | |
.text:000000710083F168 loc_710083F168 ; CODE XREF: calc_initial_damage_LA+DC8↑j | |
.text:000000710083F168 ADRP X0, #off_7104279660@PAGE | |
.text:000000710083F16C LDR X0, [X0,#off_7104279660@PAGEOFF] ; __guard * | |
.text:000000710083F170 BL __cxa_guard_acquire_0 | |
.text:000000710083F174 CBZ W0, loc_710083EBAC | |
.text:000000710083F178 ADRP X0, #off_71042796B0@PAGE | |
.text:000000710083F17C ADRP X1, #off_7104279668@PAGE | |
.text:000000710083F180 LDR X0, [X0,#off_71042796B0@PAGEOFF] | |
.text:000000710083F184 LDR X1, [X1,#off_7104279668@PAGEOFF] | |
.text:000000710083F188 ADRL X2, off_710401A000 | |
.text:000000710083F190 BL sub_7100000250 | |
.text:000000710083F194 ADRP X0, #off_7104279660@PAGE | |
.text:000000710083F198 LDR X0, [X0,#off_7104279660@PAGEOFF] ; __guard * | |
.text:000000710083F19C BL __cxa_guard_release_0 | |
.text:000000710083F1A0 B loc_710083EBAC | |
.text:000000710083F1A4 ; --------------------------------------------------------------------------- | |
.text:000000710083F1A4 | |
.text:000000710083F1A4 loc_710083F1A4 ; CODE XREF: calc_initial_damage_LA+E14↑j | |
.text:000000710083F1A4 SUB X9, X8, #1 | |
.text:000000710083F1A8 AND X9, X9, X21 | |
.text:000000710083F1AC B loc_710083EC0C | |
.text:000000710083F1B0 ; --------------------------------------------------------------------------- | |
.text:000000710083F1B0 | |
.text:000000710083F1B0 loc_710083F1B0 ; CODE XREF: calc_initial_damage_LA+E44↑j | |
.text:000000710083F1B0 SUB X8, X8, #1 | |
.text:000000710083F1B4 | |
.text:000000710083F1B4 loc_710083F1B4 ; CODE XREF: calc_initial_damage_LA+14E8↓j | |
.text:000000710083F1B4 LDR X11, [X10,#8] | |
.text:000000710083F1B8 CMP X11, X21 | |
.text:000000710083F1BC B.NE loc_710083F2B8 | |
.text:000000710083F1C0 LDR X11, [X10,#0x10] | |
.text:000000710083F1C4 CMP X11, X21 | |
.text:000000710083F1C8 B.EQ loc_710083EC40 | |
.text:000000710083F1CC B loc_710083F2C4 | |
.text:000000710083F1D0 ; --------------------------------------------------------------------------- | |
.text:000000710083F1D0 | |
.text:000000710083F1D0 loc_710083F1D0 ; CODE XREF: calc_initial_damage_LA+A2C↑j | |
.text:000000710083F1D0 ADRP X0, #off_7104279660@PAGE | |
.text:000000710083F1D4 LDR X0, [X0,#off_7104279660@PAGEOFF] ; __guard * | |
.text:000000710083F1D8 BL __cxa_guard_acquire_0 | |
.text:000000710083F1DC CBZ W0, loc_710083E810 | |
.text:000000710083F1E0 ADRP X0, #off_71042796B0@PAGE | |
.text:000000710083F1E4 ADRP X1, #off_7104279668@PAGE | |
.text:000000710083F1E8 LDR X0, [X0,#off_71042796B0@PAGEOFF] | |
.text:000000710083F1EC LDR X1, [X1,#off_7104279668@PAGEOFF] | |
.text:000000710083F1F0 ADRL X2, off_710401A000 | |
.text:000000710083F1F8 BL sub_7100000250 | |
.text:000000710083F1FC ADRP X0, #off_7104279660@PAGE | |
.text:000000710083F200 LDR X0, [X0,#off_7104279660@PAGEOFF] ; __guard * | |
.text:000000710083F204 BL __cxa_guard_release_0 | |
.text:000000710083F208 B loc_710083E810 | |
.text:000000710083F20C ; --------------------------------------------------------------------------- | |
.text:000000710083F20C | |
.text:000000710083F20C loc_710083F20C ; CODE XREF: calc_initial_damage_LA+A78↑j | |
.text:000000710083F20C SUB X9, X8, #1 | |
.text:000000710083F210 AND X9, X9, X21 | |
.text:000000710083F214 B loc_710083E870 | |
.text:000000710083F218 ; --------------------------------------------------------------------------- | |
.text:000000710083F218 | |
.text:000000710083F218 loc_710083F218 ; CODE XREF: calc_initial_damage_LA+AA8↑j | |
.text:000000710083F218 SUB X8, X8, #1 | |
.text:000000710083F21C | |
.text:000000710083F21C loc_710083F21C ; CODE XREF: calc_initial_damage_LA+1500↓j | |
.text:000000710083F21C LDR X11, [X10,#8] | |
.text:000000710083F220 CMP X11, X21 | |
.text:000000710083F224 B.NE loc_710083F2D0 | |
.text:000000710083F228 LDR X11, [X10,#0x10] | |
.text:000000710083F22C CMP X11, X21 | |
.text:000000710083F230 B.EQ loc_710083E8A4 | |
.text:000000710083F234 B loc_710083F2DC | |
.text:000000710083F238 ; --------------------------------------------------------------------------- | |
.text:000000710083F238 | |
.text:000000710083F238 loc_710083F238 ; CODE XREF: calc_initial_damage_LA+F40↑j | |
.text:000000710083F238 ADRP X0, #off_7104279660@PAGE | |
.text:000000710083F23C LDR X0, [X0,#off_7104279660@PAGEOFF] ; __guard * | |
.text:000000710083F240 BL __cxa_guard_acquire_0 | |
.text:000000710083F244 CBZ W0, loc_710083ED24 | |
.text:000000710083F248 ADRP X0, #off_71042796B0@PAGE | |
.text:000000710083F24C ADRP X1, #off_7104279668@PAGE | |
.text:000000710083F250 LDR X0, [X0,#off_71042796B0@PAGEOFF] | |
.text:000000710083F254 LDR X1, [X1,#off_7104279668@PAGEOFF] | |
.text:000000710083F258 ADRL X2, off_710401A000 | |
.text:000000710083F260 BL sub_7100000250 | |
.text:000000710083F264 ADRP X0, #off_7104279660@PAGE | |
.text:000000710083F268 LDR X0, [X0,#off_7104279660@PAGEOFF] ; __guard * | |
.text:000000710083F26C BL __cxa_guard_release_0 | |
.text:000000710083F270 B loc_710083ED24 | |
.text:000000710083F274 ; --------------------------------------------------------------------------- | |
.text:000000710083F274 | |
.text:000000710083F274 loc_710083F274 ; CODE XREF: calc_initial_damage_LA+F8C↑j | |
.text:000000710083F274 SUB X9, X8, #1 | |
.text:000000710083F278 AND X9, X9, X21 | |
.text:000000710083F27C B loc_710083ED84 | |
.text:000000710083F280 ; --------------------------------------------------------------------------- | |
.text:000000710083F280 | |
.text:000000710083F280 loc_710083F280 ; CODE XREF: calc_initial_damage_LA+FBC↑j | |
.text:000000710083F280 SUB X8, X8, #1 | |
.text:000000710083F284 | |
.text:000000710083F284 loc_710083F284 ; CODE XREF: calc_initial_damage_LA+1538↓j | |
.text:000000710083F284 LDR X11, [X10,#8] | |
.text:000000710083F288 CMP X11, X21 | |
.text:000000710083F28C B.NE loc_710083F308 | |
.text:000000710083F290 LDR X11, [X10,#0x10] | |
.text:000000710083F294 CMP X11, X21 | |
.text:000000710083F298 B.EQ loc_710083EDB8 | |
.text:000000710083F29C B loc_710083F314 | |
.text:000000710083F2A0 ; --------------------------------------------------------------------------- | |
.text:000000710083F2A0 | |
.text:000000710083F2A0 loc_710083F2A0 ; CODE XREF: calc_initial_damage_LA+1374↑j | |
.text:000000710083F2A0 AND X11, X11, X8 | |
.text:000000710083F2A4 CMP X11, X9 | |
.text:000000710083F2A8 B.NE loc_710083EB80 | |
.text:000000710083F2AC | |
.text:000000710083F2AC loc_710083F2AC ; CODE XREF: calc_initial_damage_LA+1384↑j | |
.text:000000710083F2AC LDR X10, [X10] | |
.text:000000710083F2B0 CBNZ X10, loc_710083F14C | |
.text:000000710083F2B4 B loc_710083EB80 | |
.text:000000710083F2B8 ; --------------------------------------------------------------------------- | |
.text:000000710083F2B8 | |
.text:000000710083F2B8 loc_710083F2B8 ; CODE XREF: calc_initial_damage_LA+13DC↑j | |
.text:000000710083F2B8 AND X11, X11, X8 | |
.text:000000710083F2BC CMP X11, X9 | |
.text:000000710083F2C0 B.NE loc_710083EB8C | |
.text:000000710083F2C4 | |
.text:000000710083F2C4 loc_710083F2C4 ; CODE XREF: calc_initial_damage_LA+13EC↑j | |
.text:000000710083F2C4 LDR X10, [X10] | |
.text:000000710083F2C8 CBNZ X10, loc_710083F1B4 | |
.text:000000710083F2CC B loc_710083EB8C | |
.text:000000710083F2D0 ; --------------------------------------------------------------------------- | |
.text:000000710083F2D0 | |
.text:000000710083F2D0 loc_710083F2D0 ; CODE XREF: calc_initial_damage_LA+1444↑j | |
.text:000000710083F2D0 AND X11, X11, X8 | |
.text:000000710083F2D4 CMP X11, X9 | |
.text:000000710083F2D8 B.NE loc_710083EB80 | |
.text:000000710083F2DC | |
.text:000000710083F2DC loc_710083F2DC ; CODE XREF: calc_initial_damage_LA+1454↑j | |
.text:000000710083F2DC LDR X10, [X10] | |
.text:000000710083F2E0 CBNZ X10, loc_710083F21C | |
.text:000000710083F2E4 B loc_710083EB80 | |
.text:000000710083F2E8 ; --------------------------------------------------------------------------- | |
.text:000000710083F2E8 | |
.text:000000710083F2E8 loc_710083F2E8 ; CODE XREF: calc_initial_damage_LA+158↑j | |
.text:000000710083F2E8 MOV X11, X9 | |
.text:000000710083F2EC B loc_710083DF44 | |
.text:000000710083F2F0 ; --------------------------------------------------------------------------- | |
.text:000000710083F2F0 | |
.text:000000710083F2F0 loc_710083F2F0 ; CODE XREF: calc_initial_damage_LA+350↑j | |
.text:000000710083F2F0 MOV X11, X9 | |
.text:000000710083F2F4 B loc_710083E13C | |
.text:000000710083F2F8 ; --------------------------------------------------------------------------- | |
.text:000000710083F2F8 | |
.text:000000710083F2F8 loc_710083F2F8 ; CODE XREF: calc_initial_damage_LA+548↑j | |
.text:000000710083F2F8 MOV X11, X9 | |
.text:000000710083F2FC B loc_710083E334 | |
.text:000000710083F300 ; --------------------------------------------------------------------------- | |
.text:000000710083F300 | |
.text:000000710083F300 loc_710083F300 ; CODE XREF: calc_initial_damage_LA+740↑j | |
.text:000000710083F300 MOV X11, X9 | |
.text:000000710083F304 B loc_710083E52C | |
.text:000000710083F308 ; --------------------------------------------------------------------------- | |
.text:000000710083F308 | |
.text:000000710083F308 loc_710083F308 ; CODE XREF: calc_initial_damage_LA+14AC↑j | |
.text:000000710083F308 AND X11, X11, X8 | |
.text:000000710083F30C CMP X11, X9 | |
.text:000000710083F310 B.NE loc_710083EB8C | |
.text:000000710083F314 | |
.text:000000710083F314 loc_710083F314 ; CODE XREF: calc_initial_damage_LA+14BC↑j | |
.text:000000710083F314 LDR X10, [X10] | |
.text:000000710083F318 CBNZ X10, loc_710083F284 | |
.text:000000710083F31C B loc_710083EB8C | |
.text:000000710083F320 ; --------------------------------------------------------------------------- | |
.text:000000710083F320 | |
.text:000000710083F320 loc_710083F320 ; CODE XREF: calc_initial_damage_LA+9C0↑j | |
.text:000000710083F320 MOV X11, X9 | |
.text:000000710083F324 B loc_710083E7AC | |
.text:000000710083F328 ; --------------------------------------------------------------------------- | |
.text:000000710083F328 | |
.text:000000710083F328 loc_710083F328 ; CODE XREF: calc_initial_damage_LA+ED4↑j | |
.text:000000710083F328 MOV X11, X9 | |
.text:000000710083F32C B loc_710083ECC0 | |
.text:000000710083F330 ; --------------------------------------------------------------------------- | |
.text:000000710083F330 | |
.text:000000710083F330 loc_710083F330 ; CODE XREF: calc_initial_damage_LA+B38↑j | |
.text:000000710083F330 MOV X11, X9 | |
.text:000000710083F334 B loc_710083E924 | |
.text:000000710083F338 ; --------------------------------------------------------------------------- | |
.text:000000710083F338 | |
.text:000000710083F338 loc_710083F338 ; CODE XREF: calc_initial_damage_LA+104C↑j | |
.text:000000710083F338 MOV X11, X9 | |
.text:000000710083F33C B loc_710083EE38 | |
.text:000000710083F33C ; End of function calc_initial_damage_LA |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment