{"type": "func", "start": 6442476976, "end": 6442477138, "name": "cocos2d::extension::CCControlButton::setTitleColorForState", "pseudocode": "// \n// cocos2d::extension::CCControlButton::setTitleColorForState from 0x1800065b0 to 0x180006652 (162 bytes)\n// \n// 4 xrefs:\n// > <???> @ 0x1800241b0\n// > <???> @ 0x180027ff8\n// > <???> @ 0x18002fdf8\n// > <???> @ 0x180049654\n// \n// This function is hookable on this platform!\n// \n// Using BromaIDA 8.0.0 @ https://github.com/Stazzical/BromaIDA\n// Using bindings at commit ba9f177b at Thu Jul 16 22:52:06 2026 from https://github.com/geode-sdk/bindings\n// \n\n// Hidden C++ exception states: #wind=1\nvoid __fastcall cocos2d::extension::CCControlButton::setTitleColorForState(__int64 a1, __int64 a2, unsigned int a3)\n{\n  cocos2d::CCObject *v6; // [rsp+40h] [rbp+8h]\n\n  cocos2d::CCDictionary::removeObjectForKey(*(cocos2d::CCDictionary **)(a1 + 536), a3);\n  v6 = (cocos2d::CCObject *)operator new(0x40u);\n  cocos2d::CCObject::CCObject(v6);\n  *(_QWORD *)v6 = &cocos2d::extension::CCColor3bObject::`vftable';\n  *((_WORD *)v6 + 28) = *(_WORD *)a2;\n  *((_BYTE *)v6 + 58) = *(_BYTE *)(a2 + 2);\n  cocos2d::CCObject::autorelease(v6);\n  cocos2d::CCDictionary::setObject(*(cocos2d::CCDictionary **)(a1 + 536), v6, a3);\n  if ( *(_DWORD *)(a1 + 436) == a3 )\n    (*(void (__fastcall **)(__int64))(*(_QWORD *)a1 + 1064LL))(a1);\n}", "assembly": "; \n; cocos2d::extension::CCControlButton::setTitleColorForState from 0x1800065b0 to 0x180006652 (162 bytes)\n; \n; 4 xrefs:\n; > <???> @ 0x1800241b0\n; > <???> @ 0x180027ff8\n; > <???> @ 0x18002fdf8\n; > <???> @ 0x180049654\n; \n; This function is hookable on this platform!\n; \n; Using BromaIDA 8.0.0 @ https:;github.com/Stazzical/BromaIDA\n; Using bindings at commit ba9f177b at Thu Jul 16 22:52:06 2026 from https:;github.com/geode-sdk/bindings\n; \n\nmov     [rsp+arg_8], rbx                                               ; +0x0, 0x1800065b0\nmov     [rsp+arg_10], rbp                                              ; +0x5, 0x1800065b5\npush    rsi                                                            ; +0xa, 0x1800065ba\npush    rdi                                                            ; +0xb, 0x1800065bb\npush    r14                                                            ; +0xc, 0x1800065bc\nsub     rsp, 20h                                                       ; +0xe, 0x1800065be\nmov     ebp, r8d                                                       ; +0x12, 0x1800065c2\nmov     rdi, rdx                                                       ; +0x15, 0x1800065c5\nmov     r14, rcx                                                       ; +0x18, 0x1800065c8\nmov     edx, r8d                                                       ; +0x1b, 0x1800065cb\nmov     rcx, [rcx+218h]                                                ; +0x1e, 0x1800065ce\ncall    cs:?removeObjectForKey@CCDictionary@cocos2d@@QEAAX_J@Z; cocos2d::CCDictionary::removeObjectForKey(__int64) ; +0x25, 0x1800065d5\nmov     ecx, 40h ; '@'; Size                                           ; +0x2b, 0x1800065db\ncall    ??2@YAPEAX_K@Z; operator new(unsigned __int64)                 ; +0x30, 0x1800065e0\nmov     rbx, rax                                                       ; +0x35, 0x1800065e5\nmov     [rsp+38h+arg_0], rax                                           ; +0x38, 0x1800065e8\nmov     rcx, rax                                                       ; +0x3d, 0x1800065ed\ncall    cs:??0CCObject@cocos2d@@QEAA@XZ; cocos2d::CCObject::CCObject(void) ; +0x40, 0x1800065f0\nlea     rax, ??_7CCColor3bObject@extension@cocos2d@@6B@; const cocos2d::extension::CCColor3bObject::`vftable' ; +0x46, 0x1800065f6\nmov     [rbx], rax                                                     ; +0x4d, 0x1800065fd\nmovzx   ecx, word ptr [rdi]                                            ; +0x50, 0x180006600\nmov     [rbx+38h], cx                                                  ; +0x53, 0x180006603\nmovzx   ecx, byte ptr [rdi+2]                                          ; +0x57, 0x180006607\nmov     [rbx+3Ah], cl                                                  ; +0x5b, 0x18000660b\nmov     rcx, rbx                                                       ; +0x5e, 0x18000660e\ncall    cs:?autorelease@CCObject@cocos2d@@QEAAPEAV12@XZ; cocos2d::CCObject::autorelease(void) ; +0x61, 0x180006611\nmov     r8d, ebp                                                       ; +0x67, 0x180006617\nmov     rdx, rbx                                                       ; +0x6a, 0x18000661a\nmov     rcx, [r14+218h]                                                ; +0x6d, 0x18000661d\ncall    cs:?setObject@CCDictionary@cocos2d@@QEAAXPEAVCCObject@2@_J@Z; cocos2d::CCDictionary::setObject(cocos2d::CCObject *,__int64) ; +0x74, 0x180006624\ncmp     [r14+1B4h], ebp                                                ; +0x7a, 0x18000662a\njnz     short loc_18000663F                                            ; +0x81, 0x180006631\nmov     rax, [r14]                                                     ; +0x83, 0x180006633\nmov     rcx, r14                                                       ; +0x86, 0x180006636\ncall    qword ptr [rax+428h]                                           ; +0x89, 0x180006639\nmov     rbx, [rsp+38h+arg_8]                                           ; +0x8f, 0x18000663f\nmov     rbp, [rsp+38h+arg_10]                                          ; +0x94, 0x180006644\nadd     rsp, 20h                                                       ; +0x99, 0x180006649\npop     r14                                                            ; +0x9d, 0x18000664d\npop     rdi                                                            ; +0x9f, 0x18000664f\npop     rsi                                                            ; +0xa0, 0x180006650\nretn                                                                   ; +0xa1, 0x180006651", "xrefs": ["<???> @ 0x1800241b0", "<???> @ 0x180027ff8", "<???> @ 0x18002fdf8", "<???> @ 0x180049654"], "is_objc": false, "is_arm32": false, "is_arm64": false, "bida_info": "8.0.0 @ https://github.com/Stazzical/BromaIDA", "bindings_info": "commit ba9f177b at Thu Jul 16 22:52:06 2026 from https://github.com/geode-sdk/bindings"}