; ; cocos2d::extension::CCArrayForObjectSorting::objectWithObjectID from 0x180014910 to 0x180014a7c (364 bytes) ; ; 7 xrefs: ; > cocos2d::extension::CCTableView::cellAtIndex @ 0x180015282 ; > cocos2d::extension::CCTableView::updateCellAtIndex @ 0x180015326 ; > cocos2d::extension::CCTableView::insertCellAtIndex @ 0x1800153dd ; > cocos2d::extension::CCTableView::removeCellAtIndex @ 0x1800155ec ; > cocos2d::extension::CCTableView::ccTouchBegan @ 0x1800165bf ; > @ 0x18002fdf8 ; > @ 0x18004a6a4 ; ; 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, 0x180014910 mov [rsp+arg_8], edx ; +0x5, 0x180014915 push rbp ; +0x9, 0x180014919 push rsi ; +0xa, 0x18001491a push rdi ; +0xb, 0x18001491b push r12 ; +0xc, 0x18001491c push r13 ; +0xe, 0x18001491e push r14 ; +0x10, 0x180014920 push r15 ; +0x12, 0x180014922 sub rsp, 30h ; +0x14, 0x180014924 mov r14d, edx ; +0x18, 0x180014928 mov r13, rcx ; +0x1b, 0x18001492b call cs:?count@CCArray@cocos2d@@QEBAIXZ; cocos2d::CCArray::count(void) ; +0x1e, 0x18001492e test eax, eax ; +0x24, 0x180014934 jnz short loc_18001493F ; +0x26, 0x180014936 xor eax, eax ; +0x28, 0x180014938 jmp loc_180014A67 ; +0x2a, 0x18001493a mov ecx, 48h ; 'H'; Size ; +0x2f, 0x18001493f call ??2@YAPEAX_K@Z; operator new(unsigned __int64) ; +0x34, 0x180014944 mov rbx, rax ; +0x39, 0x180014949 mov [rsp+68h+arg_10], rax ; +0x3c, 0x18001494c mov rcx, rax ; +0x44, 0x180014954 call cs:??0CCObject@cocos2d@@QEAA@XZ; cocos2d::CCObject::CCObject(void) ; +0x47, 0x180014957 lea r12, [rbx+38h] ; +0x4d, 0x18001495d lea rax, ??_7CCSortedObject@extension@cocos2d@@6B@; const cocos2d::extension::CCSortedObject::`vftable' ; +0x51, 0x180014961 mov [rbx], rax ; +0x58, 0x180014968 lea rax, ??_7CCSortedObject@extension@cocos2d@@6B@_0; const cocos2d::extension::CCSortedObject::`vftable' ; +0x5b, 0x18001496b mov [r12], rax ; +0x62, 0x180014972 xor r15d, r15d ; +0x66, 0x180014976 mov [rbx+40h], r15d ; +0x69, 0x180014979 mov edx, r14d; unsigned int ; +0x6d, 0x18001497d mov rcx, r12; this ; +0x70, 0x180014980 mov rax, cs:off_180028740 ; +0x73, 0x180014983 call rax ; cocos2d::extension::CCTableViewCell::setObjectID(uint); cocos2d::extension::CCTableViewCell::setObjectID(uint) ; +0x7a, 0x18001498a mov esi, r15d ; +0x7c, 0x18001498c mov ebp, r15d ; +0x7f, 0x18001498f mov rax, [r12] ; +0x82, 0x180014992 mov rcx, r12 ; +0x86, 0x180014996 call qword ptr [rax+10h] ; +0x89, 0x180014999 mov edi, eax ; +0x8c, 0x18001499c test r13, r13 ; +0x8e, 0x18001499e jz short loc_180014A09 ; +0x91, 0x1800149a1 mov rbx, [r13+38h] ; +0x93, 0x1800149a3 mov eax, [rbx] ; +0x97, 0x1800149a7 test eax, eax ; +0x99, 0x1800149a9 jz short loc_180014A09 ; +0x9b, 0x1800149ab mov rbx, [rbx+10h] ; +0x9d, 0x1800149ad lea r14, [rax-1] ; +0xa1, 0x1800149b1 lea r14, [rbx+r14*8] ; +0xa5, 0x1800149b5 cmp rbx, r14 ; +0xa9, 0x1800149b9 ja short loc_180014A04 ; +0xac, 0x1800149bc xchg ax, ax ; +0xae, 0x1800149be mov rcx, [rbx] ; +0xb0, 0x1800149c0 test rcx, rcx ; +0xb3, 0x1800149c3 jz short loc_180014A04 ; +0xb6, 0x1800149c6 mov [rsp+68h+var_48], r15d ; +0xb8, 0x1800149c8 lea r9, ??_R0?AVCCSortableObject@extension@cocos2d@@@8; cocos2d::extension::CCSortableObject `RTTI Type Descriptor' ; +0xbd, 0x1800149cd lea r8, ??_R0?AVCCObject@cocos2d@@@8; cocos2d::CCObject `RTTI Type Descriptor' ; +0xc4, 0x1800149d4 xor edx, edx ; +0xcb, 0x1800149db call __RTDynamicCast ; +0xcd, 0x1800149dd mov rdx, [rax] ; +0xd2, 0x1800149e2 mov rcx, rax ; +0xd5, 0x1800149e5 call qword ptr [rdx+10h] ; +0xd8, 0x1800149e8 cmp edi, eax ; +0xdb, 0x1800149eb jz short loc_180014A04 ; +0xdd, 0x1800149ed cmp edi, ebp ; +0xdf, 0x1800149ef jb short loc_1800149F7 ; +0xe1, 0x1800149f1 cmp edi, eax ; +0xe3, 0x1800149f3 jb short loc_180014A04 ; +0xe5, 0x1800149f5 mov ebp, eax ; +0xe7, 0x1800149f7 inc esi ; +0xe9, 0x1800149f9 add rbx, 8 ; +0xeb, 0x1800149fb cmp rbx, r14 ; +0xef, 0x1800149ff jbe short loc_1800149C0 ; +0xf2, 0x180014a02 mov r14d, [rsp+68h+arg_8] ; +0xf4, 0x180014a04 lea rcx, [r12-38h] ; +0xf9, 0x180014a09 call cs:?release@CCObject@cocos2d@@QEAAXXZ; cocos2d::CCObject::release(void) ; +0xfe, 0x180014a0e mov rcx, r13 ; +0x104, 0x180014a14 call cs:?count@CCArray@cocos2d@@QEBAIXZ; cocos2d::CCArray::count(void) ; +0x107, 0x180014a17 cmp esi, eax ; +0x10d, 0x180014a1d jnb short loc_180014A64 ; +0x10f, 0x180014a1f cmp esi, 0FFFFFFFFh ; +0x111, 0x180014a21 jz short loc_180014A64 ; +0x114, 0x180014a24 mov edx, esi ; +0x116, 0x180014a26 mov rcx, r13 ; +0x118, 0x180014a28 call cs:?objectAtIndex@CCArray@cocos2d@@QEAAPEAVCCObject@2@I@Z; cocos2d::CCArray::objectAtIndex(uint) ; +0x11b, 0x180014a2b mov rcx, rax ; +0x121, 0x180014a31 mov [rsp+68h+var_48], r15d ; +0x124, 0x180014a34 lea r9, ??_R0?AVCCSortableObject@extension@cocos2d@@@8; cocos2d::extension::CCSortableObject `RTTI Type Descriptor' ; +0x129, 0x180014a39 lea r8, ??_R0?AVCCObject@cocos2d@@@8; cocos2d::CCObject `RTTI Type Descriptor' ; +0x130, 0x180014a40 xor edx, edx ; +0x137, 0x180014a47 call __RTDynamicCast ; +0x139, 0x180014a49 mov rbx, rax ; +0x13e, 0x180014a4e mov rdx, [rax] ; +0x141, 0x180014a51 mov rcx, rax ; +0x144, 0x180014a54 call qword ptr [rdx+10h] ; +0x147, 0x180014a57 cmp eax, r14d ; +0x14a, 0x180014a5a cmovnz rbx, r15 ; +0x14d, 0x180014a5d mov r15, rbx ; +0x151, 0x180014a61 mov rax, r15 ; +0x154, 0x180014a64 mov rbx, [rsp+68h+arg_0] ; +0x157, 0x180014a67 add rsp, 30h ; +0x15c, 0x180014a6c pop r15 ; +0x160, 0x180014a70 pop r14 ; +0x162, 0x180014a72 pop r13 ; +0x164, 0x180014a74 pop r12 ; +0x166, 0x180014a76 pop rdi ; +0x168, 0x180014a78 pop rsi ; +0x169, 0x180014a79 pop rbp ; +0x16a, 0x180014a7a retn ; +0x16b, 0x180014a7b