; ; cocos2d::extension::CCControlSwitch::create from 0x18000cdd0 to 0x18000ce7f (175 bytes) ; ; 2 xrefs: ; > @ 0x18002fdf8 ; > @ 0x180049da4 ; ; 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, 0x18000cdd0 mov [rsp+arg_8], rbp ; +0x5, 0x18000cdd5 mov [rsp+arg_10], rsi ; +0xa, 0x18000cdda mov [rsp+arg_18], rdi ; +0xf, 0x18000cddf push r14 ; +0x14, 0x18000cde4 sub rsp, 50h ; +0x16, 0x18000cde6 mov rdi, r9 ; +0x1a, 0x18000cdea mov rsi, r8 ; +0x1d, 0x18000cded mov rbp, rdx ; +0x20, 0x18000cdf0 mov r14, rcx ; +0x23, 0x18000cdf3 mov ecx, 1E8h; Size ; +0x26, 0x18000cdf6 call ??2@YAPEAX_K@Z; operator new(unsigned __int64) ; +0x2b, 0x18000cdfb mov [rsp+58h+var_18], rax ; +0x30, 0x18000ce00 mov rcx, rax; this ; +0x35, 0x18000ce05 call ??0CCControlSwitch@extension@cocos2d@@QEAA@XZ; cocos2d::extension::CCControlSwitch::CCControlSwitch(void) ; +0x38, 0x18000ce08 mov rbx, rax ; +0x3d, 0x18000ce0d test rax, rax ; +0x40, 0x18000ce10 jz short loc_18000CE61 ; +0x43, 0x18000ce13 mov rax, [rsp+58h+arg_28] ; +0x45, 0x18000ce15 mov [rsp+58h+var_28], rax; struct cocos2d::CCLabelTTF * ; +0x4d, 0x18000ce1d mov rcx, [rsp+58h+arg_20] ; +0x52, 0x18000ce22 mov [rsp+58h+var_30], rcx; struct cocos2d::CCLabelTTF * ; +0x5a, 0x18000ce2a mov [rsp+58h+var_38], rdi; struct cocos2d::CCSprite * ; +0x5f, 0x18000ce2f mov r9, rsi; struct cocos2d::CCSprite * ; +0x64, 0x18000ce34 mov r8, rbp; struct cocos2d::CCSprite * ; +0x67, 0x18000ce37 mov rdx, r14; struct cocos2d::CCSprite * ; +0x6a, 0x18000ce3a mov rcx, rbx; this ; +0x6d, 0x18000ce3d call ?initWithMaskSprite@CCControlSwitch@extension@cocos2d@@QEAA_NPEAVCCSprite@3@000PEAVCCLabelTTF@3@1@Z; cocos2d::extension::CCControlSwitch::initWithMaskSprite(cocos2d::CCSprite *,cocos2d::CCSprite *,cocos2d::CCSprite *,cocos2d::CCSprite *,cocos2d::CCLabelTTF *,cocos2d::CCLabelTTF *) ; +0x70, 0x18000ce40 mov rcx, rbx ; +0x75, 0x18000ce45 test al, al ; +0x78, 0x18000ce48 jz short loc_18000CE54 ; +0x7a, 0x18000ce4a call cs:?autorelease@CCObject@cocos2d@@QEAAPEAV12@XZ; cocos2d::CCObject::autorelease(void) ; +0x7c, 0x18000ce4c jmp short loc_18000CE61 ; +0x82, 0x18000ce52 mov rax, [rbx] ; +0x84, 0x18000ce54 mov edx, 1 ; +0x87, 0x18000ce57 call qword ptr [rax+8] ; +0x8c, 0x18000ce5c xor ebx, ebx ; +0x8f, 0x18000ce5f mov rax, rbx ; +0x91, 0x18000ce61 mov rbx, [rsp+58h+arg_0] ; +0x94, 0x18000ce64 mov rbp, [rsp+58h+arg_8] ; +0x99, 0x18000ce69 mov rsi, [rsp+58h+arg_10] ; +0x9e, 0x18000ce6e mov rdi, [rsp+58h+arg_18] ; +0xa3, 0x18000ce73 add rsp, 50h ; +0xa8, 0x18000ce78 pop r14 ; +0xac, 0x18000ce7c retn ; +0xae, 0x18000ce7e