Function at 0x6d685d6c
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov edi, ecx
push dword [0x6d7a23c4]
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
mov esi, dword [ebp + 8]
mov ebx, eax
mov eax, dword [esi + 4]
lea ecx, [eax + 8]
mov eax, dword [eax + 8]
call dword [eax + 0x88]
test eax, eax
je 0x6d685dc4
push esi
push ebx
lea ecx, [ebp + 8]
call fcn.6d645ee5
mov edi, dword [edi]
push 0x10
mov ecx, edi
call fcn.6d641b98
test eax, eax
je 0x6d686180
push dword [ebp + 8]
mov ecx, eax
call fcn.6d686d97
jmp 0x6d686182
mov eax, dword [esi + 4]
lea ecx, [eax + 8]
mov eax, dword [eax + 8]
call dword [eax + 0x8c]
test eax, eax
je 0x6d686012
push esi
push ebx
lea ecx, [ebp + 8]
call fcn.6d645ee5
mov eax, dword [esi + 8]
add esi, 8
mov ecx, esi
call dword [eax + 0x78]
test eax, eax
je 0x6d685e16
mov edi, dword [edi]
push 0x54
mov ecx, edi
call fcn.6d641b98
test eax, eax
je 0x6d686180
push dword [ebp + 8]
mov ecx, eax
call fcn.6d683c1b
jmp 0x6d686182
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x84]
test eax, eax
je 0x6d685e46
mov edi, dword [edi]
push 0x24
mov ecx, edi
call fcn.6d641b98
test eax, eax
je 0x6d686180
push dword [ebp + 8]
mov ecx, eax
call fcn.6d6851c1
jmp 0x6d686182
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0xa8]
test eax, eax
je 0x6d685e76
mov edi, dword [edi]
push 0x20
mov ecx, edi
call fcn.6d641b98
test eax, eax
je 0x6d686180
push dword [ebp + 8]
mov ecx, eax
call fcn.6d687185
jmp 0x6d686182
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x94]
test eax, eax
je 0x6d685ebb
mov edi, dword [edi]
push 0x18
mov ecx, edi
call fcn.6d641b98
mov esi, eax
test esi, esi
je 0x6d686180
mov edi, dword [ebp + 8]
push str.unique_methodKlass
call fcn.6d686f96
pop ecx
push eax
push edi
mov ecx, esi
call fcn.6d6841ab
mov dword [esi], sym.jvm.dll_const_ciMethodKlass::vftable
jmp 0x6d6860e5
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x88]
test eax, eax
je 0x6d685f00
mov edi, dword [edi]
push 0x18
mov ecx, edi
call fcn.6d641b98
mov esi, eax
test esi, esi
je 0x6d686180
mov edi, dword [ebp + 8]
push str.unique_symbolKlass
call fcn.6d686f96
pop ecx
push eax
push edi
mov ecx, esi
call fcn.6d6841ab
mov dword [esi], sym.jvm.dll_const_ciSymbolKlass::vftable
jmp 0x6d6860e5
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x8c]
test eax, eax
je 0x6d68616e
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0xb0]
test eax, eax
je 0x6d685f57
mov edi, dword [edi]
push 0x18
mov ecx, edi
call fcn.6d641b98
mov esi, eax
test esi, esi
je 0x6d686180
mov edi, dword [ebp + 8]
push str.unique_objArrayKlassKlass
call fcn.6d686f96
pop ecx
push eax
push edi
mov ecx, esi
call fcn.6d686610
mov dword [esi], sym.jvm.dll_const_ciObjArrayKlassKlass::vftable
jmp 0x6d6860e5
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0xb4]
test eax, eax
je 0x6d685f9c
mov edi, dword [edi]
push 0x18
mov ecx, edi
call fcn.6d641b98
mov esi, eax
test esi, esi
je 0x6d686180
mov edi, dword [ebp + 8]
push str.unique_typeArrayKlassKlass
call fcn.6d686f96
pop ecx
push eax
push edi
mov ecx, esi
call fcn.6d686610
mov dword [esi], sym.jvm.dll_const_ciTypeArrayKlassKlass::vftable
jmp 0x6d6860e5
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0xbc]
mov edi, dword [edi]
push 0x18
test eax, eax
mov ecx, edi
je 0x6d685fe1
call fcn.6d641b98
mov esi, eax
test esi, esi
je 0x6d686180
mov edi, dword [ebp + 8]
push str.unique_instanceKlassKlass
call fcn.6d686f96
pop ecx
push eax
push edi
mov ecx, esi
call fcn.6d6841ab
mov dword [esi], sym.jvm.dll_const_ciInstanceKlassKlass::vftable
jmp 0x6d6860e5
call fcn.6d641b98
mov esi, eax
test esi, esi
je 0x6d686180
mov edi, dword [ebp + 8]
push str.unique_klassKlass
call fcn.6d686f96
pop ecx
push eax
push edi
mov ecx, esi
call fcn.6d6841ab
mov dword [esi], sym.jvm.dll_const_ciKlassKlass::vftable
jmp 0x6d6860e5
mov eax, dword [esi + 4]
lea ecx, [eax + 8]
mov eax, dword [eax + 8]
call dword [eax + 0x94]
test eax, eax
je 0x6d686057
test esi, esi
je 0x6d686037
mov ecx, dword [ebx + 0x90]
push esi
call fcn.6d67a638
mov esi, eax
mov edi, dword [edi]
push 0x54
mov ecx, edi
call fcn.6d641b98
test eax, eax
je 0x6d686180
push esi
mov ecx, eax
call fcn.6d68445a
jmp 0x6d686182
mov eax, dword [esi + 4]
lea ecx, [eax + 8]
mov eax, dword [eax + 8]
call dword [eax + 0x9c]
test eax, eax
je 0x6d68609c
test esi, esi
je 0x6d68607c
mov ecx, dword [ebx + 0x90]
push esi
call fcn.6d67a638
mov esi, eax
mov edi, dword [edi]
push 0x64
mov ecx, edi
call fcn.6d641b98
test eax, eax
je 0x6d686180
push esi
mov ecx, eax
call fcn.6d684ec3
jmp 0x6d686182
mov eax, dword [esi + 4]
lea ecx, [eax + 8]
mov eax, dword [eax + 8]
call dword [eax + 0x78]
test eax, eax
je 0x6d6860ec
test esi, esi
jne 0x6d6860b4
xor ebx, ebx
jmp 0x6d6860c2
mov ecx, dword [ebx + 0x90]
push esi
call fcn.6d67a638
mov ebx, eax
mov edi, dword [edi]
push 0x10
mov ecx, edi
call fcn.6d641b98
mov esi, eax
test esi, esi
je 0x6d686180
push ebx
mov ecx, esi
call fcn.6d68555c
mov dword [esi], sym.jvm.dll_const_ciInstance::vftable
mov eax, esi
jmp 0x6d686182
mov eax, dword [esi + 4]
lea ecx, [eax + 8]
mov eax, dword [eax + 8]
call dword [eax + 0x84]
test eax, eax
je 0x6d68612d
test esi, esi
je 0x6d686114
mov ecx, dword [ebx + 0x90]
push 4
call fcn.6d645be3
mov dword [eax], esi
mov esi, eax
mov edi, dword [edi]
push 0x14
mov ecx, edi
call fcn.6d641b98
test eax, eax
je 0x6d686180
push esi
mov ecx, eax
call fcn.6d68618f
jmp 0x6d686182
mov eax, dword [esi + 4]
lea ecx, [eax + 8]
mov eax, dword [eax + 8]
call dword [eax + 0xa8]
test eax, eax
je 0x6d68616e
test esi, esi
je 0x6d686155
mov ecx, dword [ebx + 0x90]
push 4
call fcn.6d645be3
mov dword [eax], esi
mov esi, eax
mov edi, dword [edi]
push 0x14
mov ecx, edi
call fcn.6d641b98
test eax, eax
je 0x6d686180
push esi
mov ecx, eax
call fcn.6d6861cc
jmp 0x6d686182
push 0x136
push str.C:_BUILD_AREA_jdk1.5.0_13_hotspot_src_share_vmciciObjectFactory.cpp
call fcn.6d6a37b4
pop ecx
pop ecx
int3
xor eax, eax
pop edi
pop esi
pop ebx
pop ebp
ret 4