; ; sub_180007CB0 from 0x180007cb0 to 0x180007e04 (340 bytes) ; ; 2 xrefs: ; > sub_180007A70 @ 0x180007bee ; > @ 0x1801f63b4 ; ; 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, 0x180007cb0 mov [rsp+arg_8], rbp ; +0x5, 0x180007cb5 mov [rsp+arg_10], rsi ; +0xa, 0x180007cba push rdi ; +0xf, 0x180007cbf sub rsp, 20h ; +0x10, 0x180007cc0 mov rbx, rdx ; +0x14, 0x180007cc4 mov rbp, rcx ; +0x17, 0x180007cc7 xor esi, esi ; +0x1a, 0x180007cca mov rcx, rbx ; +0x1c, 0x180007ccc lea edx, [rsi+1] ; +0x1f, 0x180007ccf call sub_180001340 ; +0x22, 0x180007cd2 test eax, eax ; +0x27, 0x180007cd7 jz short loc_180007CEB ; +0x29, 0x180007cd9 lea edx, [rsi+4] ; +0x2b, 0x180007cdb mov rcx, rbx ; +0x2e, 0x180007cde call sub_180001340 ; +0x31, 0x180007ce1 lea edi, [rax+1] ; +0x36, 0x180007ce6 jmp short loc_180007CF0 ; +0x39, 0x180007ce9 mov edi, 1 ; +0x3b, 0x180007ceb mov edx, 1 ; +0x40, 0x180007cf0 mov rcx, rbx ; +0x45, 0x180007cf5 call sub_180001340 ; +0x48, 0x180007cf8 test eax, eax ; +0x4d, 0x180007cfd jz short loc_180007D68 ; +0x4f, 0x180007cff mov edx, 8 ; +0x51, 0x180007d01 mov rcx, rbx ; +0x56, 0x180007d06 call sub_180001340 ; +0x59, 0x180007d09 inc eax ; +0x5e, 0x180007d0e lea esi, ds:3[rax*2] ; +0x60, 0x180007d10 and esi, 0FFFFFFFCh ; +0x67, 0x180007d17 test eax, eax ; +0x6a, 0x180007d1a jle short loc_180007D68 ; +0x6c, 0x180007d1c mov r8d, [rbx+10h] ; +0x6e, 0x180007d1e mov r9, [rbx] ; +0x72, 0x180007d22 mov r10d, eax ; +0x75, 0x180007d25 nop dword ptr [rax+rax+00000000h] ; +0x78, 0x180007d28 mov eax, [rbp+4] ; +0x80, 0x180007d30 xor edx, edx ; +0x83, 0x180007d33 test eax, eax ; +0x85, 0x180007d35 lea ecx, [rax-1] ; +0x87, 0x180007d37 cmovz ecx, eax ; +0x8a, 0x180007d3a test ecx, ecx ; +0x8d, 0x180007d3d jz short loc_180007D47 ; +0x8f, 0x180007d3f inc edx ; +0x91, 0x180007d41 shr ecx, 1 ; +0x93, 0x180007d43 jnz short loc_180007D41 ; +0x95, 0x180007d45 lea eax, [r8+rdx*2] ; +0x97, 0x180007d47 mov r8d, eax ; +0x9b, 0x180007d4b cdqe ; +0x9e, 0x180007d4e sar rax, 3 ; +0xa0, 0x180007d50 and r8d, 7 ; +0xa4, 0x180007d54 add r9, rax ; +0xa8, 0x180007d58 mov [rbx+10h], r8d ; +0xab, 0x180007d5b mov [rbx], r9 ; +0xaf, 0x180007d5f sub r10, 1 ; +0xb2, 0x180007d62 jnz short loc_180007D30 ; +0xb6, 0x180007d66 mov eax, [rbx+10h] ; +0xb8, 0x180007d68 add eax, 2 ; +0xbb, 0x180007d6b movsxd rdx, eax ; +0xbe, 0x180007d6e mov r8d, eax ; +0xc1, 0x180007d71 sar rdx, 3 ; +0xc4, 0x180007d74 and r8d, 7 ; +0xc8, 0x180007d78 add rdx, [rbx] ; +0xcc, 0x180007d7c mov [rbx+10h], r8d ; +0xcf, 0x180007d7f mov [rbx], rdx ; +0xd3, 0x180007d83 cmp edi, 1 ; +0xd6, 0x180007d86 jle short loc_180007DB6 ; +0xd9, 0x180007d89 mov ecx, [rbp+4] ; +0xdb, 0x180007d8b lea r8d, [r8+rcx*4] ; +0xde, 0x180007d8e movsxd rax, r8d ; +0xe2, 0x180007d92 and r8d, 7 ; +0xe5, 0x180007d95 sar rax, 3 ; +0xe9, 0x180007d99 add rax, rdx ; +0xed, 0x180007d9d mov [rbx], rax ; +0xf0, 0x180007da0 lea eax, [rcx+3] ; +0xf3, 0x180007da3 add eax, esi ; +0xf6, 0x180007da6 and eax, 0FFFFFFFCh ; +0xf8, 0x180007da8 lea eax, [rax+rdi*2] ; +0xfb, 0x180007dab add eax, 3 ; +0xfe, 0x180007dae and eax, 0FFFFFFFCh ; +0x101, 0x180007db1 jmp short loc_180007DC6 ; +0x104, 0x180007db4 lea eax, ds:3[rdi*2] ; +0x106, 0x180007db6 add eax, esi ; +0x10d, 0x180007dbd and eax, 0FFFFFFFCh ; +0x10f, 0x180007dbf test edi, edi ; +0x112, 0x180007dc2 jle short loc_180007DEF ; +0x114, 0x180007dc4 mov r9d, edi ; +0x116, 0x180007dc6 nop dword ptr [rax+00000000h] ; +0x119, 0x180007dc9 lea edx, [r8+18h] ; +0x120, 0x180007dd0 movsxd rcx, edx ; +0x124, 0x180007dd4 mov r8d, edx ; +0x127, 0x180007dd7 sar rcx, 3 ; +0x12a, 0x180007dda and r8d, 7 ; +0x12e, 0x180007dde add [rbx], rcx ; +0x132, 0x180007de2 sub r9, 1 ; +0x135, 0x180007de5 jnz short loc_180007DD0 ; +0x139, 0x180007de9 mov [rbx+10h], r8d ; +0x13b, 0x180007deb mov rbx, [rsp+28h+arg_0] ; +0x13f, 0x180007def mov rbp, [rsp+28h+arg_8] ; +0x144, 0x180007df4 mov rsi, [rsp+28h+arg_10] ; +0x149, 0x180007df9 add rsp, 20h ; +0x14e, 0x180007dfe pop rdi ; +0x152, 0x180007e02 retn ; +0x153, 0x180007e03