; ; cocos2d::extension::CCControlHuePicker::initWithTargetAndPos from 0x180008620 to 0x180008819 (505 bytes) ; ; 5 xrefs: ; > @ 0x180024dd0 ; > @ 0x18002dad8 ; > @ 0x18002db10 ; > @ 0x18002fdf8 ; > @ 0x1800498a0 ; ; 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 ; push rbp ; +0x0, 0x180008620 push rsi ; +0x2, 0x180008622 push rdi ; +0x3, 0x180008623 sub rsp, 30h ; +0x4, 0x180008624 mov rbp, r8 ; +0x8, 0x180008628 mov rsi, rdx ; +0xb, 0x18000862b mov rdi, rcx ; +0xe, 0x18000862e call ?init@CCControl@extension@cocos2d@@UEAA_NXZ; cocos2d::extension::CCControl::init(void) ; +0x11, 0x180008631 test al, al ; +0x16, 0x180008636 jz loc_18000880F ; +0x18, 0x180008638 mov rax, [rdi] ; +0x1e, 0x18000863e mov dl, 1 ; +0x21, 0x180008641 mov [rsp+48h+arg_0], rbx ; +0x23, 0x180008643 mov rcx, rdi ; +0x28, 0x180008648 mov [rsp+48h+arg_8], r14 ; +0x2b, 0x18000864b mov [rsp+48h+arg_10], r15 ; +0x30, 0x180008650 call qword ptr [rax+388h] ; +0x35, 0x180008655 xorps xmm2, xmm2 ; +0x3b, 0x18000865b lea rcx, [rsp+48h+arg_18] ; +0x3e, 0x18000865e xorps xmm1, xmm1 ; +0x43, 0x180008663 call cs:??0CCPoint@cocos2d@@QEAA@MM@Z; cocos2d::CCPoint::CCPoint(float,float) ; +0x46, 0x180008666 mov rdx, rbp ; +0x4c, 0x18000866c lea rcx, [rsp+48h+var_28] ; +0x4f, 0x18000866f mov r14, rax ; +0x54, 0x180008674 call cs:??0CCPoint@cocos2d@@QEAA@AEBV01@@Z; cocos2d::CCPoint::CCPoint(cocos2d::CCPoint const &) ; +0x57, 0x180008677 lea rcx, aHuepickerbackg; "huePickerBackground.png" ; +0x5d, 0x18000867d mov r15, rax ; +0x64, 0x180008684 call cs:?createWithSpriteFrameName@CCSprite@cocos2d@@SAPEAV12@PEBD@Z; cocos2d::CCSprite::createWithSpriteFrameName(char const *) ; +0x67, 0x180008687 mov rbx, rax ; +0x6d, 0x18000868d test rax, rax ; +0x70, 0x180008690 jz short loc_1800086C2 ; +0x73, 0x180008693 mov rax, [rax] ; +0x75, 0x180008695 mov rdx, r15 ; +0x78, 0x180008698 mov rcx, rbx ; +0x7b, 0x18000869b call qword ptr [rax+0B8h] ; +0x7e, 0x18000869e mov rax, [rbx] ; +0x84, 0x1800086a4 mov rdx, r14 ; +0x87, 0x1800086a7 mov rcx, rbx ; +0x8a, 0x1800086aa call qword ptr [rax+110h] ; +0x8d, 0x1800086ad mov rax, [rsi] ; +0x93, 0x1800086b3 mov rdx, rbx ; +0x96, 0x1800086b6 mov rcx, rsi ; +0x99, 0x1800086b9 call qword ptr [rax+1C0h] ; +0x9c, 0x1800086bc cmp [rdi+1E0h], rbx ; +0xa2, 0x1800086c2 jz short loc_1800086F2 ; +0xa9, 0x1800086c9 test rbx, rbx ; +0xab, 0x1800086cb jz short loc_1800086D9 ; +0xae, 0x1800086ce mov rcx, rbx ; +0xb0, 0x1800086d0 call cs:?retain@CCObject@cocos2d@@QEAAXXZ; cocos2d::CCObject::retain(void) ; +0xb3, 0x1800086d3 mov rcx, [rdi+1E0h] ; +0xb9, 0x1800086d9 test rcx, rcx ; +0xc0, 0x1800086e0 jz short loc_1800086EB ; +0xc3, 0x1800086e3 call cs:?release@CCObject@cocos2d@@QEAAXXZ; cocos2d::CCObject::release(void) ; +0xc5, 0x1800086e5 mov [rdi+1E0h], rbx ; +0xcb, 0x1800086eb movss xmm2, cs:dword_180029510 ; +0xd2, 0x1800086f2 lea rcx, [rsp+48h+arg_18] ; +0xda, 0x1800086fa movaps xmm1, xmm2 ; +0xdf, 0x1800086ff call cs:??0CCPoint@cocos2d@@QEAA@MM@Z; cocos2d::CCPoint::CCPoint(float,float) ; +0xe2, 0x180008702 mov rdx, rbp ; +0xe8, 0x180008708 lea rcx, [rsp+48h+var_28] ; +0xeb, 0x18000870b mov r14, rax ; +0xf0, 0x180008710 call cs:??0CCPoint@cocos2d@@QEAA@AEBV01@@Z; cocos2d::CCPoint::CCPoint(cocos2d::CCPoint const &) ; +0xf3, 0x180008713 lea rcx, aColourpickerPn; "colourPicker.png" ; +0xf9, 0x180008719 mov r15, rax ; +0x100, 0x180008720 call cs:?createWithSpriteFrameName@CCSprite@cocos2d@@SAPEAV12@PEBD@Z; cocos2d::CCSprite::createWithSpriteFrameName(char const *) ; +0x103, 0x180008723 mov rbx, rax ; +0x109, 0x180008729 test rax, rax ; +0x10c, 0x18000872c jz short loc_18000875E ; +0x10f, 0x18000872f mov rax, [rax] ; +0x111, 0x180008731 mov rdx, r15 ; +0x114, 0x180008734 mov rcx, rbx ; +0x117, 0x180008737 call qword ptr [rax+0B8h] ; +0x11a, 0x18000873a mov rax, [rbx] ; +0x120, 0x180008740 mov rdx, r14 ; +0x123, 0x180008743 mov rcx, rbx ; +0x126, 0x180008746 call qword ptr [rax+110h] ; +0x129, 0x180008749 mov rax, [rsi] ; +0x12f, 0x18000874f mov rdx, rbx ; +0x132, 0x180008752 mov rcx, rsi ; +0x135, 0x180008755 call qword ptr [rax+1C0h] ; +0x138, 0x180008758 mov rax, [rdi+1E8h] ; +0x13e, 0x18000875e mov r15, [rsp+48h+arg_10] ; +0x145, 0x180008765 mov r14, [rsp+48h+arg_8] ; +0x14a, 0x18000876a cmp rax, rbx ; +0x14f, 0x18000876f jz short loc_18000879E ; +0x152, 0x180008772 test rbx, rbx ; +0x154, 0x180008774 jz short loc_180008782 ; +0x157, 0x180008777 mov rcx, rbx ; +0x159, 0x180008779 call cs:?retain@CCObject@cocos2d@@QEAAXXZ; cocos2d::CCObject::retain(void) ; +0x15c, 0x18000877c mov rcx, [rdi+1E8h] ; +0x162, 0x180008782 test rcx, rcx ; +0x169, 0x180008789 jz short loc_180008794 ; +0x16c, 0x18000878c call cs:?release@CCObject@cocos2d@@QEAAXXZ; cocos2d::CCObject::release(void) ; +0x16e, 0x18000878e mov [rdi+1E8h], rbx ; +0x174, 0x180008794 mov rax, rbx ; +0x17b, 0x18000879b mov rcx, [rdi+1E0h] ; +0x17e, 0x18000879e lea rdx, [rsp+48h+var_28] ; +0x185, 0x1800087a5 mov rbx, [rax] ; +0x18a, 0x1800087aa call cs:?boundingBox@CCNode@cocos2d@@QEAA?AVCCRect@2@XZ; cocos2d::CCNode::boundingBox(void) ; +0x18d, 0x1800087ad movss xmm1, dword ptr [rbp+0] ; +0x193, 0x1800087b3 lea rcx, [rsp+48h+arg_18] ; +0x198, 0x1800087b8 movss xmm2, dword ptr [rax+0Ch] ; +0x19d, 0x1800087bd mulss xmm2, cs:dword_180029510 ; +0x1a2, 0x1800087c2 addss xmm2, dword ptr [rbp+4] ; +0x1aa, 0x1800087ca call cs:??0CCPoint@cocos2d@@QEAA@MM@Z; cocos2d::CCPoint::CCPoint(float,float) ; +0x1af, 0x1800087cf mov rcx, [rdi+1E8h] ; +0x1b5, 0x1800087d5 mov rdx, rax ; +0x1bc, 0x1800087dc call qword ptr [rbx+0B8h] ; +0x1bf, 0x1800087df lea rcx, [rdi+1F0h] ; +0x1c5, 0x1800087e5 mov rdx, rbp ; +0x1cc, 0x1800087ec call cs:??4CCPoint@cocos2d@@QEAAAEAV01@AEBV01@@Z; cocos2d::CCPoint::operator=(cocos2d::CCPoint const &) ; +0x1cf, 0x1800087ef mov rbx, [rsp+48h+arg_0] ; +0x1d5, 0x1800087f5 mov al, 1 ; +0x1da, 0x1800087fa mov qword ptr [rdi+1D8h], 0 ; +0x1dc, 0x1800087fc add rsp, 30h ; +0x1e7, 0x180008807 pop rdi ; +0x1eb, 0x18000880b pop rsi ; +0x1ec, 0x18000880c pop rbp ; +0x1ed, 0x18000880d retn ; +0x1ee, 0x18000880e xor al, al ; +0x1ef, 0x18000880f add rsp, 30h ; +0x1f1, 0x180008811 pop rdi ; +0x1f5, 0x180008815 pop rsi ; +0x1f6, 0x180008816 pop rbp ; +0x1f7, 0x180008817 retn ; +0x1f8, 0x180008818