Function at 0x481390
Capabilities:
Get thread local storage value
Set thread local storage value

Disassembly:
push 0xffffffffffffffff
push 0x4e861c
mov eax, dword fs:[0]
push eax
sub esp, 0x20
push ebx
push esi
push edi
mov eax, dword [0x417270]
xor eax, esp
push eax
lea eax, [esp + 0x30]
mov dword fs:[0], eax
mov edi, ecx
mov eax, dword [0x53e204]
push eax
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
mov esi, eax
xor ebx, ebx
cmp esi, ebx
jne 0x4813ea
push 4
push 0x40
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
mov esi, eax
cmp esi, ebx
je 0x4813ea
mov ecx, dword [0x53e204]
push esi
push ecx
call dword [sym.imp.KERNEL32.dll_TlsSetValue]
lea ecx, [esp + 0x14]
mov dword [esi], ebx
call fcn.0049fb30
test byte [esp + 0x40], 1
mov dword [esp + 0x38], ebx
je 0x481439
push 0x10
call fcn.004cb3d4
add esp, 4
mov dword [esp + 0x10], eax
mov byte [esp + 0x38], 1
cmp eax, ebx
je 0x481429
push ebx
push ebx
push 1
push 0x420280
mov ecx, eax
call fcn.0049f7d0
jmp 0x48142b
xor eax, eax
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x3c], bl
call fcn.0049fb50
test byte [esp + 0x40], 2
je 0x481479
push 0x10
call fcn.004cb3d4
add esp, 4
mov dword [esp + 0x10], eax
mov byte [esp + 0x38], 2
cmp eax, ebx
je 0x481469
push ebx
push ebx
push 2
push 0x420264
mov ecx, eax
call fcn.0049f7d0
jmp 0x48146b
xor eax, eax
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x3c], bl
call fcn.0049fb50
test byte [esp + 0x40], 4
je 0x4814b9
push 0x10
call fcn.004cb3d4
add esp, 4
mov dword [esp + 0x10], eax
mov byte [esp + 0x38], 3
cmp eax, ebx
je 0x4814a9
push ebx
push ebx
push 4
push 0x42024c
mov ecx, eax
call fcn.0049f7d0
jmp 0x4814ab
xor eax, eax
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x3c], bl
call fcn.0049fb50
test byte [esp + 0x40], 8
je 0x4814f9
push 0x10
call fcn.004cb3d4
add esp, 4
mov dword [esp + 0x10], eax
mov byte [esp + 0x38], 4
cmp eax, ebx
je 0x4814e9
push ebx
push ebx
push 8
push 0x420230
mov ecx, eax
call fcn.0049f7d0
jmp 0x4814eb
xor eax, eax
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x3c], bl
call fcn.0049fb50
test byte [esp + 0x40], 0x10
je 0x481539
push 0x10
call fcn.004cb3d4
add esp, 4
mov dword [esp + 0x10], eax
mov byte [esp + 0x38], 5
cmp eax, ebx
je 0x481529
push ebx
push ebx
push 0x10
push 0x420210
mov ecx, eax
call fcn.0049f7d0
jmp 0x48152b
xor eax, eax
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x3c], bl
call fcn.0049fb50
test byte [esp + 0x40], 0x20
je 0x481579
push 0x10
call fcn.004cb3d4
add esp, 4
mov dword [esp + 0x10], eax
mov byte [esp + 0x38], 6
cmp eax, ebx
je 0x481569
push ebx
push ebx
push 0x20
push 0x4201f4
mov ecx, eax
call fcn.0049f7d0
jmp 0x48156b
xor eax, eax
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x3c], bl
call fcn.0049fb50
test byte [esp + 0x40], 0x40
je 0x4815b9
push 0x10
call fcn.004cb3d4
add esp, 4
mov dword [esp + 0x10], eax
mov byte [esp + 0x38], 7
cmp eax, ebx
je 0x4815a9
push ebx
push ebx
push 0x40
push 0x4201d8
mov ecx, eax
call fcn.0049f7d0
jmp 0x4815ab
xor eax, eax
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x3c], bl
call fcn.0049fb50
test byte [esp + 0x40], 0x80
je 0x4815fc
push 0x10
call fcn.004cb3d4
add esp, 4
mov dword [esp + 0x10], eax
mov byte [esp + 0x38], 8
cmp eax, ebx
je 0x4815ec
push ebx
push ebx
push 0x80
push 0x4201b8
mov ecx, eax
call fcn.0049f7d0
jmp 0x4815ee
xor eax, eax
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x3c], bl
call fcn.0049fb50
test dword [esp + 0x40], 0x200
je 0x481642
push 0x10
call fcn.004cb3d4
add esp, 4
mov dword [esp + 0x10], eax
mov byte [esp + 0x38], 9
cmp eax, ebx
je 0x481632
push ebx
push ebx
push 0x200
push 0x4201a4
mov ecx, eax
call fcn.0049f7d0
jmp 0x481634
xor eax, eax
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x3c], bl
call fcn.0049fb50
test dword [esp + 0x40], 0x400
je 0x481688
push 0x10
call fcn.004cb3d4
add esp, 4
mov dword [esp + 0x10], eax
mov byte [esp + 0x38], 0xa
cmp eax, ebx
je 0x481678
push ebx
push ebx
push 0x400
push 0x42018c
mov ecx, eax
call fcn.0049f7d0
jmp 0x48167a
xor eax, eax
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x3c], bl
call fcn.0049fb50
test dword [esp + 0x40], 0x800
je 0x4816ce
push 0x10
call fcn.004cb3d4
add esp, 4
mov dword [esp + 0x40], eax
mov byte [esp + 0x38], 0xb
cmp eax, ebx
je 0x4816be
push ebx
push ebx
push 0x800
push 0x420174
mov ecx, eax
call fcn.0049f7d0
jmp 0x4816c0
xor eax, eax
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x3c], bl
call fcn.0049fb50
push 0x10
call fcn.004cb3d4
add esp, 4
mov dword [esp + 0x40], eax
mov byte [esp + 0x38], 0xc
cmp eax, ebx
je 0x4816fa
push ebx
push ebx
push 0x100
push 0x420154
mov ecx, eax
call fcn.0049f7d0
jmp 0x4816fc
xor eax, eax
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x3c], bl
call fcn.0049fb50
lea ecx, [esp + 0x14]
xor esi, esi
call fcn.0049f9a0
cmp eax, ebx
je 0x48171e
mov esi, dword [eax + 8]
jmp 0x481727
push 0x75
mov ecx, edi
call fcn.0047e020
lea ecx, [esp + 0x14]
call fcn.0049f920
lea ecx, [esp + 0x14]
mov dword [esp + 0x38], 0xffffffff
call fcn.0049c510
mov eax, esi
mov ecx, dword [esp + 0x30]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
add esp, 0x2c
ret 4