Function at 0x101128a0
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
sub esp, 0x10
call fcn.1010b980
mov esi, eax
test eax, eax
jne case.0x101128ce.15
mov edi, dword [ebp + 8]
call fcn.10112720
dec edi
cmp edi, 0x28
ja case.0x101128ce.4
mov edx, dword [ebp + 0xc]
xor esi, esi
jmp dword [edi*4 + 0x101c7284]
mov eax, dword [0x101f1d2c]
and edx, 1
and eax, 0xfffffffe
jmp 0x10112ba4
and edx, 1
shl edx, 0x1b
mov eax, 0xf7ffffff
jmp 0x10112b9e
and edx, 1
shl edx, 0x16
mov eax, 0xffbfffff
jmp 0x10112b9e
shl edx, 0x1f
mov eax, closesocket
jmp 0x10112b9e
mov eax, dword [0x101f1d30]
and edx, 1
and eax, 0xfffffffb
lea eax, [eax + edx*4]
jmp 0x10112b21
and edx, 1
shl edx, 0x15
mov eax, 0xffdfffff
jmp 0x10112b9e
shl edx, 0xf
movzx eax, dx
mov ecx, 0xffff7fff
jmp 0x10112b36
mov eax, dword [0x101f1d2c]
test edx, edx
je 0x1011295c
mov ecx, eax
and ecx, 0x100
jne case.0x101128ce.4
mov ecx, edx
and ecx, 1
shl ecx, 0xa
xor esi, esi
cmp byte [0x101f3f9c], 0
mov edi, ecx
cmovne edi, esi
test edx, edx
cmove edi, ecx
and eax, 0xfffffbff
or eax, edi
jmp 0x10112ba6
and edx, 1
shl edx, 0x1c
mov eax, 0xefffffff
jmp 0x10112b9e
and edx, 1
shl edx, 0xc
mov eax, 0xffffefff
jmp 0x10112b9e
and edx, 1
shl edx, 0x10
mov eax, 0xfffeffff
jmp 0x10112b9e
and edx, 1
shl edx, 0x14
mov eax, 0xffefffff
jmp 0x10112b9e
mov eax, dword [0x101f1d2c]
test edx, edx
je 0x101129d7
mov ecx, eax
and ecx, 0x20
jne case.0x101128ce.4
shl edx, 6
and edx, 0x40
and eax, 0xffffffbf
jmp 0x10112ba4
and edx, 1
shl edx, 0x12
mov eax, 0xfffbffff
jmp 0x10112b9e
and edx, 1
shl edx, 0x17
mov eax, 0xff7fffff
jmp 0x10112b9e
mov eax, dword [0x101f1d2c]
test edx, edx
je 0x10112a1c
mov ecx, eax
and ecx, 0x400
jne case.0x101128ce.4
and edx, 1
shl edx, 8
and eax, 0xfffffeff
jmp 0x10112ba4
and edx, 1
shl edx, 0x18
mov eax, 0xfeffffff
jmp 0x10112b9e
lea eax, [edx - 0x4002]
cmp eax, 0xffffc03d
jbe case.0x101128ce.4
mov word [0x101f1d24], dx
jmp case.0x101128ce.15
mov eax, dword [0x101f1d2c]
and edx, 1
and eax, 0xfffffffb
lea eax, [eax + edx*4]
jmp 0x10112ba6
mov ecx, 0x101f1d10
call fcn.10111fc0
jmp case.0x101128ce.15
and edx, 1
shl edx, 0x11
mov eax, 0xfffdffff
jmp 0x10112b9e
mov eax, dword [0x101f1d2c]
test edx, edx
je 0x10112a97
mov ecx, eax
and ecx, 0x40
jne case.0x101128ce.4
shl edx, 5
and edx, 0x20
and eax, 0xffffffdf
jmp 0x10112ba4
and byte [0x101f1d2c], 0xfd
test edx, edx
je case.0x101128ce.15
cmp dword [0x101f2f50], 0
je 0x10112bc9
mov eax, dword [0x101f25a4]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TlsGetValue]
sub esp, 4
test eax, eax
je 0x10112bb4
mov dword [eax + 0x28], 0xffffe005
xor ecx, ecx
mov dword [eax + 0x2c], ecx
mov dword [eax + 0x30], ecx
xor esi, esi
dec esi
jmp case.0x101128ce.15
and edx, 3
shl edx, 0xd
mov eax, 0xffff9fff
jmp 0x10112b9e
mov eax, dword [0x101f1d2c]
and edx, 3
and eax, 0xffffffe7
lea eax, [eax + edx*8]
jmp 0x10112ba6
mov eax, dword [0x101f1d30]
and edx, 1
and eax, 0xfffffffe
or eax, edx
mov dword [0x101f1d30], eax
jmp case.0x101128ce.15
shl edx, 7
movzx eax, dl
mov ecx, 0xffffff7f
and ecx, dword [0x101f1d2c]
or ecx, eax
mov dword [0x101f1d2c], ecx
jmp case.0x101128ce.15
and edx, 1
shl edx, 0x13
mov eax, 0xfff7ffff
jmp 0x10112b9e
and edx, 1
shl edx, 0x1a
mov eax, 0xfbffffff
jmp 0x10112b9e
and edx, 1
shl edx, 0x1d
mov eax, 0xdfffffff
jmp 0x10112b9e
mov ecx, 0x101f1d10
call fcn.10111eb0
jmp case.0x101128ce.15
and edx, 1
shl edx, 9
mov eax, 0xfffffdff
jmp 0x10112b9e
and edx, 1
shl edx, 0xb
mov eax, 0xfffff7ff
jmp 0x10112b9e
and edx, 1
shl edx, 0x1e
mov eax, 0xbfffffff
and eax, dword [0x101f1d2c]
or eax, edx
mov dword [0x101f1d2c], eax
mov eax, esi
add esp, 0x10
pop esi
pop edi
pop ebp
ret
movaps xmm0, xmmword [0x101af1a0]
movups xmmword [esp], xmm0
call fcn.1006d800
jmp 0x10112ada
call fcn.100029d0
jmp 0x10112ac1