Function at 0x100c06b0
Capabilities:
Get thread local storage value

Disassembly:
mov edi, edi
push ebx
push esi
mov esi, ecx
push edi
mov edi, dword [esi + 0x1029c]
xor ebx, ebx
mov dword [esi], 0x10087b88
cmp edi, ebx
je 0x100c06e8
mov eax, dword [0x101e316c]
cmp eax, ebx
jge 0x100c06d6
xor eax, eax
jmp 0x100c06dd
push eax
call dword [sym.imp.kernel32.dll_TlsGetValue]
mov eax, dword [eax]
push edi
push ebx
push eax
call dword [sym.imp.kernel32.dll_HeapFree]
mov edi, dword [esi + 0x102b4]
cmp edi, ebx
je 0x100c0711
mov eax, dword [0x101e316c]
cmp eax, ebx
jge 0x100c06ff
xor eax, eax
jmp 0x100c0706
push eax
call dword [sym.imp.kernel32.dll_TlsGetValue]
mov ecx, dword [eax]
push edi
push ebx
push ecx
call dword [sym.imp.kernel32.dll_HeapFree]
mov eax, dword [esi + 0x10328]
cmp eax, ebx
je 0x100c0729
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
mov dword [esi + 0x10328], ebx
mov dword [esi + 0x10380], ebx
cmp byte [esi + 0x10384], bl
je 0x100c0766
mov edi, dword [esi + 0x10378]
cmp edi, ebx
je 0x100c0760
mov eax, dword [0x101e316c]
cmp eax, ebx
jge 0x100c074e
xor eax, eax
jmp 0x100c0755
push eax
call dword [sym.imp.kernel32.dll_TlsGetValue]
mov ecx, dword [eax]
push edi
push ebx
push ecx
call dword [sym.imp.kernel32.dll_HeapFree]
mov byte [esi + 0x10384], bl
mov dword [esi + 0x10378], ebx
mov dword [esi + 0x1037c], ebx
mov dword [esi + 0x10370], ebx
cmp byte [esi + 0x10374], bl
je 0x100c07af
mov edi, dword [esi + 0x10368]
cmp edi, ebx
je 0x100c07a9
mov eax, dword [0x101e316c]
cmp eax, ebx
jge 0x100c0797
xor eax, eax
jmp 0x100c079e
push eax
call dword [sym.imp.kernel32.dll_TlsGetValue]
mov edx, dword [eax]
push edi
push ebx
push edx
call dword [sym.imp.kernel32.dll_HeapFree]
mov byte [esi + 0x10374], bl
mov dword [esi + 0x10368], ebx
mov dword [esi + 0x1036c], ebx
mov eax, dword [esi + 0x10358]
push eax
mov eax, dword [esi + 0x10360]
xor ecx, ecx
call fcn.101091d0
mov dword [esi + 0x10360], ebx
cmp byte [esi + 0x10364], bl
je 0x100c080c
mov edi, dword [esi + 0x10358]
cmp edi, ebx
je 0x100c0806
mov eax, dword [0x101e316c]
cmp eax, ebx
jge 0x100c07f4
xor eax, eax
jmp 0x100c07fb
push eax
call dword [sym.imp.kernel32.dll_TlsGetValue]
mov ecx, dword [eax]
push edi
push ebx
push ecx
call dword [sym.imp.kernel32.dll_HeapFree]
mov byte [esi + 0x10364], bl
mov dword [esi + 0x10358], ebx
mov dword [esi + 0x1035c], ebx
mov edx, dword [esi + 0x1033c]
mov eax, dword [esi + 0x10344]
push edx
xor ecx, ecx
call fcn.101091d0
mov dword [esi + 0x10344], ebx
cmp byte [esi + 0x10348], bl
je 0x100c0869
mov edi, dword [esi + 0x1033c]
cmp edi, ebx
je 0x100c0863
mov eax, dword [0x101e316c]
cmp eax, ebx
jge 0x100c0851
xor eax, eax
jmp 0x100c0858
push eax
call dword [sym.imp.kernel32.dll_TlsGetValue]
mov eax, dword [eax]
push edi
push ebx
push eax
call dword [sym.imp.kernel32.dll_HeapFree]
mov byte [esi + 0x10348], bl
mov dword [esi + 0x1033c], ebx
mov dword [esi + 0x10340], ebx
mov ecx, dword [esi + 0x1032c]
mov eax, dword [esi + 0x10334]
push ecx
xor ecx, ecx
call fcn.101091d0
mov dword [esi + 0x10334], ebx
cmp byte [esi + 0x10338], bl
je 0x100c08c6
mov edi, dword [esi + 0x1032c]
cmp edi, ebx
je 0x100c08c0
mov eax, dword [0x101e316c]
cmp eax, ebx
jge 0x100c08ae
xor eax, eax
jmp 0x100c08b5
push eax
call dword [sym.imp.kernel32.dll_TlsGetValue]
mov edx, dword [eax]
push edi
push ebx
push edx
call dword [sym.imp.kernel32.dll_HeapFree]
mov byte [esi + 0x10338], bl
pop edi
mov dword [esi + 0x1032c], ebx
mov dword [esi + 0x10330], ebx
mov ecx, esi
pop esi
pop ebx
jmp fcn.101627d0