// // cocos2d::extension::CCScrollView::unregisterScriptHandler from 0x1800142d0 to 0x18001437a (170 bytes) // // 14 xrefs: // > cocos2d::extension::CCScrollView::~CCScrollView @ 0x180012300 // > cocos2d::extension::CCScrollView::~CCScrollView @ 0x18001230d // > cocos2d::extension::CCScrollView::registerScriptHandler @ 0x1800141e5 // > cocos2d::extension::CCTableView::unregisterAllScriptHandler @ 0x18001673b // > cocos2d::extension::CCTableView::unregisterAllScriptHandler @ 0x180016748 // > cocos2d::extension::CCTableView::unregisterAllScriptHandler @ 0x180016755 // > cocos2d::extension::CCTableView::unregisterAllScriptHandler @ 0x180016762 // > cocos2d::extension::CCTableView::unregisterAllScriptHandler @ 0x18001676f // > cocos2d::extension::CCTableView::unregisterAllScriptHandler @ 0x18001677c // > cocos2d::extension::CCTableView::unregisterAllScriptHandler @ 0x180016789 // > cocos2d::extension::CCTableView::unregisterAllScriptHandler @ 0x180016796 // > cocos2d::extension::CCTableView::unregisterAllScriptHandler @ 0x1800167a8 // > @ 0x18002fdf8 // > @ 0x18004a5fc // // 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::unregisterScriptHandler( cocos2d::extension::CCScrollView *this, int a2) { _QWORD *v2; // r9 __int64 *v3; // r8 __int64 *v4; // rax __int64 *v5; // rcx __int64 **v6; // r8 __int64 *v7; // rdx __int64 *i; // rcx __int64 *j; // r8 __int64 *v10; // rax v2 = (_QWORD *)((char *)this + 552); v3 = *((__int64 **)this + 69); v4 = v3; v5 = (__int64 *)v3[1]; while ( !*((_BYTE *)v5 + 25) ) { if ( *((_DWORD *)v5 + 7) >= a2 ) { v4 = v5; v5 = (__int64 *)*v5; } else { v5 = (__int64 *)v5[2]; } } if ( !*((_BYTE *)v4 + 25) && a2 >= *((_DWORD *)v4 + 7) && v3 != v4 ) { v6 = (__int64 **)v4[2]; v7 = v4; if ( *((_BYTE *)v6 + 25) ) { for ( i = (__int64 *)v4[1]; !*((_BYTE *)i + 25); i = (__int64 *)i[1] ) { if ( v4 != (__int64 *)i[2] ) break; v4 = i; } } else { for ( j = *v6; !*((_BYTE *)j + 25); j = (__int64 *)*j ) ; } v10 = sub_180005000(v2, v7); j_j_free(v10); } }