Function at 0x1022eaa0
Capabilities:
Set thread local storage value

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x30
mov edx, dword [ebp + 8]
mov eax, dword [0x103c2010]
xor eax, ebp
mov dword [esp + 0x28], eax
test edx, edx
je 0x1022ed9a
cmp dword [0x103c5bc0], 0xe69e32f3
jne 0x1022ed9d
mov ecx, dword [edx + 0xc]
lea edi, [ecx + 0x308]
mov byte [esp + 0xf], 0xff
lea ebx, [edx + 0x48]
movzx eax, byte [edx + 2]
cmp eax, 2
mov dword [esp], edi
je 0x1022eb1f
cmp eax, 1
jne 0x1022eb65
lea edx, [ecx + 0x207]
mov eax, edi
cmp edx, 0xfefe
ja 0x1022ebc8
add ecx, 0x307
je 0x1022ebab
bsr ecx, ecx
xor ecx, 0x1f
jmp 0x1022ebb0
mov eax, 0x20
mov ecx, 0x20
test edi, edi
je 0x1022eb33
bsr ecx, edi
xor ecx, 0x1f
sub eax, ecx
mov edx, 0x10365bac
sub edx, ecx
movzx ecx, byte [edx]
mov edx, edi
shr edx, cl
and edx, 7
mov ecx, dword [eax*4 + 0x10365bb0]
and ecx, edi
lea eax, [edx + eax*8]
cmp ecx, 1
sbb eax, 0xffffffff
movzx eax, word [eax + eax + 0x10365978]
jmp 0x1022ec1d
mov eax, 0x20
mov edx, 0x20
test edi, edi
je 0x1022eb79
bsr edx, edi
xor edx, 0x1f
mov ecx, 0x10365bac
sub ecx, edx
movzx ecx, byte [ecx]
mov esi, edi
shr esi, cl
sub eax, edx
and esi, 7
mov ecx, dword [eax*4 + 0x10365bb0]
and ecx, edi
lea eax, [esi + eax*8]
cmp ecx, 1
sbb eax, 0xffffffff
movzx ecx, word [eax + eax + 0x10365978]
cmp edi, 0x41
jmp 0x1022ec0c
mov ecx, 0x20
neg cl
mov edx, 1
shl edx, cl
mov eax, edx
shr eax, 1
lea eax, [eax + eax*4]
shr eax, 2
cmp eax, edi
cmovb eax, edx
mov edx, 0x20
mov esi, 0x20
test eax, eax
je 0x1022ebdc
bsr esi, eax
xor esi, 0x1f
mov ecx, 0x10365bac
sub ecx, esi
movzx ecx, byte [ecx]
mov edi, eax
shr edi, cl
sub edx, esi
and edi, 7
mov ecx, dword [edx*4 + 0x10365bb0]
and ecx, eax
lea edx, [edi + edx*8]
cmp ecx, 1
sbb edx, 0xffffffff
movzx ecx, word [edx + edx + 0x10365978]
cmp eax, 0x41
setae al
cmp cx, 0x76
setb dl
and dl, al
movzx eax, dl
or eax, ecx
movzx esi, ax
shl esi, 5
mov dword [esp + 4], ebx
add ebx, esi
mov eax, dword [ebp + 8]
lea edi, [eax + 0x40]
push edi
call dword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
jne 0x1022ec41
mov ecx, edi
call fcn.1022f540
mov dword [esp + 8], edi
mov eax, dword [ebx]
mov edi, dword [eax]
test edi, edi
je 0x1022ed15
mov byte [esp + 0xf], 0
mov edx, dword [edi]
test edx, edx
je 0x1022ec8b
mov ecx, dword [esp + 4]
mov ebx, dword [ecx + esi + 0xc]
mov ecx, edx
bswap ecx
mov esi, ecx
xor esi, edi
cmp esi, 0x1fffff
ja 0x1022ed66
mov esi, ecx
and esi, 0x1fc000
je 0x1022ed66
prefetcht0 byte [ecx]
jmp 0x1022ec8d
xor ecx, ecx
mov dword [eax], ecx
mov ecx, dword [eax + 0xc]
lea edx, [ecx + 2]
and edx, 0x3ffe
and ecx, 0xffffc001
or ecx, edx
mov dword [eax + 0xc], ecx
mov esi, dword [ebp + 8]
mov eax, dword [eax + 8]
mov ecx, dword [esi + 0x117c]
add ecx, dword [eax + 0xc]
mov eax, dword [esi + 0x1180]
mov dword [esi + 0x117c], ecx
cmp eax, ecx
cmova ecx, eax
mov dword [esi + 0x1180], ecx
push dword [esp + 8]
call dword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov ecx, edi
push esi
call fcn.1022edb0
push edi
push dword [0x103cdfb8]
call dword [sym.imp.KERNEL32.dll_TlsSetValue]
mov eax, dword [0x103c75a0]
mov ecx, dword fs:[0x2c]
mov eax, dword [ecx + eax*4]
mov dword [eax + 0xa0], edi
mov ecx, dword [esp + 0x28]
xor ecx, ebp
call fcn.102f4c53
mov eax, edi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
lea eax, [esp + 0xf]
mov ecx, ebx
push eax
push 0x4000
push dword [esp + 8]
push 2
mov esi, dword [ebp + 8]
push esi
call fcn.1026fc70
test eax, eax
je 0x1022ed93
mov edi, eax
mov ecx, eax
and ecx, 0xffe00000
mov edx, eax
shr edx, 9
and edx, 0xfe0
lea eax, [edx + ecx]
movzx ecx, byte [edx + ecx + 0x101e]
and ecx, 0x3f
shl ecx, 5
sub eax, ecx
add eax, 0x1000
jmp 0x1022eca9
pcmpeqd xmm0, xmm0
movdqa xmmword [esp + 0x10], xmm0
lea esi, [esp + 0x10]
mov ecx, esi
push 0
push edx
push str.first
call fcn.10200ab0
push esi
call sym.EmbeddedBrowserWebView.dll_public_virtual:_void___thiscall_telemetry_client::IDataFieldVisitor::destructor_void_
add esp, 4
mov ecx, ebx
call fcn.10200b40
xor edi, edi
jmp 0x1022eccc
int3
int3