// // TlsCallback_1 from 0x18001f700 to 0x18001f7a5 (165 bytes) // // 3 xrefs: // > @ 0x1800232a8 // > @ 0x180023310 // > @ 0x18004b22c // // 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 // void __fastcall TlsCallback_1(__int64 a1, int a2) { __int64 v2; // r14 _QWORD *v3; // rdi int v4; // ebx void (**v5)(void); // rsi _QWORD *v6; // rbx if ( a2 == 3 || !a2 ) { v2 = *((_QWORD *)NtCurrentTeb()->ThreadLocalStoragePointer + (unsigned int)TlsIndex); v3 = *(_QWORD **)(v2 + 32); if ( v3 ) { while ( 1 ) { v4 = *(_DWORD *)v3 - 1; if ( v4 >= 0 ) { v5 = (void (**)(void))&v3[v4 + 2]; do { if ( *v5 ) (*v5)(); --v5; --v4; } while ( v4 >= 0 ); } v6 = (_QWORD *)v3[1]; if ( !v6 ) break; free(v3); *(_QWORD *)(v2 + 32) = v6; v3 = v6; } *(_QWORD *)(v2 + 32) = 0; } } }