Function at 0x46ac46
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x54
push ebx
push esi
push edi
xor edi, edi
mov esi, ecx
inc edi
lea ecx, [ebp - 0x2c]
xor ebx, ebx
push edi
mov dword [ebp - 0x10], ebx
call fcn.0043694d
mov dword [ebp - 0x10], 0x5c6eff3d
mov dword [ebp - 0x10], 0xacde9e84
push 3
mov dword [ebp - 0x10], 0x40c1
mov dword [ebp - 8], ebx
pop edx
jmp 0x46ac8b
mov ecx, dword [ebp - 8]
mov eax, dword [ebp - 0x2c]
mov dword [eax + ecx*4], edx
inc dword [ebp - 8]
cmp dword [ebp - 8], edi
jl 0x46ac7f
mov dword [ebp - 8], ebx
jmp 0x46aca3
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x14], 0xbd697e78
inc dword [ebp - 8]
cmp dword [ebp - 8], edi
jl 0x46ac95
mov dword [ebp - 8], ebx
jmp 0x46acb7
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x38], edi
inc dword [ebp - 8]
cmp dword [ebp - 8], edx
jl 0x46acad
mov eax, dword [ebp - 0x2c]
mov dword [eax], ebx
inc dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov edx, dword [ebp - 0x2c]
mov ecx, dword [edx]
inc ecx
sub ecx, eax
neg ecx
sbb ecx, ecx
inc ecx
mov dword [edx], ecx
lea ecx, [ebp - 0x2c]
call fcn.00436a1f
push 0x1ee0
push esi
push edi
push 0x3faf
push edi
push 0x6d4b
push 0x74b5
push edi
push 0x6f67
call fcn.0045f28d
push esi
call fcn.004330b0
add esp, 0x28
mov dword [ebp - 8], 0xa9d1
lea ecx, [ebp - 0x44]
mov esi, eax
push edi
call fcn.0043694d
push 3
mov dword [ebp - 0xc], 0xffffffff
pop edx
mov dword [ebp - 0x10], edx
mov dword [ebp - 0xc], ebx
jmp 0x46ad3b
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0x20], 0xbefa5f9c
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 2
jl 0x46ad2d
mov dword [ebp - 0xc], ebx
cmp dword [ebp - 0xc], edi
jge 0x46ad61
push dword [ebp - 0xc]
lea ecx, [ebp - 0x44]
call fcn.00436a3b
mov dword [eax], ebx
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], edi
jl 0x46ad49
push 3
pop edx
cmp dword [ebp - 8], ebx
je 0x46ad6f
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 8]
xor ecx, ecx
mov eax, dword [ebp - 8]
cmp eax, 0x4b5c
setge cl
add ecx, dword [ebp - 8]
je 0x46ade5
mov dword [ebp - 0xc], 0x3ecf
mov dword [ebp - 0xc], 0xbae0fc36
mov dword [ebp - 0xc], 0xfffffff6
mov dword [ebp - 0xc], edi
mov dword [ebp - 0xc], ebx
mov dword [ebp - 0xc], edx
mov dword [ebp - 0xc], edx
mov dword [ebp - 0xc], 0xfffffffc
mov dword [ebp - 0xc], ebx
jmp 0x46adbb
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0x18], ebx
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], edi
jl 0x46adb1
mov dword [ebp - 8], ebx
jmp 0x46addb
mov byte [ebp - 1], bl
cmp byte [ebp - 1], bl
je 0x46add8
push 0x14ca
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
inc dword [ebp - 8]
cmp dword [ebp - 8], edi
jle 0x46adc5
dec dword [ebp - 0x10]
jmp 0x46ae22
mov dword [ebp - 0x10], 0xf84b0f4
mov dword [ebp - 0xc], 0xffffffef
jmp 0x46ae07
mov dword [ebp - 0x54], ebx
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x50], edi
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 6
jl 0x46adf5
mov byte [ebp - 1], bl
cmp byte [ebp - 1], bl
je 0x46ae22
push ebx
push 0x148
push ebx
call dword [sym.imp.GDI32.dll_GetEnhMetaFileHeader]
lea ecx, [ebp - 0x44]
call fcn.00436a1f
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret