Function at 0x63a041e0
Capabilities:
Get thread local storage value

Disassembly:
lea ecx, [esp + 4]
and esp, 0xfffffff0
push dword [ecx - 4]
push ebp
mov ebp, esp
push edi
push esi
push ebx
push ecx
sub esp, 0x88
mov eax, dword [ecx + 0xc]
mov edi, dword [ecx]
mov ebx, dword [ecx + 4]
mov esi, dword [ecx + 8]
mov dword [ebp - 0x30], eax
mov eax, dword [ecx + 0x10]
mov dword [ebp - 0x38], eax
mov eax, dword [ecx + 0x14]
mov dword [ebp - 0x2c], eax
mov eax, dword [ecx + 0x18]
mov dword [ebp - 0x3c], eax
mov eax, dword [ecx + 0x1c]
mov dword [ebp - 0x40], eax
mov eax, dword [ecx + 0x20]
mov dword [ebp - 0x34], eax
mov eax, dword [0x63a08140]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TlsGetValue]
sub esp, 4
test eax, eax
je 0x63a04418
mov edx, dword [eax]
test edx, edx
je 0x63a04400
mov edx, dword [edx + 4]
cmp edx, 1
mov dword [ebp - 0x44], edx
sete dl
mov eax, dword [eax + 8]
mov dword [ebp - 0x48], eax
test byte [0x63a08048], 8
jne 0x63a04380
mov ecx, dword [ebp - 0x2c]
test ecx, ecx
je 0x63a043ec
cmp dword [ebp - 0x30], 1
je 0x63a042b0
test dl, dl
je 0x63a042b0
mov eax, dword [ebp - 0x38]
mov dword [eax], 1
mov eax, dword [ebp - 0x2c]
mov dword [eax], edi
mov eax, dword [ebp - 0x3c]
mov dword [eax], ebx
mov eax, dword [ebp - 0x40]
mov dword [eax], 0
mov eax, dword [ebp - 0x34]
mov dword [eax], edi
lea esp, [ebp - 0x10]
pop ecx
pop ebx
pop esi
pop edi
pop ebp
lea esp, [ecx - 4]
ret
cmp edi, ebx
je 0x63a04458
test esi, esi
jle 0x63a04440
cmp edi, ebx
jl 0x63a04428
mov eax, edi
sub eax, ebx
cdq
idiv esi
neg esi
inc eax
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x30]
mov edx, 1
test eax, eax
cmovg edx, eax
mov ebx, edx
mov eax, edx
mov ecx, edx
mov dword [ebp - 0x30], edx
sar ebx, 0x1f
add eax, 0xffffffff
mov dword [esp + 8], ecx
mov edx, ebx
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x4c]
adc edx, 0xffffffff
mov dword [esp + 0xc], ebx
mov dword [ebp - 0x54], edx
xor edx, edx
add eax, dword [ebp - 0x58]
adc edx, dword [ebp - 0x54]
mov dword [esp], eax
mov dword [esp + 4], edx
call sym.___udivdi3
xor edx, edx
mov ebx, dword [ebp - 0x48]
mov ecx, eax
div dword [ebp - 0x44]
cmp ebx, edx
mov edx, dword [ebp - 0x38]
adc eax, 0
dec ecx
mov dword [edx], eax
mov eax, ebx
mov ebx, dword [ebp - 0x30]
mov edx, dword [ebp - 0x2c]
imul eax, ebx
imul eax, esi
add eax, edi
mov dword [edx], eax
lea edx, [ebx - 1]
imul edx, esi
add eax, edx
mov edx, dword [ebp - 0x3c]
mov dword [edx], eax
mov eax, dword [ebp - 0x44]
mov edx, dword [ebp - 0x40]
imul eax, ebx
imul ebx, esi
imul eax, esi
imul ecx, ebx
mov dword [edx], eax
mov eax, dword [ebp - 0x34]
add ecx, edi
mov dword [eax], ecx
lea esp, [ebp - 0x10]
pop ecx
pop ebx
pop esi
pop edi
pop ebp
lea esp, [ecx - 4]
ret
mov eax, dword [ebp - 0x34]
mov dword [esp + 0x18], esi
mov dword [esp + 0x14], ebx
mov dword [esp + 0x30], eax
mov eax, dword [ebp - 0x40]
mov dword [esp + 0x10], edi
mov dword [esp + 0x2c], eax
mov eax, dword [ebp - 0x3c]
mov dword [esp + 0xc], str.__d___d___d___d___p___p___p___p___p__n
mov dword [esp + 0x28], eax
mov eax, dword [ebp - 0x2c]
mov dword [esp + 8], str._vcomp_for_static_init
mov dword [esp + 0x24], eax
mov eax, dword [ebp - 0x38]
mov dword [esp + 4], 0x63a08048
mov dword [esp + 0x20], eax
mov eax, dword [ebp - 0x30]
mov dword [esp], 3
mov dword [esp + 0x1c], eax
mov byte [ebp - 0x4c], dl
call sym._wine_dbg_log.constprop.0
mov ecx, dword [ebp - 0x2c]
movzx edx, byte [ebp - 0x4c]
test ecx, ecx
jne 0x63a04270
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x34], eax
lea eax, [ebp - 0x20]
mov dword [ebp - 0x2c], eax
jmp 0x63a04270
mov dword [ebp - 0x44], 1
mov edx, 1
jmp 0x63a04252
call sym._vcomp_init_thread_data.part.0
jmp 0x63a0423c
mov eax, ebx
sub eax, edi
cdq
idiv esi
inc eax
mov dword [ebp - 0x4c], eax
jmp 0x63a042d5
mov eax, dword [ebp - 0x38]
mov dword [eax], 0
lea esp, [ebp - 0x10]
pop ecx
pop ebx
pop esi
pop edi
pop ebp
lea esp, [ecx - 4]
ret
mov edx, dword [ebp - 0x48]
xor eax, eax
mov esi, dword [ebp - 0x38]
test edx, edx
sete al
mov dword [esi], eax
jne 0x63a0429b
mov eax, dword [ebp - 0x2c]
mov dword [eax], edi
mov eax, dword [ebp - 0x3c]
mov dword [eax], edi
mov eax, dword [ebp - 0x40]
mov dword [eax], 0
mov eax, dword [ebp - 0x34]
mov dword [eax], edi
jmp 0x63a0429b