Function at 0x6d6837a8
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
mov eax, dword [ebp + 8]
push ebx
push esi
mov esi, ecx
mov ecx, dword [eax]
mov ebx, dword [sym.imp.KERNEL32.dll_TlsGetValue]
mov dword [esi], ecx
mov ecx, dword [eax + 0x10]
mov dword [esi + 0xc], ecx
mov eax, dword [eax + 0x1c]
push edi
mov eax, dword [eax]
push dword [0x6d7a23c4]
mov edi, dword [eax + 0x14]
call ebx
mov eax, dword [eax + 0x164]
test edi, edi
jne 0x6d6837e7
mov eax, dword [0x6d7b5438]
jmp 0x6d6837f0
mov ecx, dword [eax + 0x1c]
push edi
call fcn.6d685c47
mov ecx, eax
mov dword [esi + 4], eax
call fcn.6d6546ba
test eax, eax
je 0x6d68397a
mov eax, dword [esi]
test al, 0x10
je 0x6d68397a
test al, 8
je 0x6d68397a
mov eax, dword [esi + 4]
mov eax, dword [eax + 4]
mov edi, dword [eax]
cmp edi, dword [0x6d7bf7d4]
jne 0x6d68384e
call fcn.6d6c9fa6
cmp dword [esi + 0xc], eax
je 0x6d68397a
call fcn.6d6c9fb4
cmp dword [esi + 0xc], eax
je 0x6d68397a
call fcn.6d6c9fc2
cmp dword [esi + 0xc], eax
je 0x6d68397a
mov eax, dword [esi + 8]
mov dword [esi + 0x10], 1
mov eax, dword [eax + 0x10]
lea ecx, [eax - 4]
cmp ecx, 9
ja case.default.0x6d683867
jmp dword [ecx*4 + 0x6d683985]
mov dword [ebp - 0x10], eax
mov eax, dword [esi + 0xc]
movsx eax, byte [eax + edi]
lea edi, [esi + 0x18]
mov dword [ebp - 8], eax
lea esi, [ebp - 0x10]
jmp 0x6d683949
mov dword [ebp - 0x10], eax
mov eax, dword [esi + 0xc]
movzx eax, word [eax + edi]
lea edi, [esi + 0x18]
mov dword [ebp - 8], eax
lea esi, [ebp - 0x10]
jmp 0x6d683949
mov dword [ebp - 0x10], eax
mov eax, dword [esi + 0xc]
movsx eax, word [eax + edi]
lea edi, [esi + 0x18]
mov dword [ebp - 8], eax
lea esi, [ebp - 0x10]
jmp 0x6d683949
mov dword [ebp - 0x10], eax
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + edi]
lea edi, [esi + 0x18]
mov dword [ebp - 8], eax
lea esi, [ebp - 0x10]
jmp 0x6d683949
mov dword [ebp - 0x10], eax
mov eax, dword [esi + 0xc]
mov eax, dword [eax + edi]
lea edi, [esi + 0x18]
mov dword [ebp - 8], eax
lea esi, [ebp - 0x10]
jmp 0x6d683949
mov eax, dword [esi + 0xc]
mov dword [ebp - 0x10], 6
fld dword [eax + edi]
fstp dword [ebp - 8]
lea edi, [esi + 0x18]
lea esi, [ebp - 0x10]
jmp 0x6d683949
mov eax, dword [esi + 0xc]
mov dword [ebp - 0x10], 7
fld qword [eax + edi]
fstp qword [ebp - 8]
lea edi, [esi + 0x18]
lea esi, [ebp - 0x10]
jmp 0x6d683949
mov eax, dword [esi + 0xc]
mov dword [ebp - 0x10], 0xb
mov ecx, dword [eax + edi]
mov dword [ebp - 8], ecx
mov eax, dword [eax + edi + 4]
lea edi, [esi + 0x18]
mov dword [ebp - 4], eax
lea esi, [ebp - 0x10]
jmp 0x6d683949
mov ecx, dword [esi + 0xc]
mov edi, dword [ecx + edi]
test edi, edi
jne 0x6d68394f
mov dword [ebp - 0x10], eax
call fcn.6d6851af
lea edi, [esi + 0x18]
mov dword [ebp - 8], eax
lea esi, [ebp - 0x10]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
jmp case.default.0x6d683867
push dword [0x6d7a23c4]
call ebx
mov eax, dword [eax + 0x164]
push edi
mov ecx, dword [eax + 0x1c]
call fcn.6d685c47
mov ecx, dword [esi + 8]
lea edi, [esi + 0x18]
mov dword [ebp - 8], eax
lea esi, [ebp - 0x10]
mov ecx, dword [ecx + 0x10]
mov dword [ebp - 0x10], ecx
jmp 0x6d683949
and dword [esi + 0x10], 0
pop edi
pop esi
pop ebx
leave
ret 4