// // cocos2d::extension::CCScale9Sprite::setOpacity from 0x180010260 to 0x180010312 (178 bytes) // // 5 xrefs: // > @ 0x180027500 // > @ 0x18002e550 // > @ 0x18002e5a8 // > @ 0x18002fdf8 // > @ 0x18004a0ec // // 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::setOpacity( cocos2d::extension::CCScale9Sprite *this, unsigned __int8 a2) { __int64 v4; // rcx __int64 v5; // rax unsigned int *v6; // rbx __int64 v7; // rax _QWORD *v8; // rbx _QWORD *i; // rdi __int64 v10; // rax v4 = *((_QWORD *)this + 15); if ( v4 ) { *((_BYTE *)this + 201) = a2; v5 = (*(__int64 (__fastcall **)(__int64))(*(_QWORD *)v4 + 464LL))(v4); if ( v5 ) { v6 = *(unsigned int **)(v5 + 56); v7 = *v6; if ( (_DWORD)v7 ) { v8 = *((_QWORD **)v6 + 2); for ( i = &v8[v7 - 1]; v8 <= i; ++v8 ) { if ( !*v8 ) break; v10 = _RTDynamicCast( *v8, 0, &cocos2d::CCObject `RTTI Type Descriptor', &cocos2d::CCRGBAProtocol `RTTI Type Descriptor', 0); if ( v10 ) (*(void (__fastcall **)(__int64, _QWORD))(*(_QWORD *)v10 + 40LL))(v10, a2); } } } } }