// // cocos2d::extension::CCTableView::reloadData from 0x180015090 to 0x180015228 (408 bytes) // // 3 xrefs: // > cocos2d::extension::CCTableView::setVerticalFillOrder @ 0x180015070 // > @ 0x18002fdf8 // > @ 0x18004a74c // // This function is hookable on this platform! // // Using BromaIDA 8.0.0 @ https://github.com/Stazzical/BromaIDA // Using bindings at commit ba9f177b at Thu Jul 16 22:52:06 2026 from https://github.com/geode-sdk/bindings // // Hidden C++ exception states: #wind=1 void __fastcall cocos2d::extension::CCTableView::reloadData(cocos2d::extension::CCTableView *this) { __int64 v2; // rax unsigned int *v3; // r14 __int64 v4; // rax struct cocos2d::CCObject **v5; // r14 struct cocos2d::CCObject **i; // rbp struct cocos2d::CCObject *v7; // rbx __int64 v8; // rcx __int64 v9; // rdi __int64 v10; // r8 _QWORD *v11; // rdi _QWORD *v12; // r14 _QWORD *v13; // rbx void *v14; // rcx cocos2d::CCArray *v15; // [rsp+40h] [rbp+8h] *((_DWORD *)this + 164) = -1; v2 = *((_QWORD *)this + 78); if ( v2 ) { v3 = *(unsigned int **)(v2 + 56); v4 = *v3; if ( (_DWORD)v4 ) { v5 = *((struct cocos2d::CCObject ***)v3 + 2); for ( i = &v5[v4 - 1]; v5 <= i; ++v5 ) { v7 = *v5; if ( !*v5 ) break; v8 = *((_QWORD *)this + 81); if ( v8 ) (*(void (__fastcall **)(__int64, cocos2d::extension::CCTableView *, struct cocos2d::CCObject *))(*(_QWORD *)v8 + 48LL))( v8, this, *v5); cocos2d::CCArray::addObject(*((cocos2d::CCArray **)this + 79), v7); *((_DWORD *)v7 + 82) = -1; v9 = *((_QWORD *)this + 56); if ( (*(__int64 (__fastcall **)(struct cocos2d::CCObject *))(*(_QWORD *)v7 + 488LL))(v7) == v9 ) { LOBYTE(v10) = 1; (*(void (__fastcall **)(_QWORD, struct cocos2d::CCObject *, __int64))(**((_QWORD **)this + 56) + 520LL))( *((_QWORD *)this + 56), v7, v10); } } } } v11 = *((_QWORD **)this + 74); v12 = (_QWORD *)*v11; v13 = *(_QWORD **)(*v11 + 8LL); while ( !*((_BYTE *)v13 + 25) ) { sub_1800169B0(v11, v11, v13[2]); v14 = v13; v13 = (_QWORD *)*v13; j_j_free(v14); } v12[1] = v12; *v12 = v12; v12[2] = v12; v11[1] = 0; cocos2d::CCObject::release(*((cocos2d::CCObject **)this + 78)); v15 = (cocos2d::CCArray *)operator new(0x40u); cocos2d::CCArray::CCArray(v15); *(_QWORD *)v15 = &cocos2d::extension::CCArrayForObjectSorting::`vftable'; *((_QWORD *)this + 78) = v15; cocos2d::extension::CCTableView::_updateCellPositions(this); cocos2d::extension::CCTableView::_updateContentSize(this); if ( (*(unsigned int (__fastcall **)(_QWORD, cocos2d::extension::CCTableView *))(**((_QWORD **)this + 80) + 32LL))( *((_QWORD *)this + 80), this) ) { (*(void (__fastcall **)(char *, cocos2d::extension::CCTableView *))(*((_QWORD *)this + 71) + 8LL))( (char *)this + 568, this); } }