Function at 0x10054bab
Capabilities:
Get thread local storage value

Disassembly:
sub esp, 0x40
push ebx
push ebp
push esi
mov esi, dword [esp + 0x54]
mov ebp, dword [esi + 0x18]
push edi
xor edi, edi
or ebx, 0xffffffff
mov dword [esp + 0x10], edi
mov dword [esp + 0x58], ebp
mov dword [esp + 0x14], 0x3004
call fcn.10057e50
mov eax, dword [esi + 0x1c]
cmp eax, edi
jne 0x10054b85
push 0x11
push esi
call fcn.10055ad0
cmp eax, edi
jne 0x10054b85
cmp word [esp + 0x60], di
jbe 0x10054b6d
mov eax, dword [esp + 0x5c]
push eax
push ebp
call fcn.1004ae90
push 1
push edi
push esi
push 0xfffffbfb
call fcn.1005a550
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x40
ret 0x10
mov eax, dword [esi + 0x10]
cmp eax, 0x25
jge 0x10054e31
add eax, 0xffffffff
cmp eax, 0xb
ja case.0x10054ba4.1
movzx ecx, byte [eax + 0x10054e68]
jmp dword [ecx*4 + 0x10054e5c]
mov eax, dword [esp + 0x5c]
mov edx, dword [esi + 0x494]
mov ebx, dword [esi + 0x4a0]
push eax
mov dword [esp + 0x14], esi
mov dword [esp + 0x64], edx
call fcn.10020570
mov edi, eax
add edi, 1
lea ecx, [edi + edi]
push ecx
push esi
push ebp
call fcn.1004af50
mov ebp, eax
test ebp, ebp
je 0x10054bf9
mov edx, dword [esp + 0x5c]
push 0
push 0
push edx
call fcn.100205a0
pop edi
pop esi
mov eax, ebp
pop ebp
pop ebx
add esp, 0x40
ret 0x10
mov eax, dword [0x1007eed0]
push eax
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
mov ebp, dword [eax + 0x38]
mov ecx, dword [esp + 0x5c]
push edi
push ebp
push ecx
call fcn.100205a0
mov eax, dword [esp + 0x60]
push 1
push 0x38
lea edx, [esp + 0x20]
push edx
push 0
push ebp
push eax
push ebx
call dword [0x1007ef80]
test eax, eax
jge 0x10054c51
push ebp
push ebx
push esi
push eax
call fcn.1005a1e0
mov ecx, dword [esp + 0x58]
push ecx
mov esi, eax
call fcn.1004b060
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x40
ret 0x10
mov edx, dword [esp + 0x58]
push edx
call fcn.1004b060
mov ebp, dword [esp + 0x58]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x10]
mov edi, dword [esp + 0x54]
push 0
push 0
push ecx
push edx
push 0x21260
push 0xffffffffffffffff
push str.ListFields_Snapshot
push eax
push edi
push ebx
push ebp
call fcn.10053540
mov esi, eax
test esi, esi
jne 0x10054d61
mov edx, dword [esp + 0x28]
mov ecx, dword [edi]
mov edi, dword [ecx + 0x300]
push eax
push edx
push 0xa
push 0x100768d4
push edi
call fcn.10054630
mov esi, eax
test esi, esi
jl 0x10054d5d
mov eax, dword [esp + 0x30]
push 0
push eax
push 4
push 0x100768e0
push edi
call fcn.10054630
mov esi, eax
test esi, esi
jl 0x10054d5d
mov ecx, dword [esp + 0x38]
push 0
push ecx
push 4
push str.Size
push edi
call fcn.10054630
mov esi, eax
test esi, esi
jl 0x10054d5d
mov edx, dword [esp + 0x34]
push 0
push edx
push 4
push str.CollatingOrder
push edi
call fcn.10054630
mov esi, eax
test esi, esi
jl 0x10054d5d
mov eax, dword [esp + 0x44]
push 0
push eax
push 0xa
push str.SourceTable
push edi
call fcn.10054630
mov esi, eax
test esi, esi
jl 0x10054d5d
mov ecx, dword [esp + 0x48]
push 0
push ecx
push 0xa
push str.SourceField
push edi
call fcn.10054630
mov esi, eax
test esi, esi
jl 0x10054d5d
mov edx, dword [esp + 0x3c]
push 0
push edx
push 4
push str.Attributes
push edi
call fcn.10054630
mov esi, eax
test esi, esi
jge 0x10054e15
mov edi, dword [esp + 0x54]
mov eax, dword [esp + 0x1c]
push eax
push ebx
call dword [0x1007ef1c]
mov edi, dword [edi]
test edi, edi
je 0x10054d79
push edi
call fcn.100573a0
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x40
ret 0x10
cmp word [esp + 0x60], di
je 0x10054daf
mov eax, dword [esp + 0x5c]
push eax
push ebp
call fcn.1004ae90
push 1
push edi
push esi
push 0xfffffc15
call fcn.1005a550
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x40
ret 0x10
test word [esi + 0x26c], 0x2000
je 0x10054dce
mov ebx, dword [esi + 0x298]
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], 0x2004
jmp 0x10054de2
mov ecx, dword [esi + 0x30]
mov eax, dword [ecx + 0x34]
cmp eax, edi
mov dword [esp + 0x10], eax
je 0x10054e43
mov ebx, dword [eax + 0x4a0]
mov eax, dword [esi + 0x2a0]
push 1
push 0x38
lea edx, [esp + 0x20]
push edx
push edi
push eax
push ebx
call dword [0x1007efb8]
cmp eax, edi
jge case.0x10054ba4.1
push edi
push ebx
push esi
push eax
call fcn.1005a1e0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x40
ret 0x10
mov ecx, dword [esp + 0x54]
mov edx, dword [ecx]
pop edi
pop esi
pop ebp
mov dword [edx + 0x2e4], 1
xor eax, eax
pop ebx
add esp, 0x40
ret 0x10
cmp word [esp + 0x60], di
jbe 0x10054e43
mov eax, dword [esp + 0x5c]
push eax
push ebp
call fcn.1004ae90
push 1
push edi
push esi
push 0xffff8abf
call fcn.1005a550
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x40
ret 0x10