; ; cocos2d::extension::CCControlUtils::HSVfromRGB from 0x18000d430 to 0x18000d52b (251 bytes) ; ; 4 xrefs: ; > cocos2d::extension::CCControlColourPicker::setColorValue @ 0x180007f38 ; > @ 0x18002fdf8 ; > @ 0x180049df8 ; > @ 0x180049e04 ; ; 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 ; sub rsp, 18h ; +0x0, 0x18000d430 movsd xmm5, qword ptr [rdx] ; +0x4, 0x18000d434 movsd xmm2, qword ptr [rdx+8] ; +0x8, 0x18000d438 movaps xmm0, xmm5 ; +0xd, 0x18000d43d maxsd xmm0, xmm2 ; +0x10, 0x18000d440 movaps [rsp+18h+var_18], xmm6 ; +0x14, 0x18000d444 movsd xmm6, qword ptr [rdx+10h] ; +0x18, 0x18000d448 movaps xmm3, xmm6 ; +0x1d, 0x18000d44d movaps xmm1, xmm6 ; +0x20, 0x18000d450 maxsd xmm3, xmm0 ; +0x23, 0x18000d453 movaps xmm0, xmm5 ; +0x27, 0x18000d457 minsd xmm0, xmm2 ; +0x2a, 0x18000d45a movaps xmm4, xmm3 ; +0x2e, 0x18000d45e movsd qword ptr [rcx+10h], xmm3 ; +0x31, 0x18000d461 minsd xmm1, xmm0 ; +0x36, 0x18000d466 subsd xmm4, xmm1 ; +0x3a, 0x18000d46a xorps xmm1, xmm1 ; +0x3e, 0x18000d46e comisd xmm3, xmm1 ; +0x41, 0x18000d471 jbe loc_18000D50A ; +0x45, 0x18000d475 comisd xmm5, xmm3 ; +0x4b, 0x18000d47b movaps xmm0, xmm4 ; +0x4f, 0x18000d47f divsd xmm0, xmm3 ; +0x52, 0x18000d482 movsd qword ptr [rcx+8], xmm0 ; +0x56, 0x18000d486 jb short loc_18000D4A4 ; +0x5b, 0x18000d48b ucomisd xmm4, xmm1 ; +0x5d, 0x18000d48d jp short loc_18000D49A ; +0x61, 0x18000d491 jnz short loc_18000D49A ; +0x63, 0x18000d493 xorps xmm2, xmm2 ; +0x65, 0x18000d495 jmp short loc_18000D4D2 ; +0x68, 0x18000d498 subsd xmm2, xmm6 ; +0x6a, 0x18000d49a divsd xmm2, xmm4 ; +0x6e, 0x18000d49e jmp short loc_18000D4D2 ; +0x72, 0x18000d4a2 comisd xmm2, xmm3 ; +0x74, 0x18000d4a4 jb short loc_18000D4BF ; +0x78, 0x18000d4a8 movaps xmm2, xmm6 ; +0x7a, 0x18000d4aa subsd xmm2, xmm5 ; +0x7d, 0x18000d4ad divsd xmm2, xmm4 ; +0x81, 0x18000d4b1 addsd xmm2, cs:qword_180029540 ; +0x85, 0x18000d4b5 jmp short loc_18000D4D2 ; +0x8d, 0x18000d4bd subsd xmm5, xmm2 ; +0x8f, 0x18000d4bf movaps xmm2, xmm5 ; +0x93, 0x18000d4c3 divsd xmm2, xmm4 ; +0x96, 0x18000d4c6 addsd xmm2, cs:qword_180029550 ; +0x9a, 0x18000d4ca movsd qword ptr [rcx], xmm2 ; +0xa2, 0x18000d4d2 mov rdx, rcx ; +0xa6, 0x18000d4d6 movsd xmm0, qword ptr [rcx] ; +0xa9, 0x18000d4d9 mov rax, rcx ; +0xad, 0x18000d4dd mulsd xmm0, cs:qword_180029560 ; +0xb0, 0x18000d4e0 mov r8, rcx ; +0xb8, 0x18000d4e8 comisd xmm1, xmm0 ; +0xbb, 0x18000d4eb movsd qword ptr [rcx], xmm0 ; +0xbf, 0x18000d4ef jbe short loc_18000D522 ; +0xc3, 0x18000d4f3 addsd xmm0, cs:qword_180029578 ; +0xc5, 0x18000d4f5 movsd qword ptr [rcx], xmm0 ; +0xcd, 0x18000d4fd movaps xmm6, [rsp+18h+var_18] ; +0xd1, 0x18000d501 add rsp, 18h ; +0xd5, 0x18000d505 retn ; +0xd9, 0x18000d509 mov rax, 0BFF0000000000000h ; +0xda, 0x18000d50a mov qword ptr [rcx+8], 0 ; +0xe4, 0x18000d514 mov [rcx], rax ; +0xec, 0x18000d51c mov rax, rcx ; +0xef, 0x18000d51f movaps xmm6, [rsp+18h+var_18] ; +0xf2, 0x18000d522 add rsp, 18h ; +0xf6, 0x18000d526 retn ; +0xfa, 0x18000d52a