int regionId = 25000;
float X = 995.0;
float Z = 13.0;
int iVar10 = *(int *)((int)this + 0x97e8); //m_StateX
float fVar1 = *(float *)((int)this + 0x97f8); //m_StateY
int iVar2 = *(int *)((int)this + 0x97f4); //m_ViewWidth
float fVar3 = *(float *)((int)this + 0x97fc); //m_ViewHeight
int iVar11 = reinterpret_cast<int(__thiscall *) (int*)>(0x0096f4e0)(*(int **)((int)this + 0x9820));
//renderPosX
fVar1 = *(float *)((int)this + 0x95cc) +
((X / 10.0 + (float)(((regionId & 0xff) - 0x87) * 0xc0)) - (float)iVar10) /
fVar1;
//renderPosY
fVar3 = *(float *)((int)this + 0x95d0) +
((float)*(int *)(iVar11 + 0x54) -
((Z / 10.0 + (float)(((regionId >> 8) - 0x5c) * 0xc0)) - (float)iVar2) / fVar3);
/////////////////////////////////////////////////////////////////////////////////////////////////////////
render 128 * 128 square
/////////////////////////////////////////////////////////////////////////////////////////////////////////
D3DVECTOR dataOut[8];
dataOut[0].x = fVar1;
dataOut[0].y = fVar3;
dataOut[2].y = dataOut[0].y;
dataOut[2].x = dataOut[0].x + 128.0f;
dataOut[4].y = fVar3 + 128.0f;
dataOut[4].x = dataOut[0].x + 128.0f;
dataOut[6].x = dataOut[0].x;
dataOut[6].y = dataOut[4].y;
g_RStateMgr.m_pDevice->SetFVF(260);
g_RStateMgr.m_pDevice->SetTexture(0,(IDirect3DBaseTexture9 *) Fun_CacheTexture_Create(
"lol\\1911.ddj"));
g_RStateMgr.m_pDevice->DrawPrimitiveUP(D3DPT_TRIANGLEFAN,2,&dataOut,0x18);