; ; __crt_mbstring::__c16rtomb_utf8 from 0x18013d8c4 to 0x18013d967 (163 bytes) ; ; 3 xrefs: ; > __crt_mbstring::__wcsrtombs_utf8 @ 0x180137164 ; > __crt_mbstring::__wcsrtombs_utf8 @ 0x1801371d8 ; > @ 0x180203ae8 ; ; 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 ; push rbx ; +0x0, 0x18013d8c4 sub rsp, 20h ; +0x2, 0x18013d8c6 test r8, r8 ; +0x6, 0x18013d8ca movzx r9d, dx; struct _Mbstatet * ; +0x9, 0x18013d8cd lea rbx, unk_1801F5728 ; +0xd, 0x18013d8d1 mov edx, 2400h ; +0x14, 0x18013d8d8 cmovnz rbx, r8 ; +0x19, 0x18013d8dd mov eax, 3FFh ; +0x1d, 0x18013d8e1 add edx, r9d ; +0x22, 0x18013d8e6 cmp dword ptr [rbx], 0 ; +0x25, 0x18013d8e9 jnz short loc_18013D93D ; +0x28, 0x18013d8ec cmp dx, ax ; +0x2a, 0x18013d8ee ja short loc_18013D908 ; +0x2d, 0x18013d8f1 and qword ptr [rbx], 0 ; +0x2f, 0x18013d8f3 call _errno ; +0x33, 0x18013d8f7 mov dword ptr [rax], 2Ah ; '*' ; +0x38, 0x18013d8fc or rax, 0FFFFFFFFFFFFFFFFh ; +0x3e, 0x18013d902 jmp short loc_18013D961 ; +0x42, 0x18013d906 mov r8d, 2800h ; +0x44, 0x18013d908 mov edx, r9d; char * ; +0x4a, 0x18013d90e add r9w, r8w; struct _Mbstatet * ; +0x4d, 0x18013d911 cmp r9w, ax ; +0x51, 0x18013d915 ja short loc_18013D930 ; +0x55, 0x18013d919 shl edx, 0Ah ; +0x57, 0x18013d91b and edx, 0FC9FFC00h ; +0x5a, 0x18013d91e add edx, 10000h ; +0x60, 0x18013d924 mov [rbx], edx ; +0x66, 0x18013d92a xor eax, eax ; +0x68, 0x18013d92c jmp short loc_18013D961 ; +0x6a, 0x18013d92e mov r8, rbx; char32_t ; +0x6c, 0x18013d930 add rsp, 20h ; +0x6f, 0x18013d933 pop rbx ; +0x73, 0x18013d937 jmp j_?__c32rtomb_utf8@__crt_mbstring@@YA_KPEAD_UPEAU_Mbstatet@@@Z ; +0x74, 0x18013d938 cmp dx, ax ; +0x79, 0x18013d93d ja short loc_18013D8F3 ; +0x7c, 0x18013d940 and [rsp+28h+arg_10], 0 ; +0x7e, 0x18013d942 lea r8, [rsp+28h+arg_10]; char32_t ; +0x84, 0x18013d948 mov edx, r9d ; +0x89, 0x18013d94d and edx, 0FFFF23FFh ; +0x8c, 0x18013d950 add edx, [rbx]; char * ; +0x92, 0x18013d956 call j_?__c32rtomb_utf8@__crt_mbstring@@YA_KPEAD_UPEAU_Mbstatet@@@Z ; +0x94, 0x18013d958 and qword ptr [rbx], 0 ; +0x99, 0x18013d95d add rsp, 20h ; +0x9d, 0x18013d961 pop rbx ; +0xa1, 0x18013d965 retn ; +0xa2, 0x18013d966