{"type": "func", "start": 6443714148, "end": 6443714220, "name": "__vcrt_initialize_locks_0", "pseudocode": "// \n// __vcrt_initialize_locks_0 from 0x180134664 to 0x1801346ac (72 bytes)\n// \n// 3 xrefs:\n// > <???> @ 0x1801730b0\n// > <???> @ 0x180203254\n// > <???> @ 0x180203260\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 _vcrt_initialize_locks_0()\n{\n  __int64 v0; // rbx\n\n  v0 = 0;\n  while ( (unsigned int)_vcrt_InitializeCriticalSectionEx_0((LPCRITICAL_SECTION)&unk_1801F4D60 + v0, 0xFA0u) )\n  {\n    ++dword_1801F4F90;\n    v0 = (unsigned int)(v0 + 1);\n    if ( (unsigned int)v0 >= 0xE )\n      return 1;\n  }\n  _vcrt_uninitialize_locks_0(0);\n  return 0;\n}", "assembly": "; \n; __vcrt_initialize_locks_0 from 0x180134664 to 0x1801346ac (72 bytes)\n; \n; 3 xrefs:\n; > <???> @ 0x1801730b0\n; > <???> @ 0x180203254\n; > <???> @ 0x180203260\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\npush    rbx                                                            ; +0x0, 0x180134664\nsub     rsp, 20h                                                       ; +0x2, 0x180134666\nxor     ebx, ebx                                                       ; +0x6, 0x18013466a\nlea     rdx, unk_1801F4D60                                             ; +0x8, 0x18013466c\nxor     r8d, r8d                                                       ; +0xf, 0x180134673\nlea     rcx, [rbx+rbx*4]                                               ; +0x12, 0x180134676\nlea     rcx, [rdx+rcx*8]; lpCriticalSection                            ; +0x16, 0x18013467a\nmov     edx, 0FA0h; dwSpinCount                                        ; +0x1a, 0x18013467e\ncall    __vcrt_InitializeCriticalSectionEx_0                           ; +0x1f, 0x180134683\ntest    eax, eax                                                       ; +0x24, 0x180134688\njz      short loc_18013469D                                            ; +0x26, 0x18013468a\ninc     cs:dword_1801F4F90                                             ; +0x28, 0x18013468c\ninc     ebx                                                            ; +0x2e, 0x180134692\ncmp     ebx, 0Eh                                                       ; +0x30, 0x180134694\njb      short loc_18013466C                                            ; +0x33, 0x180134697\nmov     al, 1                                                          ; +0x35, 0x180134699\njmp     short loc_1801346A6                                            ; +0x37, 0x18013469b\nxor     ecx, ecx                                                       ; +0x39, 0x18013469d\ncall    __vcrt_uninitialize_locks_0                                    ; +0x3b, 0x18013469f\nxor     al, al                                                         ; +0x40, 0x1801346a4\nadd     rsp, 20h                                                       ; +0x42, 0x1801346a6\npop     rbx                                                            ; +0x46, 0x1801346aa\nretn                                                                   ; +0x47, 0x1801346ab", "xrefs": ["<???> @ 0x1801730b0", "<???> @ 0x180203254", "<???> @ 0x180203260"], "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"}