; ; cocos2d::extension::AssetsManager::AssetsManager from 0x180001480 to 0x180001667 (487 bytes) ; ; 3 xrefs: ; > cocos2d::extension::AssetsManager::`default constructor closure' @ 0x1800013b8 ; > @ 0x18002fdf8 ; > @ 0x180049054 ; ; 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_8], rbx ; +0x0, 0x180001480 mov [rsp+arg_10], rbp ; +0x5, 0x180001485 mov [rsp+arg_18], rsi ; +0xa, 0x18000148a mov [rsp+arg_0], rcx ; +0xf, 0x18000148f push rdi ; +0x14, 0x180001494 push r14 ; +0x15, 0x180001495 push r15 ; +0x17, 0x180001497 sub rsp, 30h ; +0x19, 0x180001499 mov r14, r8 ; +0x1d, 0x18000149d mov rbp, rdx ; +0x20, 0x1800014a0 mov rsi, rcx ; +0x23, 0x1800014a3 lea rax, ??_7AssetsManager@extension@cocos2d@@6B@; const cocos2d::extension::AssetsManager::`vftable' ; +0x26, 0x1800014a6 mov [rcx], rax ; +0x2d, 0x1800014ad xorps xmm0, xmm0 ; +0x30, 0x1800014b0 movups xmmword ptr [rcx+8], xmm0 ; +0x33, 0x1800014b3 xor r15d, r15d ; +0x37, 0x1800014b7 mov [rcx+18h], r15 ; +0x3a, 0x1800014ba mov [rcx+20h], r15 ; +0x3e, 0x1800014be mov rbx, 0FFFFFFFFFFFFFFFFh ; +0x42, 0x1800014c2 mov r8, rbx ; +0x49, 0x1800014c9 nop dword ptr [rax+00h] ; +0x4c, 0x1800014cc inc r8 ; +0x50, 0x1800014d0 cmp [r9+r8], r15b ; +0x53, 0x1800014d3 jnz short loc_1800014D0 ; +0x57, 0x1800014d7 mov rdx, r9 ; +0x59, 0x1800014d9 add rcx, 8 ; +0x5c, 0x1800014dc call sub_180003AB0 ; +0x60, 0x1800014e0 nop ; +0x65, 0x1800014e5 xorps xmm0, xmm0 ; +0x66, 0x1800014e6 movups xmmword ptr [rsi+28h], xmm0 ; +0x69, 0x1800014e9 mov [rsi+38h], r15 ; +0x6d, 0x1800014ed mov qword ptr [rsi+40h], 0Fh ; +0x71, 0x1800014f1 mov byte ptr [rsi+28h], 0 ; +0x79, 0x1800014f9 lea rcx, [rsi+48h] ; +0x7d, 0x1800014fd movups xmmword ptr [rcx], xmm0 ; +0x81, 0x180001501 mov [rcx+10h], r15 ; +0x84, 0x180001504 mov [rcx+18h], r15 ; +0x88, 0x180001508 mov r8, rbx ; +0x8c, 0x18000150c nop ; +0x8f, 0x18000150f inc r8 ; +0x90, 0x180001510 cmp byte ptr [r8+rbp], 0 ; +0x93, 0x180001513 jnz short loc_180001510 ; +0x98, 0x180001518 mov rdx, rbp ; +0x9a, 0x18000151a call sub_180003AB0 ; +0x9d, 0x18000151d nop ; +0xa2, 0x180001522 lea rcx, [rsi+68h] ; +0xa3, 0x180001523 xorps xmm0, xmm0 ; +0xa7, 0x180001527 movups xmmword ptr [rcx], xmm0 ; +0xaa, 0x18000152a mov [rcx+10h], r15 ; +0xad, 0x18000152d mov [rcx+18h], r15 ; +0xb1, 0x180001531 inc rbx ; +0xb5, 0x180001535 cmp byte ptr [r14+rbx], 0 ; +0xb8, 0x180001538 jnz short loc_180001535 ; +0xbd, 0x18000153d mov r8, rbx ; +0xbf, 0x18000153f mov rdx, r14 ; +0xc2, 0x180001542 call sub_180003AB0 ; +0xc5, 0x180001545 nop ; +0xca, 0x18000154a xorps xmm0, xmm0 ; +0xcb, 0x18000154b movups xmmword ptr [rsi+88h], xmm0 ; +0xce, 0x18000154e mov [rsi+98h], r15 ; +0xd5, 0x180001555 mov qword ptr [rsi+0A0h], 0Fh ; +0xdc, 0x18000155c mov byte ptr [rsi+88h], 0 ; +0xe7, 0x180001567 mov [rsi+0A8h], r15 ; +0xee, 0x18000156e mov [rsi+0B8h], r15 ; +0xf5, 0x180001575 mov [rsi+0C0h], r15d ; +0xfc, 0x18000157c mov [rsi+0C8h], r15 ; +0x103, 0x180001583 mov rcx, [rsi+18h] ; +0x10a, 0x18000158a test rcx, rcx ; +0x10e, 0x18000158e jz short loc_1800015BF ; +0x111, 0x180001591 lea rax, [rsi+8] ; +0x113, 0x180001593 cmp qword ptr [rsi+20h], 0Fh ; +0x117, 0x180001597 jbe short loc_1800015A2 ; +0x11c, 0x18000159c mov rax, [rsi+8] ; +0x11e, 0x18000159e cmp byte ptr [rcx+rax-1], 2Fh ; '/' ; +0x122, 0x1800015a2 jz short loc_1800015BF ; +0x127, 0x1800015a7 mov r8d, 1 ; +0x129, 0x1800015a9 lea rdx, word_180023388 ; +0x12f, 0x1800015af lea rcx, [rsi+8]; Src ; +0x136, 0x1800015b6 call sub_1800039A0 ; +0x13a, 0x1800015ba mov ecx, 48h ; 'H'; Size ; +0x13f, 0x1800015bf call ??2@YAPEAX_K@Z; operator new(unsigned __int64) ; +0x144, 0x1800015c4 mov rdi, rax ; +0x149, 0x1800015c9 mov [rsp+48h+var_28], rax ; +0x14c, 0x1800015cc mov rcx, rax ; +0x151, 0x1800015d1 call cs:??0CCObject@cocos2d@@QEAA@XZ; cocos2d::CCObject::CCObject(void) ; +0x154, 0x1800015d4 nop ; +0x15a, 0x1800015da lea rax, ??_7Helper@AssetsManager@extension@cocos2d@@6B@; const cocos2d::extension::AssetsManager::Helper::`vftable' ; +0x15b, 0x1800015db mov [rdi], rax ; +0x162, 0x1800015e2 mov ecx, 10h; Size ; +0x165, 0x1800015e5 call ??2@YAPEAX_K@Z; operator new(unsigned __int64) ; +0x16a, 0x1800015ea mov rbx, rax ; +0x16f, 0x1800015ef mov [rsp+48h+var_20], rax ; +0x172, 0x1800015f2 mov [rax], r15 ; +0x177, 0x1800015f7 mov [rax+8], r15 ; +0x17a, 0x1800015fa mov ecx, 18h; Size ; +0x17e, 0x1800015fe call ??2@YAPEAX_K@Z; operator new(unsigned __int64) ; +0x183, 0x180001603 mov [rax], rax ; +0x188, 0x180001608 mov [rax+8], rax ; +0x18b, 0x18000160b mov [rbx], rax ; +0x18f, 0x18000160f mov [rdi+38h], rbx ; +0x192, 0x180001612 lea rcx, [rdi+40h] ; +0x196, 0x180001616 xor edx, edx ; +0x19a, 0x18000161a call cs:pthread_mutex_init ; +0x19c, 0x18000161c call cs:?sharedDirector@CCDirector@cocos2d@@SAPEAV12@XZ; cocos2d::CCDirector::sharedDirector(void) ; +0x1a2, 0x180001622 mov rdx, [rax] ; +0x1a8, 0x180001628 mov rcx, rax ; +0x1ab, 0x18000162b call qword ptr [rdx+70h] ; +0x1ae, 0x18000162e mov rcx, rax ; +0x1b1, 0x180001631 xor r9d, r9d ; +0x1b4, 0x180001634 xor r8d, r8d ; +0x1b7, 0x180001637 mov rdx, rdi ; +0x1ba, 0x18000163a call cs:?scheduleUpdateForTarget@CCScheduler@cocos2d@@QEAAXPEAVCCObject@2@H_N@Z; cocos2d::CCScheduler::scheduleUpdateForTarget(cocos2d::CCObject *,int,bool) ; +0x1bd, 0x18000163d nop ; +0x1c3, 0x180001643 mov [rsi+0B0h], rdi ; +0x1c4, 0x180001644 mov rax, rsi ; +0x1cb, 0x18000164b mov rbx, [rsp+48h+arg_8] ; +0x1ce, 0x18000164e mov rbp, [rsp+48h+arg_10] ; +0x1d3, 0x180001653 mov rsi, [rsp+48h+arg_18] ; +0x1d8, 0x180001658 add rsp, 30h ; +0x1dd, 0x18000165d pop r15 ; +0x1e1, 0x180001661 pop r14 ; +0x1e3, 0x180001663 pop rdi ; +0x1e5, 0x180001665 retn ; +0x1e6, 0x180001666