*hopes the thread does not mysteriously close again*
You don't want offsets and you don't want to call the VM yet you mention 'structures'? Structures and offsets go hand in hand.
Anyway, because I'm insanely bored:
Code:
Object:
.text:00598210 sub_598210 proc near ; CODE XREF: sub_6A0990+F8p
.text:00598210 ; sub_6B64F0+75p
.text:00598210 ; DATA XREF: ...
.text:00598210 mov eax, [ecx+1A4h]
.text:00598216 test eax, eax
.text:00598218 jz short loc_598221
.text:0059821A mov eax, [eax+88h]
.text:00598220 retn
==> pObjectName = [[base + 0x1A4] + 0x88]
Unit:
.text:005ADBE5 loc_5ADBE5: ; CODE XREF: sub_5AD970+1B7j
.text:005ADBE5 mov esi, [esi+968h]
.text:005ADBEB test esi, esi
.text:005ADBED jz short loc_5ADBBD
.text:005ADBEF mov eax, [esi+54h]
.text:005ADBF2 pop edi
.text:005ADBF3 pop esi
.text:005ADBF4 pop ebx
.text:005ADBF5 mov esp, ebp
.text:005ADBF7 pop ebp
.text:005ADBF8 retn 8
.text:005ADBF8 sub_5AD970 endp
==> pUnitName = [[base + 0x968] + 0x54]
Do you like 0x968 more? If you want the playernames, enjoy the cache.