; ; sub_180003A20 from 0x180003a20 to 0x180003aad (141 bytes) ; ; 5 xrefs: ; > cocos2d::extension::WebSocket::onSubThreadStarted @ 0x18001a66b ; > @ 0x18002d334 ; > @ 0x18002d344 ; > @ 0x1800492a0 ; > @ 0x1800492ac ; ; 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, 0x180003a20 push rsi ; +0x5, 0x180003a25 sub rsp, 30h ; +0x6, 0x180003a26 mov rsi, rcx ; +0xa, 0x180003a2a mov rbx, 0FFFFFFFFFFFFFFFFh ; +0xd, 0x180003a2d inc rbx ; +0x14, 0x180003a34 cmp byte ptr [rdx+rbx], 0 ; +0x17, 0x180003a37 jnz short loc_180003A34 ; +0x1b, 0x180003a3b mov r8, [rsi+18h] ; +0x1d, 0x180003a3d mov rcx, [rcx+10h] ; +0x21, 0x180003a41 mov rax, r8 ; +0x25, 0x180003a45 sub rax, rcx ; +0x28, 0x180003a48 cmp rbx, rax ; +0x2b, 0x180003a4b ja short loc_180003A8F ; +0x2e, 0x180003a4e mov [rsp+38h+arg_0], rdi ; +0x30, 0x180003a50 lea rax, [rcx+rbx] ; +0x35, 0x180003a55 mov [rsi+10h], rax ; +0x39, 0x180003a59 mov rax, rsi ; +0x3d, 0x180003a5d cmp r8, 0Fh ; +0x40, 0x180003a60 jbe short loc_180003A69 ; +0x44, 0x180003a64 mov rax, [rsi] ; +0x46, 0x180003a66 lea rdi, [rax+rcx] ; +0x49, 0x180003a69 mov r8, rbx; Size ; +0x4d, 0x180003a6d mov rcx, rdi; void * ; +0x50, 0x180003a70 call memmove ; +0x53, 0x180003a73 mov byte ptr [rdi+rbx], 0 ; +0x58, 0x180003a78 mov rax, rsi ; +0x5c, 0x180003a7c mov rdi, [rsp+38h+arg_0] ; +0x5f, 0x180003a7f mov rbx, [rsp+38h+arg_8] ; +0x64, 0x180003a84 add rsp, 30h ; +0x69, 0x180003a89 pop rsi ; +0x6d, 0x180003a8d retn ; +0x6e, 0x180003a8e mov r9, rdx ; +0x6f, 0x180003a8f mov [rsp+38h+Size], rbx; Size ; +0x72, 0x180003a92 mov rdx, rbx ; +0x77, 0x180003a97 mov rcx, rsi; Src ; +0x7a, 0x180003a9a call sub_180003810 ; +0x7d, 0x180003a9d mov rbx, [rsp+38h+arg_8] ; +0x82, 0x180003aa2 add rsp, 30h ; +0x87, 0x180003aa7 pop rsi ; +0x8b, 0x180003aab retn ; +0x8c, 0x180003aac