// // cocos2d::extension::CCScale9Sprite::setColor from 0x180010190 to 0x180010247 (183 bytes) // // 5 xrefs: // > @ 0x1800274d8 // > @ 0x18002e4e4 // > @ 0x18002e53c // > @ 0x18002fdf8 // > @ 0x18004a098 // // 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::CCScale9Sprite::setColor( cocos2d::extension::CCScale9Sprite *this, const struct cocos2d::_ccColor3B *a2) { __int64 v3; // rdx __int64 v4; // rax unsigned int *v5; // rbx __int64 v6; // rax _QWORD *v7; // rbx _QWORD *i; // rdi void (__fastcall ***v9)(_QWORD, const struct cocos2d::_ccColor3B *); // rax v3 = *((_QWORD *)this + 15); if ( v3 ) { *((_WORD *)this + 101) = *(_WORD *)a2; *((_BYTE *)this + 204) = *((_BYTE *)a2 + 2); v4 = (*(__int64 (__fastcall **)(__int64))(*(_QWORD *)v3 + 464LL))(v3); if ( v4 ) { v5 = *(unsigned int **)(v4 + 56); v6 = *v5; if ( (_DWORD)v6 ) { v7 = *((_QWORD **)v5 + 2); for ( i = &v7[v6 - 1]; v7 <= i; ++v7 ) { if ( !*v7 ) break; v9 = (void (__fastcall ***)(_QWORD, const struct cocos2d::_ccColor3B *))_RTDynamicCast( *v7, 0, &cocos2d::CCObject `RTTI Type Descriptor', &cocos2d::CCRGBAProtocol `RTTI Type Descriptor', 0); if ( v9 ) (**v9)(v9, a2); } } } } }