; ; __acrt_initialize_stdio from 0x18012f854 to 0x18012f973 (287 bytes) ; ; 2 xrefs: ; > @ 0x180144520 ; > @ 0x180202db0 ; ; 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, 0x18012f854 mov [rax+8], rbx ; +0x3, 0x18012f857 mov [rax+10h], rbp ; +0x7, 0x18012f85b mov [rax+18h], rsi ; +0xb, 0x18012f85f mov [rax+20h], rdi ; +0xf, 0x18012f863 push r14 ; +0x13, 0x18012f867 sub rsp, 20h ; +0x15, 0x18012f869 mov eax, cs:dword_1801F4BC8 ; +0x19, 0x18012f86d xor ebx, ebx ; +0x1f, 0x18012f873 mov edi, 3 ; +0x21, 0x18012f875 test eax, eax ; +0x26, 0x18012f87a jnz short loc_18012F885 ; +0x28, 0x18012f87c mov eax, 200h ; +0x2a, 0x18012f87e jmp short loc_18012F88A ; +0x2f, 0x18012f883 cmp eax, edi ; +0x31, 0x18012f885 cmovl eax, edi ; +0x33, 0x18012f887 movsxd rcx, eax; Count ; +0x36, 0x18012f88a mov edx, 8; Size ; +0x39, 0x18012f88d mov cs:dword_1801F4BC8, eax ; +0x3e, 0x18012f892 call _calloc_base ; +0x44, 0x18012f898 xor ecx, ecx; Block ; +0x49, 0x18012f89d mov cs:Block, rax ; +0x4b, 0x18012f89f call _free_base ; +0x52, 0x18012f8a6 cmp cs:Block, rbx ; +0x57, 0x18012f8ab jnz short loc_18012F8E3 ; +0x5e, 0x18012f8b2 mov edx, 8; Size ; +0x60, 0x18012f8b4 mov cs:dword_1801F4BC8, edi ; +0x65, 0x18012f8b9 mov rcx, rdi; Count ; +0x6b, 0x18012f8bf call _calloc_base ; +0x6e, 0x18012f8c2 xor ecx, ecx; Block ; +0x73, 0x18012f8c7 mov cs:Block, rax ; +0x75, 0x18012f8c9 call _free_base ; +0x7c, 0x18012f8d0 cmp cs:Block, rbx ; +0x81, 0x18012f8d5 jnz short loc_18012F8E3 ; +0x88, 0x18012f8dc or eax, 0FFFFFFFFh ; +0x8a, 0x18012f8de jmp short loc_18012F958 ; +0x8d, 0x18012f8e1 mov rbp, rbx ; +0x8f, 0x18012f8e3 lea rsi, unk_1801B1758 ; +0x92, 0x18012f8e6 lea r14, unk_1801B1740 ; +0x99, 0x18012f8ed lea rcx, [r14+30h]; lpCriticalSection ; +0xa0, 0x18012f8f4 xor r8d, r8d ; +0xa4, 0x18012f8f8 mov edx, 0FA0h; dwSpinCount ; +0xa7, 0x18012f8fb call __vcrt_InitializeCriticalSectionEx_0 ; +0xac, 0x18012f900 mov rax, cs:Block ; +0xb1, 0x18012f905 lea r8, qword_1801F5160 ; +0xb8, 0x18012f90c mov rdx, rbp ; +0xbf, 0x18012f913 sar rdx, 6 ; +0xc2, 0x18012f916 mov [rbx+rax], r14 ; +0xc6, 0x18012f91a mov rax, rbp ; +0xca, 0x18012f91e and eax, 3Fh ; +0xcd, 0x18012f921 lea rcx, [rax+rax*8] ; +0xd0, 0x18012f924 mov rax, [r8+rdx*8] ; +0xd4, 0x18012f928 mov rcx, [rax+rcx*8+28h] ; +0xd8, 0x18012f92c add rcx, 2 ; +0xdd, 0x18012f931 cmp rcx, 2 ; +0xe1, 0x18012f935 ja short loc_18012F941 ; +0xe5, 0x18012f939 mov dword ptr [rsi], 0FFFFFFFEh ; +0xe7, 0x18012f93b inc rbp ; +0xed, 0x18012f941 add r14, 58h ; 'X' ; +0xf0, 0x18012f944 add rbx, 8 ; +0xf4, 0x18012f948 add rsi, 58h ; 'X' ; +0xf8, 0x18012f94c sub rdi, 1 ; +0xfc, 0x18012f950 jnz short loc_18012F8F4 ; +0x100, 0x18012f954 xor eax, eax ; +0x102, 0x18012f956 mov rbx, [rsp+28h+arg_0] ; +0x104, 0x18012f958 mov rbp, [rsp+28h+arg_8] ; +0x109, 0x18012f95d mov rsi, [rsp+28h+arg_10] ; +0x10e, 0x18012f962 mov rdi, [rsp+28h+arg_18] ; +0x113, 0x18012f967 add rsp, 20h ; +0x118, 0x18012f96c pop r14 ; +0x11c, 0x18012f970 retn ; +0x11e, 0x18012f972