// // cocos2d::extension::CCControlSlider::initWithSprites from 0x18000a5a0 to 0x18000a883 (739 bytes) // // 5 xrefs: // > @ 0x180025f20 // > @ 0x18002de18 // > @ 0x18002de28 // > @ 0x18002fdf8 // > @ 0x180049b4c // // 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 // char __fastcall cocos2d::extension::CCControlSlider::initWithSprites( cocos2d::extension::CCControlSlider *this, struct cocos2d::CCSprite *a2, struct cocos2d::CCSprite *a3, struct cocos2d::CCSprite *a4) { __int64 v8; // rdx cocos2d::CCObject *v9; // rcx cocos2d::CCObject *v10; // rcx cocos2d::CCObject *v11; // rcx __int64 v12; // rbx __int64 v13; // rax __int64 v14; // rbx __int64 v15; // rax __int64 v16; // rbx __int64 v17; // rax __int64 v18; // rbx float v19; // xmm6_4 float *v20; // rax __int64 v21; // rax __int64 v22; // rbx __int64 v23; // rax __int64 v24; // rbx __int64 v25; // rax __int64 v26; // rax __int64 v27; // rbx __int64 v28; // rax __int64 v29; // rax __int64 v30; // rax _BYTE v32[16]; // [rsp+20h] [rbp-58h] BYREF _BYTE v33[8]; // [rsp+30h] [rbp-48h] BYREF float v34; // [rsp+38h] [rbp-40h] float v35; // [rsp+3Ch] [rbp-3Ch] _BYTE v36[16]; // [rsp+40h] [rbp-38h] BYREF if ( !cocos2d::extension::CCControl::init(this) ) return 0; (*(void (__fastcall **)(cocos2d::extension::CCControlSlider *, _QWORD))(*(_QWORD *)this + 416LL))(this, 0); LOBYTE(v8) = 1; (*(void (__fastcall **)(cocos2d::extension::CCControlSlider *, __int64))(*(_QWORD *)this + 904LL))(this, v8); if ( *((struct cocos2d::CCSprite **)this + 64) != a2 ) { if ( a2 ) cocos2d::CCObject::retain(a2); v9 = *((cocos2d::CCObject **)this + 64); if ( v9 ) cocos2d::CCObject::release(v9); *((_QWORD *)this + 64) = a2; } if ( *((struct cocos2d::CCSprite **)this + 63) != a3 ) { if ( a3 ) cocos2d::CCObject::retain(a3); v10 = *((cocos2d::CCObject **)this + 63); if ( v10 ) cocos2d::CCObject::release(v10); *((_QWORD *)this + 63) = a3; } if ( *((struct cocos2d::CCSprite **)this + 62) != a4 ) { if ( a4 ) cocos2d::CCObject::retain(a4); v11 = *((cocos2d::CCObject **)this + 62); if ( v11 ) cocos2d::CCObject::release(v11); *((_QWORD *)this + 62) = a4; } v12 = cocos2d::CCNode::boundingBox(a4, v32); v13 = cocos2d::CCNode::boundingBox(a2, v36); cocos2d::extension::CCControlUtils::CCRectUnion(v33, v13, v12); v14 = *(_QWORD *)this; v15 = cocos2d::CCSize::CCSize((cocos2d::CCSize *)v32, v34, v35); (*(void (__fastcall **)(cocos2d::extension::CCControlSlider *, __int64))(v14 + 296))(this, v15); v16 = **((_QWORD **)this + 64); cocos2d::CCPoint::CCPoint((cocos2d::CCPoint *)v32, 0.5, 0.5); (*(void (__fastcall **)(_QWORD, __int64))(v16 + 272))(*((_QWORD *)this + 64), v17); v18 = **((_QWORD **)this + 64); v19 = *(float *)((*(__int64 (__fastcall **)(cocos2d::extension::CCControlSlider *))(*(_QWORD *)this + 304LL))(this) + 4); v20 = (float *)(*(__int64 (__fastcall **)(cocos2d::extension::CCControlSlider *))(*(_QWORD *)this + 304LL))(this); cocos2d::CCPoint::CCPoint((cocos2d::CCPoint *)v32, *v20 * 0.5, v19 * 0.5); (*(void (__fastcall **)(_QWORD, __int64))(v18 + 184))(*((_QWORD *)this + 64), v21); (*(void (__fastcall **)(cocos2d::extension::CCControlSlider *, _QWORD))(*(_QWORD *)this + 448LL))( this, *((_QWORD *)this + 64)); v22 = **((_QWORD **)this + 63); cocos2d::CCPoint::CCPoint((cocos2d::CCPoint *)v32, 0.0, 0.5); (*(void (__fastcall **)(_QWORD, __int64))(v22 + 272))(*((_QWORD *)this + 63), v23); v24 = **((_QWORD **)this + 63); v25 = (*(__int64 (__fastcall **)(cocos2d::extension::CCControlSlider *))(*(_QWORD *)this + 304LL))(this); cocos2d::CCPoint::CCPoint((cocos2d::CCPoint *)v32, 0.0, *(float *)(v25 + 4) * 0.5); (*(void (__fastcall **)(_QWORD, __int64))(v24 + 184))(*((_QWORD *)this + 63), v26); (*(void (__fastcall **)(cocos2d::extension::CCControlSlider *, _QWORD))(*(_QWORD *)this + 448LL))( this, *((_QWORD *)this + 63)); v27 = **((_QWORD **)this + 62); v28 = (*(__int64 (__fastcall **)(cocos2d::extension::CCControlSlider *))(*(_QWORD *)this + 304LL))(this); cocos2d::CCPoint::CCPoint((cocos2d::CCPoint *)v32, 0.0, *(float *)(v28 + 4) * 0.5); (*(void (__fastcall **)(_QWORD, __int64))(v27 + 184))(*((_QWORD *)this + 62), v29); (*(void (__fastcall **)(cocos2d::extension::CCControlSlider *, _QWORD))(*(_QWORD *)this + 448LL))( this, *((_QWORD *)this + 62)); v30 = *(_QWORD *)this; *((_DWORD *)this + 119) = 0; *((_DWORD *)this + 120) = 1065353216; (*(void (__fastcall **)(cocos2d::extension::CCControlSlider *))(v30 + 1112))(this); return 1; }