; ; _Init_thread_header from 0x18012097c to 0x1801209e3 (103 bytes) ; ; 22 xrefs: ; > sub_180110290 @ 0x180110829 ; > sub_180110290 @ 0x180110879 ; > sub_180110290 @ 0x1801108c9 ; > sub_180110290 @ 0x180110919 ; > sub_180110290 @ 0x180110969 ; > sub_180110290 @ 0x1801109b9 ; > sub_180110290 @ 0x180110a09 ; > sub_180110290 @ 0x180110a59 ; > sub_180110290 @ 0x180110aa9 ; > sub_180110290 @ 0x180110af9 ; > sub_180110290 @ 0x180110b49 ; > sub_180110290 @ 0x180110b99 ; > sub_180110290 @ 0x180110be9 ; > sub_180110290 @ 0x180110c39 ; > sub_180110290 @ 0x180110c89 ; > sub_180110290 @ 0x180110cd9 ; > sub_180110290 @ 0x180110d29 ; > sub_180110290 @ 0x180110d79 ; > sub_180110290 @ 0x180110dc9 ; > sub_180110290 @ 0x180110e19 ; > @ 0x180202540 ; > @ 0x18020254c ; ; 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, 0x18012097c sub rsp, 20h ; +0x2, 0x18012097e mov rbx, rcx ; +0x6, 0x180120982 lea rcx, stru_1801F49F0; lpCriticalSection ; +0x9, 0x180120985 call cs:EnterCriticalSection ; +0x10, 0x18012098c cmp dword ptr [rbx], 0 ; +0x16, 0x180120992 jnz short loc_1801209A8 ; +0x19, 0x180120995 or dword ptr [rbx], 0FFFFFFFFh ; +0x1b, 0x180120997 jmp short loc_1801209D0 ; +0x1e, 0x18012099a mov ecx, 64h ; 'd'; dwMilliseconds ; +0x20, 0x18012099c call _Init_thread_wait ; +0x25, 0x1801209a1 jmp short loc_180120992 ; +0x2a, 0x1801209a6 cmp dword ptr [rbx], 0FFFFFFFFh ; +0x2c, 0x1801209a8 jz short loc_18012099C ; +0x2f, 0x1801209ab mov rax, gs:58h ; +0x31, 0x1801209ad mov ecx, cs:TlsIndex ; +0x3a, 0x1801209b6 mov r8d, 4 ; +0x40, 0x1801209bc mov rdx, [rax+rcx*8] ; +0x46, 0x1801209c2 mov eax, cs:dword_1801B1724 ; +0x4a, 0x1801209c6 mov [r8+rdx], eax ; +0x50, 0x1801209cc lea rcx, stru_1801F49F0 ; +0x54, 0x1801209d0 add rsp, 20h ; +0x5b, 0x1801209d7 pop rbx ; +0x5f, 0x1801209db jmp cs:LeaveCriticalSection ; +0x60, 0x1801209dc