Function at 0x471730
Capabilities:
Get thread local storage value

Disassembly:
mov eax, dword [0x5296dc]
sub esp, 0x418
push esi
push edi
push eax
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
mov edi, eax
test edi, edi
jne 0x471758
pop edi
mov eax, 5
pop esi
add esp, 0x418
ret
mov eax, 7
mov dword [esp + 0x18], eax
mov ecx, dword [edi + 0x4554]
test ecx, ecx
jl 0x471783
jg 0x471779
cmp dword [edi + 0x4550], 0x30d40
jbe 0x471783
mov dword [esp + 0x10], 8
jmp 0x471787
mov dword [esp + 0x10], eax
mov al, byte [edi + 0x45d2]
mov dword [edi + 0x1682c], 0
test al, 4
je 0x4719ac
lea ecx, [esp + 0x20]
push 0x100
push ecx
mov dword [esp + 0x24], 9
call fcn.0046ff80
add esp, 8
test eax, eax
jne 0x471b10
lea edx, [esp + 0x1c]
lea eax, [esp + 0x14]
push edx
push eax
push 0
push 0
push 0x100
lea ecx, [esp + 0x34]
push 0x100
push ecx
call fcn.0046ecb0
mov esi, eax
add esp, 0x1c
test esi, esi
je 0x47180d
cmp esi, 1
jne 0x471b0e
mov edx, dword [esp + 0x14]
push edx
call fcn.0046f190
add esp, 4
mov eax, esi
pop edi
pop esi
add esp, 0x418
ret
lea eax, [esp + 0x20]
push 0x40
push eax
call fcn.0046ff80
mov esi, eax
add esp, 8
test esi, esi
je 0x47183a
mov ecx, dword [esp + 0x14]
push ecx
call fcn.0046f190
add esp, 4
mov eax, esi
pop edi
pop esi
add esp, 0x418
ret
lea edx, [esp + 0x18]
lea eax, [esp + 8]
push edx
push eax
push 0x51d3d4
push 0x51d354
push 0
lea ecx, [esp + 0x34]
push 0x40
push ecx
call fcn.0046ecb0
mov esi, eax
add esp, 0x1c
test esi, esi
je 0x47188f
cmp esi, 1
jne 0x471877
mov edx, dword [esp + 8]
push edx
call fcn.0046f190
add esp, 4
mov eax, dword [esp + 0x14]
push eax
call fcn.0046f190
add esp, 4
mov eax, esi
pop edi
pop esi
add esp, 0x418
ret
lea ecx, [esp + 0x20]
push 0x40
push ecx
call fcn.0046ff80
mov esi, eax
add esp, 8
test esi, esi
jne 0x471936
mov al, byte [edi + 0x45d2]
lea ecx, [esp + 0x10]
lea edx, [esp + 0xc]
push ecx
test al, 2
push edx
push 0x51d3d4
je 0x471908
push 0x51d4d4
push esi
lea eax, [esp + 0x34]
push 0x40
push eax
call fcn.0046ecb0
mov esi, eax
add esp, 0x1c
test esi, esi
je 0x4718e3
cmp esi, 1
jne 0x471936
jmp 0x471929
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
push ecx
mov ecx, dword [esp + 0x10]
push edx
mov edx, dword [esp + 0x10]
push eax
mov eax, dword [esp + 0x20]
push ecx
push edx
push eax
call fcn.00470030
jmp 0x47197b
push 0x51d454
push 0
lea eax, [esp + 0x34]
push 0x40
push eax
call fcn.0046ecb0
mov esi, eax
add esp, 0x1c
test esi, esi
je 0x471958
cmp esi, 1
jne 0x471936
mov ecx, dword [esp + 0xc]
push ecx
call fcn.0046f190
add esp, 4
mov edx, dword [esp + 8]
push edx
call fcn.0046f190
mov eax, dword [esp + 0x18]
push eax
call fcn.0046f190
add esp, 8
mov eax, esi
pop edi
pop esi
add esp, 0x418
ret
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
push ecx
mov ecx, dword [esp + 0x10]
push edx
mov edx, dword [esp + 0x10]
push eax
mov eax, dword [esp + 0x20]
push ecx
push edx
push eax
call fcn.00470610
mov ecx, dword [esp + 0x24]
add esp, 0x18
mov esi, eax
push ecx
call fcn.0046f190
mov edx, dword [esp + 0xc]
push edx
call fcn.0046f190
mov eax, dword [esp + 0x1c]
push eax
call fcn.0046f190
add esp, 0xc
mov eax, esi
pop edi
pop esi
add esp, 0x418
ret
lea ecx, [esp + 0x20]
push 0x40
push ecx
call fcn.0046ff80
add esp, 8
test eax, eax
jne 0x471b10
lea edx, [esp + 0x18]
lea eax, [esp + 8]
push edx
push eax
push 0x51d3d4
push 0x51d2d4
push 0
lea ecx, [esp + 0x34]
push 0x40
push ecx
call fcn.0046ecb0
mov esi, eax
add esp, 0x1c
test esi, esi
je 0x471a0f
cmp esi, 1
jne 0x471b0e
mov edx, dword [esp + 8]
push edx
call fcn.0046f190
add esp, 4
mov eax, esi
pop edi
pop esi
add esp, 0x418
ret
lea eax, [esp + 0x20]
push 0x40
push eax
call fcn.0046ff80
mov esi, eax
add esp, 8
test esi, esi
je 0x471a3c
mov ecx, dword [esp + 8]
push ecx
call fcn.0046f190
add esp, 4
mov eax, esi
pop edi
pop esi
add esp, 0x418
ret
mov al, byte [edi + 0x45d2]
lea edx, [esp + 0x10]
test al, 2
lea eax, [esp + 0xc]
push edx
push eax
push 0x51d3d4
je 0x471a93
push 0x51d4d4
push 0
lea ecx, [esp + 0x34]
push 0x40
push ecx
call fcn.0046ecb0
mov esi, eax
add esp, 0x1c
test esi, esi
je 0x471a78
cmp esi, 1
jne 0x471ac1
jmp 0x471ab4
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0xc]
push ecx
mov ecx, dword [esp + 0xc]
push edx
push eax
push ecx
call fcn.00470bf0
jmp 0x471af2
push 0x51d454
push 0
lea ecx, [esp + 0x34]
push 0x40
push ecx
call fcn.0046ecb0
mov esi, eax
add esp, 0x1c
test esi, esi
je 0x471ad9
cmp esi, 1
jne 0x471ac1
mov edx, dword [esp + 0xc]
push edx
call fcn.0046f190
add esp, 4
mov eax, dword [esp + 8]
push eax
call fcn.0046f190
add esp, 4
mov eax, esi
pop edi
pop esi
add esp, 0x418
ret
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0xc]
push ecx
mov ecx, dword [esp + 0xc]
push edx
push eax
push ecx
call fcn.00471190
mov edx, dword [esp + 0x1c]
add esp, 0x10
mov esi, eax
push edx
call fcn.0046f190
mov eax, dword [esp + 0xc]
push eax
call fcn.0046f190
add esp, 8
mov eax, esi
pop edi
pop esi
add esp, 0x418
ret