; ; cocos2d::extension::CCControl::removeTargetWithActionForControlEvents from 0x1800046e0 to 0x1800047fe (286 bytes) ; ; 12 xrefs: ; > @ 0x180023b30 ; > @ 0x180024130 ; > @ 0x1800246a0 ; > @ 0x180024da8 ; > @ 0x180025358 ; > @ 0x180025940 ; > @ 0x180025ef0 ; > @ 0x1800264c0 ; > @ 0x180026ae8 ; > @ 0x180027f78 ; > @ 0x18002fdf8 ; > @ 0x180049414 ; ; 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 ; mov [rsp+arg_0], rbx ; +0x0, 0x1800046e0 mov [rsp+arg_8], rbp ; +0x5, 0x1800046e5 mov [rsp+arg_10], rsi ; +0xa, 0x1800046ea mov [rsp+arg_18], r9d ; +0xf, 0x1800046ef push rdi ; +0x14, 0x1800046f4 push r12 ; +0x15, 0x1800046f5 push r13 ; +0x17, 0x1800046f7 push r14 ; +0x19, 0x1800046f9 push r15 ; +0x1b, 0x1800046fb sub rsp, 20h ; +0x1d, 0x1800046fd mov r14d, 1 ; +0x21, 0x180004701 mov eax, r9d ; +0x27, 0x180004707 mov rdi, r8 ; +0x2a, 0x18000470a mov rbp, rdx ; +0x2d, 0x18000470d mov r13, rcx ; +0x30, 0x180004710 lea r12d, [r14+8] ; +0x33, 0x180004713 test eax, r14d ; +0x37, 0x180004717 jz loc_1800047D4 ; +0x3a, 0x18000471a mov rcx, [r13+1C0h] ; +0x40, 0x180004720 movsxd rdx, r14d ; +0x47, 0x180004727 call cs:?objectForKey@CCDictionary@cocos2d@@QEAAPEAVCCObject@2@_J@Z; cocos2d::CCDictionary::objectForKey(__int64) ; +0x4a, 0x18000472a mov rsi, rax ; +0x50, 0x180004730 test rax, rax ; +0x53, 0x180004733 jnz short loc_180004757 ; +0x56, 0x180004736 lea ecx, [rax+1] ; +0x58, 0x180004738 call cs:?createWithCapacity@CCArray@cocos2d@@SAPEAV12@I@Z; cocos2d::CCArray::createWithCapacity(uint) ; +0x5b, 0x18000473b mov rcx, [r13+1C0h] ; +0x61, 0x180004741 mov rdx, rax ; +0x68, 0x180004748 mov r8d, r14d ; +0x6b, 0x18000474b mov rsi, rax ; +0x6e, 0x18000474e call cs:?setObject@CCDictionary@cocos2d@@QEAAXPEAVCCObject@2@_J@Z; cocos2d::CCDictionary::setObject(cocos2d::CCObject *,__int64) ; +0x71, 0x180004751 test rbp, rbp ; +0x77, 0x180004757 jnz short loc_18000476C ; +0x7a, 0x18000475a test rdi, rdi ; +0x7c, 0x18000475c jnz short loc_18000476C ; +0x7f, 0x18000475f mov rcx, rsi ; +0x81, 0x180004761 call cs:?removeAllObjects@CCArray@cocos2d@@QEAAXXZ; cocos2d::CCArray::removeAllObjects(void) ; +0x84, 0x180004764 jmp short loc_1800047D0 ; +0x8a, 0x18000476a test rsi, rsi ; +0x8c, 0x18000476c jz short loc_1800047D0 ; +0x8f, 0x18000476f mov rbx, [rsi+38h] ; +0x91, 0x180004771 mov eax, [rbx] ; +0x95, 0x180004775 test eax, eax ; +0x97, 0x180004777 jz short loc_1800047D0 ; +0x99, 0x180004779 mov rbx, [rbx+10h] ; +0x9b, 0x18000477b lea r15, [rax-1] ; +0x9f, 0x18000477f lea r15, [rbx+r15*8] ; +0xa3, 0x180004783 cmp rbx, r15 ; +0xa7, 0x180004787 ja short loc_1800047D0 ; +0xaa, 0x18000478a nop dword ptr [rax+00h] ; +0xac, 0x18000478c mov rdx, [rbx] ; +0xb0, 0x180004790 test rdx, rdx ; +0xb3, 0x180004793 jz short loc_1800047D0 ; +0xb6, 0x180004796 mov al, 1 ; +0xb8, 0x180004798 test rbp, rbp ; +0xba, 0x18000479a jz short loc_1800047A6 ; +0xbd, 0x18000479d cmp rbp, [rdx+40h] ; +0xbf, 0x18000479f setz al ; +0xc3, 0x1800047a3 test rdi, rdi ; +0xc6, 0x1800047a6 jz short loc_1800047B7 ; +0xc9, 0x1800047a9 test al, al ; +0xcb, 0x1800047ab jz short loc_1800047C7 ; +0xcd, 0x1800047ad cmp rdi, [rdx+38h] ; +0xcf, 0x1800047af jnz short loc_1800047C7 ; +0xd3, 0x1800047b3 jmp short loc_1800047BB ; +0xd5, 0x1800047b5 test al, al ; +0xd7, 0x1800047b7 jz short loc_1800047C7 ; +0xd9, 0x1800047b9 mov r8b, 1 ; +0xdb, 0x1800047bb mov rcx, rsi ; +0xde, 0x1800047be call cs:?removeObject@CCArray@cocos2d@@QEAAXPEAVCCObject@2@_N@Z; cocos2d::CCArray::removeObject(cocos2d::CCObject *,bool) ; +0xe1, 0x1800047c1 add rbx, 8 ; +0xe7, 0x1800047c7 cmp rbx, r15 ; +0xeb, 0x1800047cb jbe short loc_180004790 ; +0xee, 0x1800047ce mov eax, [rsp+48h+arg_18] ; +0xf0, 0x1800047d0 rol r14d, 1 ; +0xf4, 0x1800047d4 sub r12, 1 ; +0xf7, 0x1800047d7 jnz loc_180004717 ; +0xfb, 0x1800047db mov rbx, [rsp+48h+arg_0] ; +0x101, 0x1800047e1 mov rbp, [rsp+48h+arg_8] ; +0x106, 0x1800047e6 mov rsi, [rsp+48h+arg_10] ; +0x10b, 0x1800047eb add rsp, 20h ; +0x110, 0x1800047f0 pop r15 ; +0x114, 0x1800047f4 pop r14 ; +0x116, 0x1800047f6 pop r13 ; +0x118, 0x1800047f8 pop r12 ; +0x11a, 0x1800047fa pop rdi ; +0x11c, 0x1800047fc retn ; +0x11d, 0x1800047fd