Function at 0x4b65d0
Capabilities:
Get thread local storage value
Set thread local storage value

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0xc
call fcn.0065cc50
push ebx
push esi
push edi
mov edi, ecx
mov dword [esp + 0x10], edx
push 0
push 0x100
xor ecx, ecx
mov dword [esp + 0x1c], edi
call fcn.00484340
add esp, 8
test eax, eax
je 0x4b66de
call dword [sym.imp.KERNEL32.dll_GetLastError]
push dword [0x74f268]
mov esi, eax
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
push esi
mov ebx, eax
call dword [sym.imp.KERNEL32.dll_SetLastError]
test ebx, ebx
jne 0x4b66e7
push ebx
push ebx
xor ecx, ecx
call fcn.00484340
add esp, 8
test eax, eax
je 0x4b66de
lea ecx, [ebx + 1]
call fcn.004835b0
test eax, eax
je 0x4b66de
push 0x10
mov dword [eax], 1
mov dword [0x7464ac], ebx
call fcn.00668622
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x4b6694
push 0x2a
push str.C:pixelseeinstaller_dependencesopenssl1_1_win_build_1.1.1qcrypto_async_async.c
push 0x41
lea edx, [eax + 0x64]
lea ecx, [eax + 0x33]
call fcn.0047b7e0
add esp, 0xc
push ebx
call fcn.006637b7
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0
call dword [sym.imp.KERNEL32.dll_ConvertThreadToFiber]
mov dword [ebx], eax
test eax, eax
jne 0x4b66af
mov dword [ebx + 4], eax
mov eax, dword fs:[0x10]
mov dword [ebx], eax
jmp 0x4b66b6
mov dword [ebx + 4], 1
push ebx
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
push dword [0x74f268]
call dword [sym.imp.KERNEL32.dll_TlsSetValue]
test eax, eax
jne 0x4b66e7
push ebx
call fcn.006637b7
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [edi]
test eax, eax
je 0x4b66f0
mov dword [ebx + 8], eax
mov esi, dword [ebp + 0x10]
mov edx, dword [ebx + 8]
test edx, edx
je 0x4b6727
mov eax, dword [edx + 0x14]
cmp eax, 3
je 0x4b67f4
cmp eax, 1
je 0x4b67d5
cmp eax, 2
jne 0x4b679b
mov eax, dword [edi]
mov dword [ebx + 8], eax
push dword [eax]
call dword [sym.imp.KERNEL32.dll_SwitchToFiber]
jmp 0x4b66f3
call fcn.004b6300
mov dword [ebx + 8], eax
test eax, eax
je 0x4b68a0
test esi, esi
je 0x4b6771
push 0x14
mov dword [0x7464ac], 0
call fcn.00668622
mov ecx, dword [ebx + 8]
add esp, 4
mov dword [ecx + 0xc], eax
mov eax, dword [ebx + 8]
mov ecx, dword [eax + 0xc]
test ecx, ecx
je 0x4b686c
movups xmm0, xmmword [esi]
mov eax, dword [esi + 0x10]
movups xmmword [ecx], xmm0
mov dword [ecx + 0x10], eax
jmp 0x4b6778
mov dword [eax + 0xc], 0
mov eax, dword [ebx + 8]
mov ecx, dword [ebp + 0xc]
mov dword [eax + 8], ecx
mov eax, dword [ebx + 8]
mov ecx, dword [esp + 0x10]
mov dword [eax + 0x18], ecx
mov eax, dword [ebx + 8]
push dword [eax]
call dword [sym.imp.KERNEL32.dll_SwitchToFiber]
jmp 0x4b66f3
mov edx, 0x69
push 0xd7
push str.C:pixelseeinstaller_dependencesopenssl1_1_win_build_1.1.1qcrypto_async_async.c
push 0x44
lea ecx, [edx - 0x36]
call fcn.0047b7e0
mov ecx, dword [ebx + 8]
add esp, 0xc
call fcn.004b6530
mov dword [ebx + 8], 0
xor eax, eax
mov dword [edi], 0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [edi], edx
mov eax, dword [ebx + 8]
mov dword [eax + 0x14], 2
mov eax, 2
mov dword [ebx + 8], 0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov ecx, dword [edx + 0x10]
mov dword [edx + 0x18], 0
mov dword [eax], ecx
mov eax, dword [ebx + 8]
mov dword [esp + 0x10], eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
push dword [0x74f26c]
mov esi, eax
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
push esi
mov edi, eax
call dword [sym.imp.KERNEL32.dll_SetLastError]
mov esi, dword [esp + 0x10]
push dword [esi + 0xc]
call fcn.006637b7
mov dword [esi + 0xc], 0
add esp, 4
mov ecx, dword [edi]
test ecx, ecx
je 0x4b684f
push dword [ecx]
mov edx, esi
call fcn.0046a260
add esp, 4
mov eax, dword [esp + 0x14]
mov dword [ebx + 8], 0
mov dword [eax], 0
mov eax, 3
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, 0x69
push 0xe5
push str.C:pixelseeinstaller_dependencesopenssl1_1_win_build_1.1.1qcrypto_async_async.c
push 0x41
lea ecx, [edx - 0x36]
call fcn.0047b7e0
mov ecx, dword [ebx + 8]
add esp, 0xc
call fcn.004b6530
mov dword [ebx + 8], 0
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret