REDIVIVUS

Proposals / #1580

Mac ListBox_GetItemByIndex: void* __fastcc (void* pListBox ECX, int32_t nIndex EDX)

checked · by KierTaylor · submitted 2026-11-08

ECX = the list box data (NULL gives 0; +4 item count, +0x24 first item, +0x28 the item used for index -1). EDX = the index (< -1 or >= count gives 0). It walks the singly linked item list nIndex times (MOV EAX,[EAX]; DEC EDX) and returns the item in EAX. There are no stack args. The caller ListBox_FindString 0x00028496 sets EDX = the index and keeps EAX (MOV EBX,EAX).

Changes 1, applied together

  1. Set prototype mac 0x000283fc

    signatureundefined ListBox_GetItemByIndex(void)→void* ListBox_GetItemByIndex(void* pListBox, int32_t nIndex)
    conventionunknown→__fastcc