Function at 0x63a02410
Capabilities:
Get thread local storage value

Disassembly:
lea ecx, [esp + 4]
and esp, 0xfffffff0
push dword [ecx - 4]
mov edx, ecx
push ebp
mov ebp, esp
push edi
push esi
push ebx
push ecx
sub esp, 0x258
mov eax, dword [edx + 0xc]
mov esi, dword [ecx]
mov edi, dword [edx + 8]
mov ecx, dword [ecx + 4]
mov dword [ebp - 0x224], eax
mov eax, dword [edx + 0x10]
mov ebx, dword [edx + 0x1c]
mov dword [ebp - 0x220], eax
mov eax, dword [edx + 0x14]
mov dword [ebp - 0x228], eax
mov eax, dword [edx + 0x18]
mov dword [ebp - 0x21c], eax
test byte [0x63a08048], 8
jne 0x63a025d8
cmp ebx, 0x80
jle 0x63a02490
test byte [0x63a08048], 1
jne 0x63a02650
lea esp, [ebp - 0x10]
pop ecx
pop ebx
pop esi
pop edi
pop ebp
lea esp, [ecx - 4]
ret
lea eax, [edx + 0x20]
mov dword [ebp - 0x22c], eax
test edi, edi
jle 0x63a02500
cmp esi, ecx
jle 0x63a02500
mov dword [ebp - 0x218], esi
mov dword [ebp - 0x214], ecx
cmp ebx, 2
je 0x63a024d5
mov edi, dword [ebp - 0x22c]
lea eax, [ebp - 0x210]
lea edx, [ebx*4 - 8]
mov dword [esp + 8], edx
mov dword [esp + 4], edi
mov dword [esp], eax
call sym._memcpy
lea eax, [ebp - 0x218]
mov dword [esp + 4], ebx
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x21c]
mov dword [esp], eax
call sym.__vcomp_fork_call_wrapper
lea esp, [ebp - 0x10]
pop ecx
pop ebx
pop esi
pop edi
pop ebp
lea esp, [ecx - 4]
ret
test edi, edi
jns 0x63a02508
cmp esi, ecx
jl 0x63a024a1
mov eax, ecx
sub eax, esi
cdq
idiv edi
cmp eax, 1
jle 0x63a024a1
mov eax, dword [ebp - 0x220]
test eax, eax
js 0x63a024a1
mov eax, dword [0x63a08140]
mov dword [ebp - 0x230], ecx
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TlsGetValue]
mov ecx, dword [ebp - 0x230]
sub esp, 4
test eax, eax
je 0x63a0268c
mov edx, dword [eax + 0x10]
mov dword [ebp - 0x230], edx
mov edx, dword [ebp - 0x220]
mov dword [ebp - 0x220], eax
mov dword [eax + 0x10], edx
mov eax, dword [ebp - 0x22c]
lea edx, [ebp - 0x218]
mov dword [esp + 0xc], esi
mov dword [esp + 0x2c], eax
mov eax, dword [ebp - 0x21c]
mov dword [esp + 0x20], edx
mov dword [esp + 0x24], eax
mov eax, dword [ebp - 0x228]
mov dword [esp + 0x14], edi
mov dword [esp + 0x1c], eax
mov eax, dword [ebp - 0x224]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x18], eax
mov dword [esp + 8], sym._c2vectparallel_wrapper
mov dword [esp + 4], 9
mov dword [esp], 1
mov dword [ebp - 0x218], esi
mov dword [esp + 0x28], ebx
call sym.vcomp140.dll__vcomp_fork
mov esi, dword [ebp - 0x230]
mov eax, dword [ebp - 0x220]
mov dword [eax + 0x10], esi
jmp 0x63a0247a
mov dword [esp + 0x28], eax
mov eax, dword [ebp - 0x228]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x24], eax
mov eax, dword [ebp - 0x220]
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x20], eax
mov eax, dword [ebp - 0x224]
mov dword [esp + 0x18], edi
mov dword [esp + 0x1c], eax
mov dword [esp + 0x10], esi
mov dword [esp + 0xc], str.start__d__end__d__step__d__end_included__d__thread_count__d__dynamic_distribution__x__function__p__nargs__d._n
mov dword [esp + 8], str.C2VectParallel
mov dword [esp + 4], 0x63a08048
mov dword [esp], 3
mov dword [ebp - 0x230], edx
mov dword [ebp - 0x22c], ecx
call sym._wine_dbg_log.constprop.0
mov edx, dword [ebp - 0x230]
mov ecx, dword [ebp - 0x22c]
jmp 0x63a02465
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], pe_nt_image_headers32
mov dword [esp + 0xc], str.Number_of_arguments__u_exceeds_supported_maximum__u__not_calling_the_loop_code__expect_problems_._n
mov dword [esp + 8], str.C2VectParallel
mov dword [esp + 4], 0x63a08048
mov dword [esp], 0
call sym._wine_dbg_log.constprop.0
lea esp, [ebp - 0x10]
pop ecx
pop ebx
pop esi
pop edi
pop ebp
lea esp, [ecx - 4]
ret
call sym._vcomp_init_thread_data.part.0
mov ecx, dword [ebp - 0x230]
jmp 0x63a02543