// // __acrt_MultiByteToWideChar from 0x180134ea0 to 0x180134efa (90 bytes) // // 14 xrefs: // > __acrt_mbs_to_wcs_cp<__crt_win32_buffer_internal_dynamic_resizing> @ 0x18012900a // > __acrt_mbs_to_wcs_cp<__crt_win32_buffer_internal_dynamic_resizing> @ 0x180129092 // > initialize_environment_by_cloning_nolock @ 0x1801322c4 // > initialize_environment_by_cloning_nolock @ 0x1801322f9 // > _mbtowc_l @ 0x180137394 // > _mbtowc_l @ 0x1801373dc // > InternalCompareStringA @ 0x18013bc3c // > InternalCompareStringA @ 0x18013bcde // > InternalCompareStringA @ 0x18013bd04 // > InternalCompareStringA @ 0x18013bd9e // > __acrt_GetStringTypeA @ 0x18013d79f // > __acrt_GetStringTypeA @ 0x18013d845 // > __acrt_LCMapStringA_stat @ 0x180140c9b // > __acrt_LCMapStringA_stat @ 0x180140d40 // // 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 // int __fastcall _acrt_MultiByteToWideChar(UINT a1, char a2, const CHAR *a3, int a4, WCHAR *a5, int a6) { int v6; // r10d if ( a1 > 0xC435 ) { if ( a1 != 54936 ) { if ( a1 <= 0xDEA9 ) return MultiByteToWideChar(a1, a2, a3, a4, a5, a6); if ( a1 <= 0xDEB3 || a1 == 65000 ) goto LABEL_5; if ( a1 != 65001 ) return MultiByteToWideChar(a1, a2, a3, a4, a5, a6); } a2 &= 8u; return MultiByteToWideChar(a1, a2, a3, a4, a5, a6); } if ( a1 - 50220 <= 9 && (v6 = 679, _bittest(&v6, a1 - 50220)) || a1 == 42 ) LABEL_5: a2 = 0; return MultiByteToWideChar(a1, a2, a3, a4, a5, a6); }