// // cocos2d::extension::CCHttpClient::dispatchResponseCallbacks from 0x180018220 to 0x180018308 (232 bytes) // // 4 xrefs: // > cocos2d::extension::CCHttpClient::CCHttpClient @ 0x1800176db // > cocos2d::extension::CCHttpClient::~CCHttpClient @ 0x18001778c // > @ 0x18002fdf8 // > @ 0x18004aab8 // // 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::CCHttpClient::dispatchResponseCallbacks( cocos2d::extension::CCHttpClient *this, float a2) { struct cocos2d::CCObject *v3; // rbx __int64 v4; // rax __int64 v5; // rcx void (__fastcall *v6)(__int64, cocos2d::extension::CCHttpClient *, struct cocos2d::CCObject *); // r9 v3 = nullptr; if ( Mtx_lock((_Mtx_t)&unk_180048630) ) { std::_Throw_Cpp_error(5); __debugbreak(); } if ( dword_18004867C == 0x7FFFFFFF ) { dword_18004867C = 2147483646; std::_Throw_Cpp_error(6); } if ( cocos2d::CCArray::count((cocos2d::CCArray *)qword_1800486C8) ) { v3 = cocos2d::CCArray::objectAtIndex((cocos2d::CCArray *)qword_1800486C8, 0); cocos2d::CCObject::retain(v3); cocos2d::CCArray::removeObjectAtIndex((cocos2d::CCArray *)qword_1800486C8, 0, 1); } Mtx_unlock((_Mtx_t)&unk_180048630); if ( v3 ) { v4 = *((_QWORD *)v3 + 7); if ( v4 ) { v5 = *(_QWORD *)(v4 + 152); v6 = *(void (__fastcall **)(__int64, cocos2d::extension::CCHttpClient *, struct cocos2d::CCObject *))(v4 + 160); if ( v5 ) { if ( v6 ) v6(v5, this, v3); } } cocos2d::CCObject::release(v3); } }