{"type": "func", "start": 6442486496, "end": 6442486680, "name": "cocos2d::extension::CCControlHuePicker::checkSliderPosition", "pseudocode": "// \n// cocos2d::extension::CCControlHuePicker::checkSliderPosition from 0x180008ae0 to 0x180008b98 (184 bytes)\n// \n// 4 xrefs:\n// > cocos2d::extension::CCControlHuePicker::ccTouchBegan @ 0x180008c01\n// > cocos2d::extension::CCControlHuePicker::ccTouchMoved @ 0x180008c5a\n// > <???> @ 0x18002fdf8\n// > <???> @ 0x18004990c\n// \n// This function is hookable on this platform!\n// \n// Using BromaIDA 8.0.0 @ https://github.com/Stazzical/BromaIDA\n// Using bindings at commit ba9f177b at Thu Jul 16 22:52:06 2026 from https://github.com/geode-sdk/bindings\n// \n\nchar __fastcall cocos2d::extension::CCControlHuePicker::checkSliderPosition(__int64 *a1, float *a2, char a3)\n{\n  float v6; // xmm0_4\n  float v7; // xmm7_4\n  float v8; // xmm0_4\n  float *v9; // rax\n  char v11; // [rsp+48h] [rbp+10h] BYREF\n\n  v6 = powf(*a2 + 10.0, 2.0);\n  v7 = v6 + powf(a2[1], 2.0);\n  if ( v7 < 0.0 )\n    v8 = sqrtf(v7);\n  else\n    v8 = fsqrt(v7);\n  if ( (v8 >= 85.0 || v8 <= 50.0) && !a3 )\n    return 0;\n  v9 = (float *)cocos2d::CCPoint::CCPoint((cocos2d::CCPoint *)&v11, (const struct cocos2d::CCPoint *)a2);\n  cocos2d::extension::CCControlHuePicker::updateSliderPosition(a1, v9);\n  return 1;\n}", "assembly": "; \n; cocos2d::extension::CCControlHuePicker::checkSliderPosition from 0x180008ae0 to 0x180008b98 (184 bytes)\n; \n; 4 xrefs:\n; > cocos2d::extension::CCControlHuePicker::ccTouchBegan @ 0x180008c01\n; > cocos2d::extension::CCControlHuePicker::ccTouchMoved @ 0x180008c5a\n; > <???> @ 0x18002fdf8\n; > <???> @ 0x18004990c\n; \n; This function is hookable on this platform!\n; \n; Using BromaIDA 8.0.0 @ https:;github.com/Stazzical/BromaIDA\n; Using bindings at commit ba9f177b at Thu Jul 16 22:52:06 2026 from https:;github.com/geode-sdk/bindings\n; \n\nmov     [rsp+arg_0], rbx                                               ; +0x0, 0x180008ae0\nmov     [rsp+arg_10], rsi                                              ; +0x5, 0x180008ae5\npush    rdi                                                            ; +0xa, 0x180008aea\nsub     rsp, 30h                                                       ; +0xb, 0x180008aeb\nmovss   xmm0, dword ptr [rdx]                                          ; +0xf, 0x180008aef\nmovzx   edi, r8b                                                       ; +0x13, 0x180008af3\naddss   xmm0, cs:dword_18002958C; X                                    ; +0x17, 0x180008af7\nmovss   xmm1, cs:Y; Y                                                  ; +0x1f, 0x180008aff\nmov     rbx, rdx                                                       ; +0x27, 0x180008b07\nmovaps  [rsp+38h+var_18], xmm7                                         ; +0x2a, 0x180008b0a\nmov     rsi, rcx                                                       ; +0x2f, 0x180008b0f\ncall    powf                                                           ; +0x32, 0x180008b12\nmovss   xmm1, cs:Y; Y                                                  ; +0x37, 0x180008b17\nmovaps  xmm7, xmm0                                                     ; +0x3f, 0x180008b1f\nmovss   xmm0, dword ptr [rbx+4]; X                                     ; +0x42, 0x180008b22\ncall    powf                                                           ; +0x47, 0x180008b27\naddss   xmm7, xmm0                                                     ; +0x4c, 0x180008b2c\nxorps   xmm1, xmm1                                                     ; +0x50, 0x180008b30\nucomiss xmm1, xmm7                                                     ; +0x53, 0x180008b33\nja      short loc_180008B41                                            ; +0x56, 0x180008b36\nxorps   xmm0, xmm0                                                     ; +0x58, 0x180008b38\nsqrtss  xmm0, xmm7                                                     ; +0x5b, 0x180008b3b\njmp     short loc_180008B49                                            ; +0x5f, 0x180008b3f\nmovaps  xmm0, xmm7; X                                                  ; +0x61, 0x180008b41\ncall    sqrtf                                                          ; +0x64, 0x180008b44\nmovss   xmm1, cs:dword_1800295B4                                       ; +0x69, 0x180008b49\ncomiss  xmm1, xmm0                                                     ; +0x71, 0x180008b51\njbe     short loc_180008B5F                                            ; +0x74, 0x180008b54\ncomiss  xmm0, cs:dword_1800295AC                                       ; +0x76, 0x180008b56\nja      short loc_180008B64                                            ; +0x7d, 0x180008b5d\ntest    dil, dil                                                       ; +0x7f, 0x180008b5f\njz      short loc_180008B81                                            ; +0x82, 0x180008b62\nmov     rdx, rbx                                                       ; +0x84, 0x180008b64\nlea     rcx, [rsp+38h+arg_8]                                           ; +0x87, 0x180008b67\ncall    cs:??0CCPoint@cocos2d@@QEAA@AEBV01@@Z; cocos2d::CCPoint::CCPoint(cocos2d::CCPoint const &) ; +0x8c, 0x180008b6c\nmov     rdx, rax                                                       ; +0x92, 0x180008b72\nmov     rcx, rsi                                                       ; +0x95, 0x180008b75\ncall    ?updateSliderPosition@CCControlHuePicker@extension@cocos2d@@IEAAXVCCPoint@3@@Z; cocos2d::extension::CCControlHuePicker::updateSliderPosition(cocos2d::CCPoint) ; +0x98, 0x180008b78\nmov     al, 1                                                          ; +0x9d, 0x180008b7d\njmp     short loc_180008B83                                            ; +0x9f, 0x180008b7f\nxor     al, al                                                         ; +0xa1, 0x180008b81\nmov     rbx, [rsp+38h+arg_0]                                           ; +0xa3, 0x180008b83\nmov     rsi, [rsp+38h+arg_10]                                          ; +0xa8, 0x180008b88\nmovaps  xmm7, [rsp+38h+var_18]                                         ; +0xad, 0x180008b8d\nadd     rsp, 30h                                                       ; +0xb2, 0x180008b92\npop     rdi                                                            ; +0xb6, 0x180008b96\nretn                                                                   ; +0xb7, 0x180008b97", "xrefs": ["cocos2d::extension::CCControlHuePicker::ccTouchBegan @ 0x180008c01", "cocos2d::extension::CCControlHuePicker::ccTouchMoved @ 0x180008c5a", "<???> @ 0x18002fdf8", "<???> @ 0x18004990c"], "is_objc": false, "is_arm32": false, "is_arm64": false, "bida_info": "8.0.0 @ https://github.com/Stazzical/BromaIDA", "bindings_info": "commit ba9f177b at Thu Jul 16 22:52:06 2026 from https://github.com/geode-sdk/bindings"}