// // cocos2d::extension::CCControl::addHandleOfControlEvent from 0x180004bb0 to 0x180004c9a (234 bytes) // // 2 xrefs: // > @ 0x18002fdf8 // > @ 0x1800494c8 // // 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 // // Hidden C++ exception states: #wind=1 void __fastcall cocos2d::extension::CCControl::addHandleOfControlEvent( cocos2d::extension::CCControl *this, int a2, int a3) { char *v5; // rdi __int64 v6; // rsi __int64 v7; // rax __int64 v8; // rcx _DWORD *v9; // rax __int128 v10; // [rsp+20h] [rbp-48h] BYREF __int128 v11; // [rsp+30h] [rbp-38h] v5 = (char *)this + 456; v6 = *((_QWORD *)this + 57); v7 = *(_QWORD *)(v6 + 8); *(_QWORD *)&v11 = v7; DWORD2(v11) = 0; v8 = v6; while ( !*(_BYTE *)(v7 + 25) ) { *(_QWORD *)&v11 = v7; if ( *(_DWORD *)(v7 + 28) >= a3 ) { DWORD2(v11) = 1; v8 = v7; v7 = *(_QWORD *)v7; } else { DWORD2(v11) = 0; v7 = *(_QWORD *)(v7 + 16); } } if ( *(_BYTE *)(v8 + 25) || a3 < *(_DWORD *)(v8 + 28) ) { if ( *((_QWORD *)v5 + 1) == 0x666666666666666LL ) sub_1800054D0(); v9 = operator new(0x28u); v9[7] = a3; v9[8] = 0; *(_QWORD *)v9 = v6; *((_QWORD *)v9 + 1) = v6; *((_QWORD *)v9 + 2) = v6; *((_WORD *)v9 + 12) = 0; v10 = v11; v8 = sub_180004DA0(v5, &v10, v9); } *(_DWORD *)(v8 + 32) = a2; }