// // cocos2d::extension::CCControlButton::setPreferredSize from 0x180006250 to 0x180006328 (216 bytes) // // 6 xrefs: // > @ 0x180024150 // > @ 0x180027f98 // > @ 0x18002d7f4 // > @ 0x18002d82c // > @ 0x18002fdf8 // > @ 0x1800495d0 // // 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 // __int64 __fastcall cocos2d::extension::CCControlButton::setPreferredSize(__int64 a1, float *a2) { __int64 v4; // rbx __int64 v5; // rbx __int64 i; // rsi __int64 *v7; // rbx __int64 v8; // rdi __int64 v9; // rax char v11; // [rsp+40h] [rbp+8h] BYREF if ( *a2 == 0.0 && a2[1] == 0.0 ) { *(_BYTE *)(a1 + 483) = 1; } else { v4 = *(_QWORD *)(a1 + 552); *(_BYTE *)(a1 + 483) = 0; if ( v4 ) { v5 = *(_QWORD *)(v4 + 56); if ( v5 ) { for ( i = *(_QWORD *)(v5 + 288); ; i = *(_QWORD *)(i + 288) ) { v7 = *(__int64 **)(v5 + 264); v8 = *v7; v9 = cocos2d::CCSize::CCSize((cocos2d::CCSize *)&v11, (const struct cocos2d::CCSize *)a2); (*(void (__fastcall **)(__int64 *, __int64))(v8 + 880))(v7, v9); v5 = i; if ( !i ) break; } } } } cocos2d::CCSize::operator=(a1 + 504, a2); return (*(__int64 (__fastcall **)(__int64))(*(_QWORD *)a1 + 1064LL))(a1); }