{"type": "func", "start": 6442568752, "end": 6442569189, "name": "cocos2d::extension::CCEditBox::CCEditBox", "pseudocode": "// \n// cocos2d::extension::CCEditBox::CCEditBox from 0x18001cc30 to 0x18001cde5 (437 bytes)\n// \n// 2 xrefs:\n// > <???> @ 0x18002fdf8\n// > <???> @ 0x18004af50\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=5\ncocos2d::extension::CCEditBox *__fastcall cocos2d::extension::CCEditBox::CCEditBox(\n        cocos2d::extension::CCEditBox *this,\n        const struct cocos2d::extension::CCEditBox *a2)\n{\n  cocos2d::extension::CCControlButton::CCControlButton(this, a2);\n  cocos2d::CCIMEDelegate::CCIMEDelegate(\n    (cocos2d::extension::CCEditBox *)((char *)this + 568),\n    (const struct cocos2d::extension::CCEditBox *)((char *)a2 + 568));\n  *(_QWORD *)this = &cocos2d::extension::CCEditBox::`vftable'{for `cocos2d::CCNode'};\n  *((_QWORD *)this + 40) = &cocos2d::extension::CCEditBox::`vftable'{for `cocos2d::CCTouchDelegate'};\n  *((_QWORD *)this + 41) = &cocos2d::extension::CCEditBox::`vftable'{for `cocos2d::CCAccelerometerDelegate'};\n  *((_QWORD *)this + 42) = &cocos2d::extension::CCEditBox::`vftable'{for `cocos2d::CCKeypadDelegate'};\n  *((_QWORD *)this + 43) = &cocos2d::extension::CCEditBox::`vftable'{for `cocos2d::CCKeyboardDelegate'};\n  *((_QWORD *)this + 44) = &cocos2d::extension::CCEditBox::`vftable'{for `cocos2d::CCMouseDelegate'};\n  *((_QWORD *)this + 51) = &cocos2d::extension::CCEditBox::`vftable'{for `cocos2d::extension::CCControlButton'};\n  *((_QWORD *)this + 71) = &cocos2d::extension::CCEditBox::`vftable'{for `cocos2d::CCIMEDelegate'};\n  *((_QWORD *)this + 72) = *((_QWORD *)a2 + 72);\n  *((_QWORD *)this + 73) = *((_QWORD *)a2 + 73);\n  *((_DWORD *)this + 148) = *((_DWORD *)a2 + 148);\n  *((_DWORD *)this + 149) = *((_DWORD *)a2 + 149);\n  *((_DWORD *)this + 150) = *((_DWORD *)a2 + 150);\n  sub_180003F50((__int64)this + 608, (__int64)a2 + 608);\n  sub_180003F50((__int64)this + 640, (__int64)a2 + 640);\n  sub_180003F50((__int64)this + 672, (__int64)a2 + 672);\n  sub_180003F50((__int64)this + 704, (__int64)a2 + 704);\n  *((_DWORD *)this + 184) = *((_DWORD *)a2 + 184);\n  *((_DWORD *)this + 185) = *((_DWORD *)a2 + 185);\n  *((_WORD *)this + 372) = *((_WORD *)a2 + 372);\n  *((_BYTE *)this + 746) = *((_BYTE *)a2 + 746);\n  *(_WORD *)((char *)this + 747) = *(_WORD *)((char *)a2 + 747);\n  *((_BYTE *)this + 749) = *((_BYTE *)a2 + 749);\n  *((_DWORD *)this + 188) = *((_DWORD *)a2 + 188);\n  *((_DWORD *)this + 189) = *((_DWORD *)a2 + 189);\n  *((_DWORD *)this + 190) = *((_DWORD *)a2 + 190);\n  return this;\n}", "assembly": "; \n; cocos2d::extension::CCEditBox::CCEditBox from 0x18001cc30 to 0x18001cde5 (437 bytes)\n; \n; 2 xrefs:\n; > <???> @ 0x18002fdf8\n; > <???> @ 0x18004af50\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, 0x18001cc30\nmov     [rsp+arg_10], rsi                                              ; +0x5, 0x18001cc35\nmov     [rsp+arg_0], rcx                                               ; +0xa, 0x18001cc3a\npush    rdi                                                            ; +0xf, 0x18001cc3f\nsub     rsp, 20h                                                       ; +0x10, 0x18001cc40\nmov     rdi, rdx                                                       ; +0x14, 0x18001cc44\nmov     rsi, rcx                                                       ; +0x17, 0x18001cc47\ncall    ??0CCControlButton@extension@cocos2d@@QEAA@AEBV012@@Z; cocos2d::extension::CCControlButton::CCControlButton(cocos2d::extension::CCControlButton const &) ; +0x1a, 0x18001cc4a\nnop                                                                    ; +0x1f, 0x18001cc4f\nlea     rdx, [rdi+238h]                                                ; +0x20, 0x18001cc50\nlea     rcx, [rsi+238h]                                                ; +0x27, 0x18001cc57\ncall    cs:??0CCIMEDelegate@cocos2d@@QEAA@AEBV01@@Z; cocos2d::CCIMEDelegate::CCIMEDelegate(cocos2d::CCIMEDelegate const &) ; +0x2e, 0x18001cc5e\nnop                                                                    ; +0x34, 0x18001cc64\nlea     rax, ??_7CCEditBox@extension@cocos2d@@6BCCNode@2@@; const cocos2d::extension::CCEditBox::`vftable'{for `cocos2d::CCNode'} ; +0x35, 0x18001cc65\nmov     [rsi], rax                                                     ; +0x3c, 0x18001cc6c\nlea     rax, ??_7CCEditBox@extension@cocos2d@@6BCCTouchDelegate@2@@; const cocos2d::extension::CCEditBox::`vftable'{for `cocos2d::CCTouchDelegate'} ; +0x3f, 0x18001cc6f\nmov     [rsi+140h], rax                                                ; +0x46, 0x18001cc76\nlea     rax, ??_7CCEditBox@extension@cocos2d@@6BCCAccelerometerDelegate@2@@; const cocos2d::extension::CCEditBox::`vftable'{for `cocos2d::CCAccelerometerDelegate'} ; +0x4d, 0x18001cc7d\nmov     [rsi+148h], rax                                                ; +0x54, 0x18001cc84\nlea     rax, ??_7CCEditBox@extension@cocos2d@@6BCCKeypadDelegate@2@@; const cocos2d::extension::CCEditBox::`vftable'{for `cocos2d::CCKeypadDelegate'} ; +0x5b, 0x18001cc8b\nmov     [rsi+150h], rax                                                ; +0x62, 0x18001cc92\nlea     rax, ??_7CCEditBox@extension@cocos2d@@6BCCKeyboardDelegate@2@@; const cocos2d::extension::CCEditBox::`vftable'{for `cocos2d::CCKeyboardDelegate'} ; +0x69, 0x18001cc99\nmov     [rsi+158h], rax                                                ; +0x70, 0x18001cca0\nlea     rax, ??_7CCEditBox@extension@cocos2d@@6BCCMouseDelegate@2@@; const cocos2d::extension::CCEditBox::`vftable'{for `cocos2d::CCMouseDelegate'} ; +0x77, 0x18001cca7\nmov     [rsi+160h], rax                                                ; +0x7e, 0x18001ccae\nlea     rax, ??_7CCEditBox@extension@cocos2d@@6BCCControlButton@12@@; const cocos2d::extension::CCEditBox::`vftable'{for `cocos2d::extension::CCControlButton'} ; +0x85, 0x18001ccb5\nmov     [rsi+198h], rax                                                ; +0x8c, 0x18001ccbc\nlea     rax, ??_7CCEditBox@extension@cocos2d@@6BCCIMEDelegate@2@@; const cocos2d::extension::CCEditBox::`vftable'{for `cocos2d::CCIMEDelegate'} ; +0x93, 0x18001ccc3\nmov     [rsi+238h], rax                                                ; +0x9a, 0x18001ccca\nmov     rax, [rdi+240h]                                                ; +0xa1, 0x18001ccd1\nmov     [rsi+240h], rax                                                ; +0xa8, 0x18001ccd8\nmov     rax, [rdi+248h]                                                ; +0xaf, 0x18001ccdf\nmov     [rsi+248h], rax                                                ; +0xb6, 0x18001cce6\nmov     eax, [rdi+250h]                                                ; +0xbd, 0x18001cced\nmov     [rsi+250h], eax                                                ; +0xc3, 0x18001ccf3\nmov     eax, [rdi+254h]                                                ; +0xc9, 0x18001ccf9\nmov     [rsi+254h], eax                                                ; +0xcf, 0x18001ccff\nmov     eax, [rdi+258h]                                                ; +0xd5, 0x18001cd05\nmov     [rsi+258h], eax                                                ; +0xdb, 0x18001cd0b\nlea     rdx, [rdi+260h]                                                ; +0xe1, 0x18001cd11\nlea     rcx, [rsi+260h]                                                ; +0xe8, 0x18001cd18\ncall    sub_180003F50                                                  ; +0xef, 0x18001cd1f\nnop                                                                    ; +0xf4, 0x18001cd24\nlea     rdx, [rdi+280h]                                                ; +0xf5, 0x18001cd25\nlea     rcx, [rsi+280h]                                                ; +0xfc, 0x18001cd2c\ncall    sub_180003F50                                                  ; +0x103, 0x18001cd33\nnop                                                                    ; +0x108, 0x18001cd38\nlea     rdx, [rdi+2A0h]                                                ; +0x109, 0x18001cd39\nlea     rcx, [rsi+2A0h]                                                ; +0x110, 0x18001cd40\ncall    sub_180003F50                                                  ; +0x117, 0x18001cd47\nnop                                                                    ; +0x11c, 0x18001cd4c\nlea     rdx, [rdi+2C0h]                                                ; +0x11d, 0x18001cd4d\nlea     rcx, [rsi+2C0h]                                                ; +0x124, 0x18001cd54\ncall    sub_180003F50                                                  ; +0x12b, 0x18001cd5b\nmov     eax, [rdi+2E0h]                                                ; +0x130, 0x18001cd60\nmov     [rsi+2E0h], eax                                                ; +0x136, 0x18001cd66\nmov     eax, [rdi+2E4h]                                                ; +0x13c, 0x18001cd6c\nmov     [rsi+2E4h], eax                                                ; +0x142, 0x18001cd72\nmovzx   eax, word ptr [rdi+2E8h]                                       ; +0x148, 0x18001cd78\nmov     [rsi+2E8h], ax                                                 ; +0x14f, 0x18001cd7f\nmovzx   eax, byte ptr [rdi+2EAh]                                       ; +0x156, 0x18001cd86\nmov     [rsi+2EAh], al                                                 ; +0x15d, 0x18001cd8d\nmovzx   eax, word ptr [rdi+2EBh]                                       ; +0x163, 0x18001cd93\nmov     [rsi+2EBh], ax                                                 ; +0x16a, 0x18001cd9a\nmovzx   eax, byte ptr [rdi+2EDh]                                       ; +0x171, 0x18001cda1\nmov     [rsi+2EDh], al                                                 ; +0x178, 0x18001cda8\nmov     eax, [rdi+2F0h]                                                ; +0x17e, 0x18001cdae\nmov     [rsi+2F0h], eax                                                ; +0x184, 0x18001cdb4\nmov     eax, [rdi+2F4h]                                                ; +0x18a, 0x18001cdba\nmov     [rsi+2F4h], eax                                                ; +0x190, 0x18001cdc0\nmov     eax, [rdi+2F8h]                                                ; +0x196, 0x18001cdc6\nmov     [rsi+2F8h], eax                                                ; +0x19c, 0x18001cdcc\nmov     rax, rsi                                                       ; +0x1a2, 0x18001cdd2\nmov     rbx, [rsp+28h+arg_8]                                           ; +0x1a5, 0x18001cdd5\nmov     rsi, [rsp+28h+arg_10]                                          ; +0x1aa, 0x18001cdda\nadd     rsp, 20h                                                       ; +0x1af, 0x18001cddf\npop     rdi                                                            ; +0x1b3, 0x18001cde3\nretn                                                                   ; +0x1b4, 0x18001cde4", "xrefs": ["<???> @ 0x18002fdf8", "<???> @ 0x18004af50"], "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"}