Function at 0x19907a5e
Capabilities:
Get thread local storage value

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x1ac
mov eax, dword [0x1996029c]
xor eax, ebp
mov dword [ebp - 4], eax
cmp dword [ebx + 0x18], 0
mov eax, dword [ebp + 8]
mov dword [ebp - 0xb0], eax
mov eax, dword [ebp + 0xc]
push esi
mov dword [ebp - 0xac], eax
mov eax, dword [ebp + 0x10]
push edi
mov dword [ebp - 0xa8], eax
mov esi, ecx
je 0x19907ae7
lea eax, [ebp - 0x1ac]
push eax
call fcn.199059b7
push dword [ebx + 0x18]
lea ecx, [ebp - 0x7c]
call fcn.198f11dd
lea ecx, [ebp - 0x7c]
call fcn.198f1203
mov edi, eax
test edi, edi
je 0x19907b2a
push 0
lea ecx, [ebp - 0x70]
call fcn.198f1155
mov eax, dword [edi + 8]
and dword [edi + 8], 0
test eax, eax
je 0x19907b02
lea ecx, [ebp - 0x70]
call fcn.198f1122
mov eax, dword [ebp - 0x7c]
test eax, eax
je 0x19907ae7
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0xac]
mov byte [eax], 1
mov al, 1
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop esi
call fcn.198c5017
leave
ret 0xc
push ebx
push esi
lea eax, [ebp - 0x1ac]
push eax
call fcn.19906a4f
mov edi, dword [ebp - 0xa8]
push dword [edi + 0x44]
call fcn.198f3d23
test eax, eax
jne 0x19907b3b
lea ecx, [ebp - 0x70]
call fcn.198f1122
mov eax, dword [ebp - 0x7c]
test eax, eax
je 0x19907b37
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
xor al, al
jmp 0x19907af2
fldz
and dword [ebp - 0x80], 0
push ebx
fst dword [ebp - 0x88]
push esi
fstp dword [ebp - 0x8c]
push edi
lea eax, [ebp - 0xa4]
push eax
call fcn.199067af
mov eax, ebx
lea edx, [ebp - 0xa4]
lea edi, [ebp - 0x8c]
call fcn.19905df5
cmp dword [ebx + 0xa4], 0
je 0x19907b7d
mov edi, dword [ebx + 0x2c]
jmp 0x19907b80
mov edi, dword [ebp - 0x80]
fldz
fcom qword [esi + 0x10]
fnstsw ax
test ah, 0x44
jp 0x19907b92
cmp byte [esi + 0x18], 0
je 0x19907bb6
fstp st(0)
push ecx
fld qword [esi + 0x10]
push ecx
fmul qword [0x198dab38]
fstp qword [esp]
call fcn.198f0fcf
add edi, eax
push edi
call fcn.198f21ea
fldz
mov dword [ebp - 0x80], eax
mov edi, eax
fcom qword [esi + 0x10]
fnstsw ax
fld qword [0x198c6960]
test ah, 0x44
jnp 0x19907c4d
fstp st(0)
fstp st(0)
fld qword [esi + 0x10]
fmul qword [0x198dad18]
fstp qword [ebp - 0x78]
fld qword [ebp - 0x78]
call sub.msvcrt.dll__CIsin
fstp qword [ebp - 0x94]
fld qword [ebp - 0x78]
call sub.msvcrt.dll__CIcos
fld dword [esi + 8]
fld qword [0x198c6960]
fmul st(1), st(0)
fld dword [esi]
faddp st(2)
fld dword [esi + 0xc]
fmul st(1)
fadd dword [esi + 4]
fld dword [ebp - 0x88]
fsub st(1)
fld dword [ebp - 0x8c]
fsub st(4)
fld qword [ebp - 0x94]
fmul st(1)
fld st(2)
fmul st(7)
faddp st(1)
fxch st(1)
fmulp st(6)
fxch st(1)
fmul qword [ebp - 0x94]
fsubp st(5)
fxch st(4)
faddp st(3)
fxch st(2)
fstp dword [ebp - 0x8c]
fxch st(2)
faddp st(1)
fstp dword [ebp - 0x88]
fldz
fxch st(1)
mov eax, dword [ebp - 0xa4]
fld1
neg eax
fstp dword [ebp - 0x90]
mov dword [ebp - 0x80], eax
fild dword [ebp - 0x80]
mov eax, dword [ebp - 0xa0]
neg eax
cmp byte [esi + 0x18], 0
fmul st(1)
mov dword [ebp - 0x74], eax
fstp dword [ebp - 0x80]
fimul dword [ebp - 0x74]
fstp dword [ebp - 0x74]
je 0x19907c93
fld dword [0x198dacf8]
fstp dword [ebp - 0x90]
fld dword [ebp - 0x80]
fchs
fstp dword [ebp - 0x80]
fst qword [ebp - 0xe8]
lea eax, [ebp - 0xe8]
push eax
fst qword [ebp - 0xf0]
fld dword [ebp - 0x74]
lea eax, [ebp - 0xf0]
push eax
fstp qword [ebp - 0x78]
fld dword [ebp - 0x80]
lea eax, [ebp - 0x78]
push eax
fstp qword [ebp - 0x84]
fld1
lea eax, [ebp - 0x84]
push eax
fstp qword [ebp - 0xe0]
lea eax, [ebp - 0xe0]
push eax
lea eax, [ebp - 0xd8]
fst qword [ebp - 0xd8]
push eax
fstp qword [ebp - 0xb8]
fld dword [ebp - 0x90]
lea eax, [ebp - 0xb8]
push eax
fstp qword [ebp - 0x94]
lea eax, [ebp - 0x94]
push eax
lea ecx, [ebp - 0x130]
call fcn.19905a7b
test edi, edi
je 0x19907d4a
cmp byte [esi + 0x18], 0
je 0x19907d1a
neg edi
push edi
call fcn.198ed567
mov dword [ebp - 0x74], eax
fild dword [ebp - 0x74]
lea eax, [ebp - 0xb8]
push eax
fmul qword [0x198dab30]
lea ecx, [ebp - 0x130]
fmul qword [0x198dad18]
fstp qword [ebp - 0xb8]
call fcn.198f2fda
fld dword [ebp - 0x8c]
lea eax, [ebp - 0xc0]
fstp qword [ebp - 0xc0]
push eax
fld dword [ebp - 0x88]
lea ecx, [ebp - 0x130]
fstp qword [ebp - 0xb8]
call fcn.198f2d06
mov eax, dword [0x19960050]
xor edi, edi
cmp eax, 0xffffffff
je 0x19907dfb
push eax
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
test eax, eax
je 0x19907dfb
lea edi, [eax + 4]
test edi, edi
je 0x19907dfb
fld qword [ebp - 0x108]
sub esp, 0x18
fstp dword [ebp - 0x74]
mov ecx, edi
fld dword [ebp - 0x74]
fstp dword [esp + 0x14]
fld qword [ebp - 0x110]
fstp dword [ebp - 0x74]
fld dword [ebp - 0x74]
fstp dword [esp + 0x10]
fld qword [ebp - 0x118]
fstp dword [ebp - 0x74]
fld dword [ebp - 0x74]
fstp dword [esp + 0xc]
fld qword [ebp - 0x128]
fstp dword [ebp - 0x74]
fld dword [ebp - 0x74]
fstp dword [esp + 8]
fld qword [ebp - 0x120]
fstp dword [ebp - 0x74]
fld dword [ebp - 0x74]
fstp dword [esp + 4]
fld qword [ebp - 0x130]
fstp dword [ebp - 0x74]
fld dword [ebp - 0x74]
fstp dword [esp]
call fcn.198f15c7
and dword [ebp - 0x9c], 0
lea eax, [ebp - 0x9c]
push eax
call sub.gdiplus.dll_GdipCreateImageAttributes
cmp dword [ebx], 3
mov dword [ebp - 0x98], eax
jne 0x19907e24
cmp byte [esi + 0x19], 0
jne 0x19907e24
push 4
pop eax
jmp 0x19907e26
xor eax, eax
lea ecx, [ebp - 0x70]
push ecx
push eax
lea eax, [ebp - 0x1ac]
push eax
lea eax, [ebp - 0x9c]
push eax
call fcn.1991062d
mov eax, dword [ebx + 0x18]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x18]
mov ecx, dword [ebp - 0xac]
shr eax, 0x17
and al, 1
mov byte [ecx], al
jne 0x19907e6a
cmp dword [ebx], 3
jne 0x19907e6a
cmp byte [esi + 0x19], 0
jne 0x19907e6a
cmp byte [esi + 0x1a], 0
je 0x19907e6a
mov byte [ecx], 1
fldz
lea eax, [ebp - 0x9c]
fst dword [ebp - 0xd0]
push eax
fstp dword [ebp - 0xcc]
lea eax, [ebp - 0xd0]
fild dword [ebp - 0xa4]
push eax
push dword [ebp - 0xa8]
lea ecx, [ebp - 0x7c]
fstp dword [ebp - 0xc8]
fild dword [ebp - 0xa0]
fstp dword [ebp - 0xc4]
call fcn.198f1213
test eax, eax
jne 0x19907ec0
push dword [ebp - 0x9c]
call sub.gdiplus.dll_GdipDisposeImageAttributes
jmp 0x19907b22
mov ecx, dword [ebp - 0xb0]
mov dword [ecx], eax
test edi, edi
je 0x19907ed4
push edi
mov ecx, eax
call fcn.199062ae
push dword [ebp - 0x9c]
call sub.gdiplus.dll_GdipDisposeImageAttributes
lea ecx, [ebp - 0x70]
call fcn.198f1122
mov eax, dword [ebp - 0x7c]
test eax, eax
je 0x19907af0
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x19907af0