tanks
i trasladate this code for mu s8 if any need.
int __cdecl sub_55DE8F(int a1, int a2)
{
int result; // eax
char* v3; // eax
char* v4; // eax
char* v5; // eax
char* v6; // eax
result = *(unsigned __int8*)(a2 + 40);
if (result == 4)
{
result = rand() % 2;
if (!result)
{
result = *(DWORD*)(a2 + 64);
switch (result)
{
case 1077:
result = sub_4E2028(0x0118EDF8);
if (!(BYTE)result)
{
v3 = (char*)sub_436D31(0x08499DE0, 1974);
result = sub_59ECB5((char*)(a1 + 56), v3, a1, 0, -1);
}
break;
case 1083:
v4 = (char*)sub_436D31(0x08499DE0, 1975);
result = sub_59ECB5((char*)(a1 + 56), v4, a1, 0, -1);
break;
case 1085:
v5 = (char*)sub_436D31(0x08499DE0, 1976);
result = sub_59ECB5((char*)(a1 + 56), v5, a1, 0, -1);
break;
case 1202:
result = *(__int16*)(a1 + 132);
if (result == 257)//elf solider
{
v6 = (char*)sub_436D31(0x08499DE0, 1827);// 1827 messaje in Text_eng
result = sub_59ECB5((char*)(a1 + 56), v6, a1, 0, -1);
}
if (result == "you monster index")//add you monster index of monster.txt (server--- data---monster)
{
v6 = (char*)sub_436D31(0x08499DE0, "add numer of text_en Text_eng");
result = sub_59ECB5((char*)(a1 + 56), v6, a1, 0, -1);
}
if (result < 2000)
{
result = sub_59ECB5((char*)(a1 + 56), "", a1, 0, -1);
}
break;
}
}
}
return result;
}
SetCompleteHook(0xE9, 0x55DE8F, sub_55DE8F);
#define sub_4E2028 ((BOOL(__cdecl*)(int a1)) 0x4E2028)
#define sub_59ECB5 ((int(__cdecl*)(char* , char*, int, int, int)) 0x59ECB5)
#define sub_436D31 ((int(__thiscall*)( int This, int a2)) 0x436D31)