// // cocos2d::extension::CCScrollView::visit from 0x180013810 to 0x180013980 (368 bytes) // // 6 xrefs: // > @ 0x180028608 // > @ 0x180028b80 // > @ 0x18002ea78 // > @ 0x18002eaac // > @ 0x18002fdf8 // > @ 0x18004a53c // // 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 // void __fastcall cocos2d::extension::CCScrollView::visit(cocos2d::extension::CCScrollView *this) { cocos2d::CCGridBase *v2; // rcx __int64 v3; // rsi __int64 v4; // rsi __int64 i; // rbx __int64 v6; // r14 __int64 v7; // rcx __int64 v8; // rax cocos2d::CCGridBase *v9; // rcx if ( (*(unsigned __int8 (__fastcall **)(cocos2d::extension::CCScrollView *))(*(_QWORD *)this + 328LL))(this) ) { kmGLPushMatrix(); v2 = *((cocos2d::CCGridBase **)this + 25); if ( v2 && *((_BYTE *)v2 + 56) ) { cocos2d::CCGridBase::beforeDraw(v2); cocos2d::CCNode::transformAncestors(this); } cocos2d::CCNode::transform(this); cocos2d::extension::CCScrollView::beforeDraw(this); v3 = *((_QWORD *)this + 26); if ( v3 ) { v4 = *(_QWORD *)(v3 + 56); for ( i = 0; (unsigned int)i < *(_DWORD *)v4; i = (unsigned int)(i + 1) ) { v6 = *(_QWORD *)(*(_QWORD *)(v4 + 16) + 8 * i); if ( (*(int (__fastcall **)(__int64))(*(_QWORD *)v6 + 96LL))(v6) >= 0 ) break; (*(void (__fastcall **)(__int64))(*(_QWORD *)v6 + 728LL))(v6); } (*(void (__fastcall **)(cocos2d::extension::CCScrollView *))(*(_QWORD *)this + 720LL))(this); for ( ; (unsigned int)i < *(_DWORD *)v4; i = (unsigned int)(i + 1) ) { v7 = *(_QWORD *)(*(_QWORD *)(v4 + 16) + 8 * i); (*(void (__fastcall **)(__int64))(*(_QWORD *)v7 + 728LL))(v7); } } else { (*(void (__fastcall **)(cocos2d::extension::CCScrollView *))(*(_QWORD *)this + 720LL))(this); } if ( *((_BYTE *)this + 477) ) { if ( *((_BYTE *)this + 544) ) { v8 = cocos2d::CCEGLView::sharedOpenGLView(); (*(void (__fastcall **)(__int64))(*(_QWORD *)v8 + 104LL))(v8); } else { glDisable(0xC11u); } } v9 = *((cocos2d::CCGridBase **)this + 25); if ( v9 ) { if ( *((_BYTE *)v9 + 56) ) cocos2d::CCGridBase::afterDraw(v9, this); } kmGLPopMatrix(); } }