Code:
double __cdecl CalcDamage__CalcDamageByWT(int a1, int a2, int a3, int a4)
{
signed int v4; // ecx@1
double result; // st7@3
int v6; // edi@3
int v7; // eax@3
int v8; // edi@5
int v9; // eax@5
int v10; // edi@6
int v11; // eax@6
int v12; // edi@7
int v13; // eax@7
int v14; // edi@8
int v15; // eax@8
int v16; // edi@9
int v17; // eax@9
int v18; // edi@10
int v19; // eax@10
int v20; // edi@11
int v21; // eax@11
int v22; // edi@12
int v23; // eax@12
int v24; // edi@13
int v25; // ebx@13
int v26; // eax@13
int v27; // edi@14
int v28; // eax@14
int v29; // edi@15
int v30; // eax@15
int v31; // edi@16
int v32; // eax@16
int v33; // edi@17
int v34; // eax@17
int v35; // edi@18
int v36; // eax@18
v4 = _ZtlSecureFuse((const __int32 *const )(a2 + 24), *(_DWORD *)(a2 + 32));
if ( v4 % 1000 && v4 != 2001 )
{
switch ( a1 )
{
case 45:
v8 = _ZtlSecureFuse((const __int32 *const )(a2 + 36), *(_DWORD *)(a2 + 44));
v9 = _ZtlSecureFuse((const __int32 *const )(a2 + 48), *(_DWORD *)(a2 + 56));
result = (double)_calc_base_damage(v9, v8, 0, a3, 1.2);
break;
case 46:
v10 = _ZtlSecureFuse((const __int32 *const )(a2 + 36), *(_DWORD *)(a2 + 44));
v11 = _ZtlSecureFuse((const __int32 *const )(a2 + 48), *(_DWORD *)(a2 + 56));
result = (double)_calc_base_damage(v11, v10, 0, a3, 1.35);
break;
case 41:
case 42:
v12 = _ZtlSecureFuse((const __int32 *const )(a2 + 48), *(_DWORD *)(a2 + 56));
v13 = _ZtlSecureFuse((const __int32 *const )(a2 + 36), *(_DWORD *)(a2 + 44));
result = (double)_calc_base_damage(v13, v12, 0, a3, 1.32);
break;
case 43:
case 44:
v14 = _ZtlSecureFuse((const __int32 *const )(a2 + 48), *(_DWORD *)(a2 + 56));
v15 = _ZtlSecureFuse((const __int32 *const )(a2 + 36), *(_DWORD *)(a2 + 44));
result = (double)_calc_base_damage(v15, v14, 0, a3, 1.49);
break;
case 40:
v16 = _ZtlSecureFuse((const __int32 *const )(a2 + 48), *(_DWORD *)(a2 + 56));
v17 = _ZtlSecureFuse((const __int32 *const )(a2 + 36), *(_DWORD *)(a2 + 44));
result = (double)_calc_base_damage(v17, v16, 0, a3, 1.32);
break;
case 37:
v18 = _ZtlSecureFuse((const __int32 *const )(a2 + 72), *(_DWORD *)(a2 + 80));
v19 = _ZtlSecureFuse((const __int32 *const )(a2 + 60), *(_DWORD *)(a2 + 68));
result = (double)_calc_base_damage(v19, v18, 0, a4, 1.0);
break;
case 38:
v20 = _ZtlSecureFuse((const __int32 *const )(a2 + 72), *(_DWORD *)(a2 + 80));
v21 = _ZtlSecureFuse((const __int32 *const )(a2 + 60), *(_DWORD *)(a2 + 68));
result = (double)_calc_base_damage(v21, v20, 0, a4, 1.0);
break;
case 31:
case 32:
v22 = _ZtlSecureFuse((const __int32 *const )(a2 + 48), *(_DWORD *)(a2 + 56));
v23 = _ZtlSecureFuse((const __int32 *const )(a2 + 36), *(_DWORD *)(a2 + 44));
result = (double)_calc_base_damage(v23, v22, 0, a3, 1.2);
break;
case 33:
v24 = _ZtlSecureFuse((const __int32 *const )(a2 + 36), *(_DWORD *)(a2 + 44));
v25 = _ZtlSecureFuse((const __int32 *const )(a2 + 48), *(_DWORD *)(a2 + 56));
v26 = _ZtlSecureFuse((const __int32 *const )(a2 + 72), *(_DWORD *)(a2 + 80));
result = (double)_calc_base_damage(v26, v25, v24, a3, 1.3);
break;
case 30:
v27 = _ZtlSecureFuse((const __int32 *const )(a2 + 48), *(_DWORD *)(a2 + 56));
v28 = _ZtlSecureFuse((const __int32 *const )(a2 + 36), *(_DWORD *)(a2 + 44));
result = (double)_calc_base_damage(v28, v27, 0, a3, 1.2);
break;
case 47:
v29 = _ZtlSecureFuse((const __int32 *const )(a2 + 48), *(_DWORD *)(a2 + 56));
v30 = _ZtlSecureFuse((const __int32 *const )(a2 + 72), *(_DWORD *)(a2 + 80));
result = (double)_calc_base_damage(v30, v29, 0, a3, 1.75);
break;
case 39:
v31 = _ZtlSecureFuse((const __int32 *const )(a2 + 48), *(_DWORD *)(a2 + 56));
v32 = _ZtlSecureFuse((const __int32 *const )(a2 + 36), *(_DWORD *)(a2 + 44));
result = (double)_calc_base_damage(v32, v31, 0, 1, 1.43);
break;
case 48:
v33 = _ZtlSecureFuse((const __int32 *const )(a2 + 48), *(_DWORD *)(a2 + 56));
v34 = _ZtlSecureFuse((const __int32 *const )(a2 + 36), *(_DWORD *)(a2 + 44));
result = (double)_calc_base_damage(v34, v33, 0, a3, 1.7);
break;
case 49:
v35 = _ZtlSecureFuse((const __int32 *const )(a2 + 36), *(_DWORD *)(a2 + 44));
v36 = _ZtlSecureFuse((const __int32 *const )(a2 + 48), *(_DWORD *)(a2 + 56));
result = (double)_calc_base_damage(v36, v35, 0, a3, 1.5);
break;
default:
result = 0.0;
break;
}
}
else
{
v6 = _ZtlSecureFuse((const __int32 *const )(a2 + 48), *(_DWORD *)(a2 + 56));
v7 = _ZtlSecureFuse((const __int32 *const )(a2 + 36), *(_DWORD *)(a2 + 44));
result = (double)_calc_base_damage(v7, v6, 0, a3, 1.2);
}
return result;
}
Bookmarks