{"type": "func", "start": 6443739156, "end": 6443739252, "name": "__acrt_initialize_multibyte", "pseudocode": "// \n// __acrt_initialize_multibyte from 0x18013a814 to 0x18013a874 (96 bytes)\n// \n// 6 xrefs:\n// > _configure_narrow_argv @ 0x180131cea\n// > common_initialize_environment_nolock<char> @ 0x180131e4d\n// > initialize_multibyte @ 0x180140fc8\n// > <???> @ 0x180173110\n// > <???> @ 0x18020386c\n// > <???> @ 0x180203878\n// \n// This function is hookable on this platform!\n// \n// Using BromaIDA 8.0.0 @ https://github.com/Stazzical/BromaIDA\n// Using bindings at commit ba9f177b at Thu Jul 16 22:52:06 2026 from https://github.com/geode-sdk/bindings\n// \n\nchar _acrt_initialize_multibyte()\n{\n  struct __acrt_ptd *v0; // rax\n\n  if ( !byte_1801F55DC )\n  {\n    qword_1801F55C8 = &unk_1801B1D90;\n    qword_1801F55D0 = (struct __crt_multibyte_data *)&unk_1801B1A50;\n    qword_1801F55C0 = &unk_1801B1C80;\n    v0 = _acrt_getptd_head();\n    setmbcp_internal(0xFFFFFFFD, 1, v0, &qword_1801F55D0);\n    byte_1801F55DC = 1;\n  }\n  return 1;\n}", "assembly": "; \n; __acrt_initialize_multibyte from 0x18013a814 to 0x18013a874 (96 bytes)\n; \n; 6 xrefs:\n; > _configure_narrow_argv @ 0x180131cea\n; > common_initialize_environment_nolock<char> @ 0x180131e4d\n; > initialize_multibyte @ 0x180140fc8\n; > <???> @ 0x180173110\n; > <???> @ 0x18020386c\n; > <???> @ 0x180203878\n; \n; This function is hookable on this platform!\n; \n; Using BromaIDA 8.0.0 @ https:;github.com/Stazzical/BromaIDA\n; Using bindings at commit ba9f177b at Thu Jul 16 22:52:06 2026 from https:;github.com/geode-sdk/bindings\n; \n\nsub     rsp, 28h                                                       ; +0x0, 0x18013a814\ncmp     cs:byte_1801F55DC, 0                                           ; +0x4, 0x18013a818\njnz     short loc_18013A86D                                            ; +0xb, 0x18013a81f\nlea     rcx, unk_1801B1D90                                             ; +0xd, 0x18013a821\nmov     cs:qword_1801F55C8, rcx                                        ; +0x14, 0x18013a828\nlea     rax, unk_1801B1A50                                             ; +0x1b, 0x18013a82f\nlea     rcx, unk_1801B1C80                                             ; +0x22, 0x18013a836\nmov     cs:qword_1801F55D0, rax                                        ; +0x29, 0x18013a83d\nmov     cs:qword_1801F55C0, rcx                                        ; +0x30, 0x18013a844\ncall    __acrt_getptd_head                                             ; +0x37, 0x18013a84b\nlea     r9, qword_1801F55D0; struct __crt_multibyte_data **            ; +0x3c, 0x18013a850\nmov     r8, rax; struct __acrt_ptd *                                   ; +0x43, 0x18013a857\nmov     dl, 1; bool                                                    ; +0x46, 0x18013a85a\nmov     ecx, 0FFFFFFFDh; int                                           ; +0x48, 0x18013a85c\ncall    ?setmbcp_internal@@YAHH_NQEAU__acrt_ptd@@QEAPEAU__crt_multibyte_data@@@Z ; +0x4d, 0x18013a861\nmov     cs:byte_1801F55DC, 1                                           ; +0x52, 0x18013a866\nmov     al, 1                                                          ; +0x59, 0x18013a86d\nadd     rsp, 28h                                                       ; +0x5b, 0x18013a86f\nretn                                                                   ; +0x5f, 0x18013a873", "xrefs": ["_configure_narrow_argv @ 0x180131cea", "common_initialize_environment_nolock<char> @ 0x180131e4d", "initialize_multibyte @ 0x180140fc8", "<???> @ 0x180173110", "<???> @ 0x18020386c", "<???> @ 0x180203878"], "is_objc": false, "is_arm32": false, "is_arm64": false, "bida_info": "8.0.0 @ https://github.com/Stazzical/BromaIDA", "bindings_info": "commit ba9f177b at Thu Jul 16 22:52:06 2026 from https://github.com/geode-sdk/bindings"}