Function at 0x1001e4cc
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xa4
cmp byte [ebp + 0xc], 0
push ebx
push esi
push edi
mov ebx, edx
je 0x1001e4f0
push 0xec7
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
jmp 0x1001e8da
mov eax, dword [ebp + 0x14]
or ecx, 0xffffffff
mov dword [ebp - 0x30], eax
mov eax, dword [eax]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x74], ecx
mov dword [ebp - 0x70], ecx
mov dword [ebp - 0x6c], ecx
mov dword [ebp - 0x68], ecx
mov dword [ebp - 0xc], 9
mov dword [ebp - 0x20], 0x43c6fe23
mov dword [ebp - 8], 0xfffffff7
mov dword [ebp - 8], 0xee49
mov dword [ebp - 0x3c], 0xfa8fad74
mov dword [ebp - 0x58], 0x4549
mov dword [ebp - 4], 0
jmp 0x1001e547
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x50], ecx
inc dword [ebp - 4]
cmp dword [ebp - 4], 2
jl 0x1001e53d
mov eax, dword [ebp - 0x70]
xor edx, edx
test eax, eax
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 8]
setne dl
inc dword [ebp - 8]
mov eax, dword [ebp - 0xc]
xor ecx, ecx
cmp edx, eax
push 0
setge cl
xor edx, edx
mov dword [ebp - 0xc], ecx
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x20]
cmp eax, ecx
setle dl
xor eax, eax
cmp edx, 0xdd93
setne al
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x50]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0x74], eax
jle 0x1001e5ba
mov edx, 0x4625
mov byte [ebp - 0x19], 0
lea ecx, [ebp - 0x19]
call fcn.1001fbd0
pop ecx
call fcn.1001efd1
jmp 0x1001e5df
push ecx
push 0x393d
lea eax, [ebp - 0x48]
mov dword [ebp - 0x48], 0x43747c91
push eax
lea eax, [ebp - 0x3c]
mov edx, 0x3131
push eax
lea ecx, [ebp - 0x58]
call fcn.1001d8f4
add esp, 0x14
push 0x104e
push ecx
lea eax, [ebp - 0x2c]
mov edx, 0x2d60
push eax
push 0
push ecx
lea eax, [ebp - 0x30]
mov ecx, 0x527f
push eax
call fcn.1001f80e
xor esi, esi
add esp, 0x18
xor edi, edi
inc esi
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x24], 0x979cd329
mov dword [ebp - 0x14], 6
mov dword [ebp - 0x18], 0xfffffffe
mov dword [ebp - 0x18], 0xfffffffe
mov dword [ebp - 4], 0
jmp 0x1001e644
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x8c], 0xa2b82c44
inc dword [ebp - 4]
cmp dword [ebp - 4], 2
jl 0x1001e633
push 0x7a0d
push 0x52d1
lea eax, [ebp - 0x34]
mov edx, 0x6fd7
push eax
push 0x5ac
push 0
push 0x3995
lea eax, [ebp - 0x14]
push eax
push esi
push 0x1f71
push ecx
push esi
mov ecx, 0x2ae4
call fcn.1001db97
add esp, 0x2c
mov dword [ebp - 0x14], 0
jmp 0x1001e75a
mov dword [ebp - 0x20], 0x1b07fb07
lea eax, [ebp - 0x1a]
push ecx
mov dword [ebp - 4], 0xffffffff
xor cl, cl
mov dword [ebp - 8], 0x5dd4d14b
mov dword [ebp - 0x60], 4
push 0x5dc3
mov dword [ebp - 0xc], 2
mov byte [ebp - 0x1a], 0
push eax
call fcn.1001d7f1
add esp, 0xc
mov dword [ebp - 0x24], 0
jmp 0x1001e74e
mov dword [ebp - 0x18], 0x3526c715
mov dword [ebp - 0x38], 0xfffffffe
mov dword [ebp - 0x38], 0xf4dad240
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0x8c], 0
jne 0x1001e719
dec dword [ebp - 0xc]
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 4]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov eax, dword [ebp - 0xc]
setg cl
sub eax, ecx
add eax, dword [ebp - 0x14]
mov dword [ebp - 0x60], eax
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
cmp dword [ebp - 0x34], 0x29adbd3d
jge 0x1001e72f
cmp dword [ebp - 0x38], 0
jne 0x1001e72f
xor ecx, ecx
jmp 0x1001e731
mov ecx, esi
mov eax, dword [ebp - 4]
xor edx, edx
cmp ecx, eax
sete dl
xor ecx, ecx
add edx, dword [ebp - 0x18]
mov eax, dword [ebp - 4]
cmp edx, eax
setg cl
mov dword [ebp - 0x18], ecx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], esi
jle 0x1001e6d2
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jle 0x1001e68e
mov esi, dword [ebp - 0x30]
mov dl, 0x5e
mov cl, byte [edi + esi]
call fcn.1002672a
mov byte [edi + esi], al
inc edi
push 1
pop esi
cmp edi, 4
jb 0x1001e607
mov eax, 0xfff7
xor ecx, ecx
mov dword [ebp - 0x84], eax
xor edx, edx
mov dword [ebp - 0x80], eax
inc edx
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0x78], eax
mov dword [ebp - 8], ecx
mov dword [ebp - 0x10], edx
mov dword [ebp - 4], 0x923607a9
mov dword [ebp - 0x18], 0x4a20a298
mov dword [ebp - 0x64], edx
mov dword [ebp - 0xc], 0x3dda37bb
mov dword [ebp - 0x18], edx
mov dword [ebp - 0x44], 0xab4456e3
mov dword [ebp - 0x54], 0xea311c3f
mov dword [ebp - 4], ecx
jmp 0x1001e7d7
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x5c], edx
inc dword [ebp - 4]
cmp dword [ebp - 4], edx
jl 0x1001e7cd
push 2
mov dword [ebp - 4], ecx
pop esi
jmp 0x1001e7f5
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0xa0], 0x9683648b
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jl 0x1001e7e4
push 3
pop edi
mov dword [ebp - 8], edi
cmp dword [ebp - 8], ecx
jl 0x1001e8d5
mov dword [ebp - 0x18], 0xffffffff
mov dword [ebp - 4], ecx
jmp 0x1001e826
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x98], 0xd00693e9
inc dword [ebp - 4]
cmp dword [ebp - 4], edi
jl 0x1001e815
push ecx
push ecx
mov edx, 0x66ed
lea ecx, [ebp - 0x54]
call fcn.1001fa33
add esp, 8
xor ecx, ecx
mov dword [ebp - 4], ecx
jmp 0x1001e8c3
mov dword [ebp - 0x28], 0x75cf
mov dword [ebp - 0x10], ecx
cmp dword [ebp - 0x10], esi
jg 0x1001e882
mov eax, dword [ebp - 4]
xor edx, edx
mov ecx, dword [ebp + eax*4 - 0x5c]
mov eax, dword [ebp - 4]
add ecx, dword [ebp + eax*4 - 0x84]
mov eax, dword [ebp - 0x28]
cmp ecx, eax
mov eax, dword [ebp - 0x10]
setle dl
mov dword [ebp + eax*4 - 0x98], edx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jle 0x1001e853
xor ecx, ecx
mov dword [ebp - 0xc], ecx
cmp dword [ebp - 0xc], ecx
jl 0x1001e8c0
push 0x743e
lea eax, [ebp - 0x64]
mov dword [ebp - 0x40], 0xb8319b88
push eax
lea eax, [ebp - 0x40]
push eax
push 0x5fb4
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x28]
push eax
push ecx
lea edx, [ebp - 0x10]
xor cl, cl
call fcn.1001f08c
add esp, 0x1c
dec dword [ebp - 0xc]
jns 0x1001e88a
xor ecx, ecx
inc dword [ebp - 4]
cmp dword [ebp - 4], ecx
jle 0x1001e844
dec dword [ebp - 8]
jns 0x1001e809
mov eax, dword [ebp - 0x2c]
mov dword [ebx], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret