Function at 0x10113e60
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
sub esp, 0x10
call fcn.1010cf40
mov esi, eax
test eax, eax
jne case.0x10113e8e.15
mov edi, dword [ebp + 8]
call fcn.10113ce0
dec edi
cmp edi, 0x28
ja case.0x10113e8e.4
mov edx, dword [ebp + 0xc]
xor esi, esi
jmp dword [edi*4 + 0x101c9464]
mov eax, dword [0x101f3d54]
and edx, 1
and eax, 0xfffffffe
jmp 0x10114164
and edx, 1
shl edx, 0x1b
mov eax, 0xf7ffffff
jmp 0x1011415e
and edx, 1
shl edx, 0x16
mov eax, 0xffbfffff
jmp 0x1011415e
shl edx, 0x1f
mov eax, closesocket
jmp 0x1011415e
mov eax, dword [0x101f3d58]
and edx, 1
and eax, 0xfffffffb
lea eax, [eax + edx*4]
jmp 0x101140e1
and edx, 1
shl edx, 0x15
mov eax, 0xffdfffff
jmp 0x1011415e
shl edx, 0xf
movzx eax, dx
mov ecx, 0xffff7fff
jmp 0x101140f6
mov eax, dword [0x101f3d54]
test edx, edx
je 0x10113f1c
mov ecx, eax
and ecx, 0x100
jne case.0x10113e8e.4
mov ecx, edx
and ecx, 1
shl ecx, 0xa
xor esi, esi
cmp byte [0x101f5fcc], 0
mov edi, ecx
cmovne edi, esi
test edx, edx
cmove edi, ecx
and eax, 0xfffffbff
or eax, edi
jmp 0x10114166
and edx, 1
shl edx, 0x1c
mov eax, 0xefffffff
jmp 0x1011415e
and edx, 1
shl edx, 0xc
mov eax, 0xffffefff
jmp 0x1011415e
and edx, 1
shl edx, 0x10
mov eax, 0xfffeffff
jmp 0x1011415e
and edx, 1
shl edx, 0x14
mov eax, 0xffefffff
jmp 0x1011415e
mov eax, dword [0x101f3d54]
test edx, edx
je 0x10113f97
mov ecx, eax
and ecx, 0x20
jne case.0x10113e8e.4
shl edx, 6
and edx, 0x40
and eax, 0xffffffbf
jmp 0x10114164
and edx, 1
shl edx, 0x12
mov eax, 0xfffbffff
jmp 0x1011415e
and edx, 1
shl edx, 0x17
mov eax, 0xff7fffff
jmp 0x1011415e
mov eax, dword [0x101f3d54]
test edx, edx
je 0x10113fdc
mov ecx, eax
and ecx, 0x400
jne case.0x10113e8e.4
and edx, 1
shl edx, 8
and eax, 0xfffffeff
jmp 0x10114164
and edx, 1
shl edx, 0x18
mov eax, 0xfeffffff
jmp 0x1011415e
lea eax, [edx - 0x4002]
cmp eax, 0xffffc03d
jbe case.0x10113e8e.4
mov word [0x101f3d4c], dx
jmp case.0x10113e8e.15
mov eax, dword [0x101f3d54]
and edx, 1
and eax, 0xfffffffb
lea eax, [eax + edx*4]
jmp 0x10114166
mov ecx, 0x101f3d38
call fcn.10113580
jmp case.0x10113e8e.15
and edx, 1
shl edx, 0x11
mov eax, 0xfffdffff
jmp 0x1011415e
mov eax, dword [0x101f3d54]
test edx, edx
je 0x10114057
mov ecx, eax
and ecx, 0x40
jne case.0x10113e8e.4
shl edx, 5
and edx, 0x20
and eax, 0xffffffdf
jmp 0x10114164
and byte [0x101f3d54], 0xfd
test edx, edx
je case.0x10113e8e.15
cmp dword [0x101f4f80], 0
je 0x10114189
mov eax, dword [0x101f45d4]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TlsGetValue]
sub esp, 4
test eax, eax
je 0x10114174
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.0x10113e8e.15
and edx, 3
shl edx, 0xd
mov eax, 0xffff9fff
jmp 0x1011415e
mov eax, dword [0x101f3d54]
and edx, 3
and eax, 0xffffffe7
lea eax, [eax + edx*8]
jmp 0x10114166
mov eax, dword [0x101f3d58]
and edx, 1
and eax, 0xfffffffe
or eax, edx
mov dword [0x101f3d58], eax
jmp case.0x10113e8e.15
shl edx, 7
movzx eax, dl
mov ecx, 0xffffff7f
and ecx, dword [0x101f3d54]
or ecx, eax
mov dword [0x101f3d54], ecx
jmp case.0x10113e8e.15
and edx, 1
shl edx, 0x13
mov eax, 0xfff7ffff
jmp 0x1011415e
and edx, 1
shl edx, 0x1a
mov eax, 0xfbffffff
jmp 0x1011415e
and edx, 1
shl edx, 0x1d
mov eax, 0xdfffffff
jmp 0x1011415e
mov ecx, 0x101f3d38
call fcn.10113470
jmp case.0x10113e8e.15
and edx, 1
shl edx, 9
mov eax, 0xfffffdff
jmp 0x1011415e
and edx, 1
shl edx, 0xb
mov eax, 0xfffff7ff
jmp 0x1011415e
and edx, 1
shl edx, 0x1e
mov eax, 0xbfffffff
and eax, dword [0x101f3d54]
or eax, edx
mov dword [0x101f3d54], eax
mov eax, esi
add esp, 0x10
pop esi
pop edi
pop ebp
ret
movaps xmm0, xmmword [0x101b11e0]
movups xmmword [esp], xmm0
call fcn.1006e720
jmp 0x1011409a
call fcn.1001b2e0
jmp 0x10114081