; ; __crtCompareStringW from 0x18013b880 to 0x18013b93d (189 bytes) ; ; 2 xrefs: ; > _wcsnicoll_l @ 0x180134509 ; > @ 0x180203950 ; ; 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 rax, rsp ; +0x0, 0x18013b880 mov [rax+8], rbx ; +0x3, 0x18013b883 mov [rax+10h], rbp ; +0x7, 0x18013b887 mov [rax+18h], rsi ; +0xb, 0x18013b88b mov [rax+20h], rdi ; +0xf, 0x18013b88f push r14 ; +0x13, 0x18013b893 sub rsp, 50h ; +0x15, 0x18013b895 movsxd rbx, r9d ; +0x19, 0x18013b899 mov rsi, r8 ; +0x1c, 0x18013b89c mov ebp, edx ; +0x1f, 0x18013b89f mov r14, rcx ; +0x21, 0x18013b8a1 test r9d, r9d ; +0x24, 0x18013b8a4 jle short loc_18013B8B7 ; +0x27, 0x18013b8a7 mov rdx, rbx; MaxCount ; +0x29, 0x18013b8a9 mov rcx, r8; Source ; +0x2c, 0x18013b8ac call wcsnlen ; +0x2f, 0x18013b8af mov rbx, rax ; +0x34, 0x18013b8b4 movsxd rax, [rsp+58h+arg_28] ; +0x37, 0x18013b8b7 mov rdi, [rsp+58h+Source] ; +0x3f, 0x18013b8bf test eax, eax ; +0x47, 0x18013b8c7 jle short loc_18013B8D6 ; +0x49, 0x18013b8c9 mov rdx, rax; MaxCount ; +0x4b, 0x18013b8cb mov rcx, rdi; Source ; +0x4e, 0x18013b8ce call wcsnlen ; +0x51, 0x18013b8d1 test ebx, ebx ; +0x56, 0x18013b8d6 jz short loc_18013B90B ; +0x58, 0x18013b8d8 test eax, eax ; +0x5a, 0x18013b8da jz short loc_18013B90B ; +0x5c, 0x18013b8dc and [rsp+58h+var_18], 0 ; +0x5e, 0x18013b8de mov r9d, ebx ; +0x64, 0x18013b8e4 and [rsp+58h+var_20], 0 ; +0x67, 0x18013b8e7 mov r8, rsi ; +0x6d, 0x18013b8ed and [rsp+58h+var_28], 0 ; +0x70, 0x18013b8f0 mov edx, ebp ; +0x76, 0x18013b8f6 mov [rsp+58h+var_30], eax ; +0x78, 0x18013b8f8 mov rcx, r14 ; +0x7c, 0x18013b8fc mov [rsp+58h+var_38], rdi ; +0x7f, 0x18013b8ff call __acrt_CompareStringEx ; +0x84, 0x18013b904 jmp short loc_18013B922 ; +0x89, 0x18013b909 sub ebx, eax ; +0x8b, 0x18013b90b mov ecx, 2 ; +0x8d, 0x18013b90d mov eax, ebx ; +0x92, 0x18013b912 sar eax, 1Fh ; +0x94, 0x18013b914 and eax, 0FFFFFFFEh ; +0x97, 0x18013b917 add eax, 3 ; +0x9a, 0x18013b91a test ebx, ebx ; +0x9d, 0x18013b91d cmovz eax, ecx ; +0x9f, 0x18013b91f mov rbx, [rsp+58h+arg_0] ; +0xa2, 0x18013b922 mov rbp, [rsp+58h+arg_8] ; +0xa7, 0x18013b927 mov rsi, [rsp+58h+arg_10] ; +0xac, 0x18013b92c mov rdi, [rsp+58h+arg_18] ; +0xb1, 0x18013b931 add rsp, 50h ; +0xb6, 0x18013b936 pop r14 ; +0xba, 0x18013b93a retn ; +0xbc, 0x18013b93c