Function at 0x461c00
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x28
push ebx
mov eax, dword [0x7d8230]
push eax
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
mov ebx, eax
mov eax, dword [ebx + 4]
mov eax, dword [eax - 8]
mov dword [ebp - 8], eax
mov eax, dword [ebx + 4]
mov eax, dword [eax - 4]
mov dword [ebp - 4], eax
mov eax, dword [ebp - 8]
mov eax, dword [eax]
and eax, 0xa
je 0x461e78
mov eax, dword [ebp - 4]
mov eax, dword [eax]
and eax, 0xa
je 0x461e78
mov eax, dword [ebp - 4]
mov eax, dword [eax]
and eax, 2
je 0x461c5c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xc]
cdq
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], edx
jmp 0x461c6c
mov eax, dword [ebp - 4]
push dword [eax + 0xc]
mov eax, dword [eax + 8]
pop edx
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], edx
push dword [ebp - 0x14]
mov eax, dword [ebp - 0x18]
pop edx
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
push dword [ebp - 0xc]
push dword [ebp - 0x10]
push dword [0x696ed8]
push dword [0x696ed4]
call fcn.00531f30
jae 0x461d78
mov eax, dword [ebp - 4]
push eax
mov eax, dword [ebp - 8]
push eax
push 2
push 0x696e00
push 0
push 0x53d
push 5
call fcn.00492ab0
add esp, 0x1c
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x46216b
mov eax, dword [ebx + 4]
mov eax, dword [eax - 4]
mov eax, dword [eax]
and eax, 0xf405
je 0x461cdf
mov eax, dword [ebx + 4]
mov eax, dword [eax - 4]
push eax
call fcn.004a45e0
pop ecx
jmp 0x461ceb
mov eax, dword [ebx + 4]
mov eax, dword [eax - 4]
mov dword [eax], 0
lea eax, [ebx + 4]
mov edx, dword [eax]
lea edx, [edx - 4]
mov dword [eax], edx
mov eax, edx
mov edx, dword [ebx]
cmp eax, edx
jae 0x461d10
push 0
push 0
push 0
push 0x233b
call fcn.00492ef0
add esp, 0x10
mov eax, dword [ebx + 4]
mov eax, dword [eax - 4]
mov eax, dword [eax]
and eax, 0xf405
je 0x461d2e
mov eax, dword [ebx + 4]
mov eax, dword [eax - 4]
push eax
call fcn.004a45e0
pop ecx
jmp 0x461d3a
mov eax, dword [ebx + 4]
mov eax, dword [eax - 4]
mov dword [eax], 0
lea eax, [ebx + 4]
mov edx, dword [eax]
lea edx, [edx - 4]
mov dword [eax], edx
mov eax, edx
mov edx, dword [ebx]
cmp eax, edx
jae 0x461d5f
push 0
push 0
push 0
push 0x233b
call fcn.00492ef0
add esp, 0x10
mov eax, dword [ebp - 0x1c]
push eax
call fcn.0046a8b0
pop ecx
mov eax, dword [ebp - 0x1c]
push eax
call fcn.0049f7d0
pop ecx
jmp 0x46216b
mov eax, dword [ebp - 4]
mov dword [eax], 0
lea eax, [ebx + 4]
mov edx, dword [eax]
lea edx, [edx - 4]
mov dword [eax], edx
mov eax, edx
mov edx, dword [ebx]
cmp eax, edx
jae 0x461da6
push 0
push 0
push 0
push 0x233b
call fcn.00492ef0
add esp, 0x10
lea eax, [ebx + 4]
mov edx, dword [eax]
lea edx, [edx - 4]
mov dword [eax], edx
mov eax, edx
mov edx, dword [ebx]
cmp eax, edx
jae 0x461dcb
push 0
push 0
push 0
push 0x233b
call fcn.00492ef0
add esp, 0x10
cmp dword [0x7d7f4c], 0
jne 0x461e1d
mov eax, dword [ebp - 8]
mov eax, dword [eax]
and eax, 2
je 0x461ded
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0xc]
cdq
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edx
jmp 0x461dfd
mov eax, dword [ebp - 8]
push dword [eax + 0xc]
mov eax, dword [eax + 8]
pop edx
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edx
push dword [ebp - 0x1c]
push dword [ebp - 0x20]
push dword [ebp - 0xc]
push dword [ebp - 0x10]
call fcn.00533e70
push edx
push eax
call fcn.0046ab70
add esp, 8
jmp 0x46216b
mov eax, dword [0x7d7f4c]
push eax
mov eax, dword [ebp - 8]
mov eax, dword [eax]
and eax, 2
je 0x461e3c
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0xc]
cdq
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], edx
jmp 0x461e4c
mov eax, dword [ebp - 8]
push dword [eax + 0xc]
mov eax, dword [eax + 8]
pop edx
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], edx
push dword [ebp - 0x24]
push dword [ebp - 0x28]
push dword [ebp - 0xc]
push dword [ebp - 0x10]
call fcn.00533e70
push edx
push eax
fild qword [esp]
add esp, 8
sub esp, 8
fstp qword [esp]
call fcn.0046af40
add esp, 0xc
jmp 0x46216b
mov eax, dword [ebp - 8]
mov edx, dword [eax]
mov ecx, edx
and ecx, 0x3a
jne 0x461e9c
and edx, 0x400
je 0x462055
mov eax, dword [eax + 8]
cmp eax, 1
jne 0x462055
mov eax, dword [ebp - 4]
mov edx, dword [eax]
mov ecx, edx
and ecx, 0x3a
jne 0x461ec0
and edx, 0x400
je 0x462055
mov eax, dword [eax + 8]
cmp eax, 1
jne 0x462055
mov eax, dword [ebp - 4]
push eax
call fcn.0049fd50
pop ecx
fst qword [ebp - 0x18]
fstp qword [ebp - 0x10]
fld qword [0x696e14]
fcomp qword [ebp - 0x10]
wait
fnstsw ax
sahf
jne 0x461fc5
mov eax, dword [ebp - 4]
push eax
mov eax, dword [ebp - 8]
push eax
push 2
push 0x696e00
push 0
push 0x53d
push 5
call fcn.00492ab0
add esp, 0x1c
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x46216b
mov eax, dword [ebx + 4]
mov eax, dword [eax - 4]
mov eax, dword [eax]
and eax, 0xf405
je 0x461f2c
mov eax, dword [ebx + 4]
mov eax, dword [eax - 4]
push eax
call fcn.004a45e0
pop ecx
jmp 0x461f38
mov eax, dword [ebx + 4]
mov eax, dword [eax - 4]
mov dword [eax], 0
lea eax, [ebx + 4]
mov edx, dword [eax]
lea edx, [edx - 4]
mov dword [eax], edx
mov eax, edx
mov edx, dword [ebx]
cmp eax, edx
jae 0x461f5d
push 0
push 0
push 0
push 0x233b
call fcn.00492ef0
add esp, 0x10
mov eax, dword [ebx + 4]
mov eax, dword [eax - 4]
mov eax, dword [eax]
and eax, 0xf405
je 0x461f7b
mov eax, dword [ebx + 4]
mov eax, dword [eax - 4]
push eax
call fcn.004a45e0
pop ecx
jmp 0x461f87
mov eax, dword [ebx + 4]
mov eax, dword [eax - 4]
mov dword [eax], 0
lea eax, [ebx + 4]
mov edx, dword [eax]
lea edx, [edx - 4]
mov dword [eax], edx
mov eax, edx
mov edx, dword [ebx]
cmp eax, edx
jae 0x461fac
push 0
push 0
push 0
push 0x233b
call fcn.00492ef0
add esp, 0x10
mov eax, dword [ebp - 0x1c]
push eax
call fcn.004a4430
pop ecx
mov eax, dword [ebp - 0x1c]
push eax
call fcn.0049f7d0
pop ecx
jmp 0x46216b
mov eax, dword [ebx + 4]
mov eax, dword [eax - 4]
mov eax, dword [eax]
and eax, 0xf405
je 0x461fe3
mov eax, dword [ebx + 4]
mov eax, dword [eax - 4]
push eax
call fcn.004a45e0
pop ecx
jmp 0x461fef
mov eax, dword [ebx + 4]
mov eax, dword [eax - 4]
mov dword [eax], 0
lea eax, [ebx + 4]
mov edx, dword [eax]
lea edx, [edx - 4]
mov dword [eax], edx
mov eax, edx
mov edx, dword [ebx]
cmp eax, edx
jae 0x462014
push 0
push 0
push 0
push 0x233b
call fcn.00492ef0
add esp, 0x10
call fcn.0046bde0
fstp qword [ebp - 0x20]
fld qword [ebp - 0x10]
sub esp, 8
fstp qword [esp]
fld qword [ebp - 0x20]
sub esp, 8
fstp qword [esp]
call fcn.00533f30
add esp, 0x10
fstp qword [ebp - 0x28]
mov eax, dword [0x7d7f4c]
push eax
fld qword [ebp - 0x28]
sub esp, 8
fstp qword [esp]
call fcn.0046af40
add esp, 0xc
jmp 0x46216b
mov eax, dword [ebp - 8]
push eax
call fcn.004874e0
pop ecx
and eax, 0x10
je 0x46208e
push 0
push 2
push 0
push str.__OPMOD
mov eax, dword [ebp - 4]
push eax
mov eax, dword [ebp - 8]
push eax
call fcn.004689e0
add esp, 0x18
lea eax, [ebx + 0x10]
push eax
call fcn.004a4430
pop ecx
jmp 0x46216b
mov eax, dword [ebp - 4]
push eax
mov eax, dword [ebp - 8]
push eax
push 2
push 0x696e00
push 0
push 0x43d
push 1
call fcn.00492ab0
add esp, 0x1c
mov dword [ebp - 0xc], eax
test eax, eax
je 0x46216b
mov eax, dword [ebx + 4]
mov eax, dword [eax - 4]
mov eax, dword [eax]
and eax, 0xf405
je 0x4620d7
mov eax, dword [ebx + 4]
mov eax, dword [eax - 4]
push eax
call fcn.004a45e0
pop ecx
jmp 0x4620e3
mov eax, dword [ebx + 4]
mov eax, dword [eax - 4]
mov dword [eax], 0
lea eax, [ebx + 4]
mov edx, dword [eax]
lea edx, [edx - 4]
mov dword [eax], edx
mov eax, edx
mov edx, dword [ebx]
cmp eax, edx
jae 0x462108
push 0
push 0
push 0
push 0x233b
call fcn.00492ef0
add esp, 0x10
mov eax, dword [ebx + 4]
mov eax, dword [eax - 4]
mov eax, dword [eax]
and eax, 0xf405
je 0x462126
mov eax, dword [ebx + 4]
mov eax, dword [eax - 4]
push eax
call fcn.004a45e0
pop ecx
jmp 0x462132
mov eax, dword [ebx + 4]
mov eax, dword [eax - 4]
mov dword [eax], 0
lea eax, [ebx + 4]
mov edx, dword [eax]
lea edx, [edx - 4]
mov dword [eax], edx
mov eax, edx
mov edx, dword [ebx]
cmp eax, edx
jae 0x462157
push 0
push 0
push 0
push 0x233b
call fcn.00492ef0
add esp, 0x10
mov eax, dword [ebp - 0xc]
push eax
call fcn.004a4430
pop ecx
mov eax, dword [ebp - 0xc]
push eax
call fcn.0049f7d0
pop ecx
pop ebx
mov esp, ebp
pop ebp
ret