; ; _strnicoll_l from 0x180134564 to 0x180134664 (256 bytes) ; ; 2 xrefs: ; > _strnicoll @ 0x18013455c ; > @ 0x180203254 ; ; 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, 0x180134564 mov [rax+8], rbx ; +0x3, 0x180134567 mov [rax+10h], rbp ; +0x7, 0x18013456b mov [rax+18h], rsi ; +0xb, 0x18013456f push rdi ; +0xf, 0x180134573 sub rsp, 60h ; +0x10, 0x180134574 mov rsi, rdx ; +0x14, 0x180134578 mov rbp, rcx ; +0x17, 0x18013457b mov rdx, r9; struct __crt_locale_pointers * ; +0x1a, 0x18013457e lea rcx, [rax-28h]; this ; +0x1d, 0x180134581 mov rdi, r8 ; +0x21, 0x180134585 call ??0_LocaleUpdate@@QEAA@QEAU__crt_locale_pointers@@@Z ; +0x24, 0x180134588 test rdi, rdi ; +0x29, 0x18013458d jnz short loc_180134599 ; +0x2c, 0x180134590 xor ebx, ebx ; +0x2e, 0x180134592 jmp loc_180134639 ; +0x30, 0x180134594 test rbp, rbp ; +0x35, 0x180134599 jz short loc_1801345A3 ; +0x38, 0x18013459c test rsi, rsi ; +0x3a, 0x18013459e jnz short loc_1801345BA ; +0x3d, 0x1801345a1 call _errno ; +0x3f, 0x1801345a3 mov dword ptr [rax], 16h ; +0x44, 0x1801345a8 call _invalid_parameter_noinfo ; +0x4a, 0x1801345ae mov ebx, 7FFFFFFFh ; +0x4f, 0x1801345b3 jmp short loc_180134639 ; +0x54, 0x1801345b8 mov ebx, 7FFFFFFFh ; +0x56, 0x1801345ba cmp rdi, rbx ; +0x5b, 0x1801345bf jbe short loc_1801345D6 ; +0x5e, 0x1801345c2 call _errno ; +0x60, 0x1801345c4 mov dword ptr [rax], 16h ; +0x65, 0x1801345c9 call _invalid_parameter_noinfo ; +0x6b, 0x1801345cf jmp short loc_180134639 ; +0x70, 0x1801345d4 mov rax, [rsp+68h+Locale.locinfo] ; +0x72, 0x1801345d6 mov rdx, [rax+130h]; wchar_t * ; +0x77, 0x1801345db test rdx, rdx ; +0x7e, 0x1801345e2 jnz short loc_1801345FE ; +0x81, 0x1801345e5 lea r9, [rsp+68h+Locale]; Locale ; +0x83, 0x1801345e7 mov r8, rdi; MaxCount ; +0x88, 0x1801345ec mov rdx, rsi; String2 ; +0x8b, 0x1801345ef mov rcx, rbp; String1 ; +0x8e, 0x1801345f2 call _strnicmp_l ; +0x91, 0x1801345f5 mov ebx, eax ; +0x96, 0x1801345fa jmp short loc_180134639 ; +0x98, 0x1801345fc mov eax, [rax+14h] ; +0x9a, 0x1801345fe lea rcx, [rsp+68h+Locale]; struct __crt_locale_pointers * ; +0x9d, 0x180134601 mov [rsp+68h+var_30], eax; int ; +0xa2, 0x180134606 mov r9, rbp; char * ; +0xa6, 0x18013460a mov [rsp+68h+var_38], edi; int ; +0xa9, 0x18013460d mov r8d, 1001h; unsigned int ; +0xad, 0x180134611 mov [rsp+68h+var_40], rsi; char * ; +0xb3, 0x180134617 mov [rsp+68h+var_48], edi; int ; +0xb8, 0x18013461c call __acrt_CompareStringA ; +0xbc, 0x180134620 test eax, eax ; +0xc1, 0x180134625 jnz short loc_180134636 ; +0xc3, 0x180134627 call _errno ; +0xc5, 0x180134629 mov dword ptr [rax], 16h ; +0xca, 0x18013462e jmp short loc_180134639 ; +0xd0, 0x180134634 lea ebx, [rax-2] ; +0xd2, 0x180134636 cmp [rsp+68h+var_10], 0 ; +0xd5, 0x180134639 jz short loc_18013464C ; +0xda, 0x18013463e mov rax, [rsp+68h+var_28] ; +0xdc, 0x180134640 and dword ptr [rax+3A8h], 0FFFFFFFDh ; +0xe1, 0x180134645 lea r11, [rsp+68h+var_8] ; +0xe8, 0x18013464c mov eax, ebx ; +0xed, 0x180134651 mov rbx, [r11+10h] ; +0xef, 0x180134653 mov rbp, [r11+18h] ; +0xf3, 0x180134657 mov rsi, [r11+20h] ; +0xf7, 0x18013465b mov rsp, r11 ; +0xfb, 0x18013465f pop rdi ; +0xfe, 0x180134662 retn ; +0xff, 0x180134663