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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x545b18
mov eax, dword fs:[0]
push eax
sub esp, 0x30
mov eax, dword [0x463df0]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x3c], ecx
mov ebx, dword [ebp + 0x10]
mov edi, dword [ebp + 0xc]
xor ecx, ecx
xor eax, eax
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x1c], ecx
mov word [ebp - 0x2c], ax
mov dword [ebp - 0x34], 0x469078
mov dword [ebp - 4], ecx
cmp edi, ecx
je 0x4d4da5
cmp ebx, ecx
je 0x4d4da5
movzx eax, byte [ebp + 8]
dec eax
mov byte [ebp - 4], 1
lea esi, [ecx + 1]
cmp eax, 0x52
ja case.0x4d4c57.6
movzx edx, byte [eax + 0x4d4e2c]
jmp dword [edx*4 + 0x4d4e14]
push edi
lea ecx, [ebp - 0x34]
call fcn.004b55a0
mov eax, edi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4d4be7
sub eax, edx
lea edi, [eax + eax + 2]
jmp 0x4d4c37
push edi
lea ecx, [ebp - 0x34]
call fcn.004b5dd0
mov edi, dword [ebp - 0x1c]
inc edi
jmp 0x4d4c37
xor eax, eax
cmp eax, 0xffff
jge 0x4d4c1c
cmp byte [edi + eax*2], 0
jne 0x4d4c5e
cmp byte [edi + eax*2 + 1], 0
jne 0x4d4c5e
inc eax
push eax
push edi
lea ecx, [ebp - 0x34]
call fcn.004b66c0
mov eax, dword [ebp - 0x1c]
lea edi, [eax + eax]
shr edi, 1
cmp esi, 1
jne 0x4d4ce8
mov esi, dword [ebp + 0x14]
push esi
push 0
push ebx
call fcn.00526600
movzx eax, byte [ebp + 8]
dec eax
add esp, 0xc
cmp eax, 0x53
ja case.0x4d4c57.6
movzx ecx, byte [eax + 0x4d4e98]
jmp dword [ecx*4 + 0x4d4e80]
inc eax
jmp 0x4d4c07
push edi
lea ecx, [ebp - 0x34]
call fcn.004b6340
mov eax, edi
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4d4c70
sub eax, edx
lea edi, [eax + eax + 2]
jmp 0x4d4c37
push edi
lea ecx, [ebp - 0x34]
call fcn.004b6340
mov eax, edi
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4d4c90
sub eax, edx
lea edi, [eax + eax + 2]
jmp 0x4d4c37
mov ecx, dword [ebp - 0x3c]
push 0x69
xor esi, esi
call fcn.004cc3d0
jmp 0x4d4d88
mov edx, dword [ebp - 0x38]
mov ebx, esi
push 1
shr ebx, 1
push ebx
push edx
lea ecx, [ebp - 0x34]
call fcn.004b5620
mov esi, eax
cmp esi, ebx
jb 0x4d4cd2
inc esi
cmp edi, esi
jbe 0x4d4ce8
mov esi, edi
jmp 0x4d4ce8
inc esi
jmp 0x4d4ce8
push esi
push ebx
lea ecx, [ebp - 0x34]
call fcn.004b54c0
mov esi, eax
test esi, esi
jne 0x4d4d24
mov esi, dword [ebp + 0x14]
test esi, esi
jne 0x4d4d3c
mov ecx, dword [ebp - 0x3c]
push 0x69
call fcn.004cc3d0
jmp 0x4d4d88
mov eax, dword [ebp - 0x38]
mov ebx, esi
push 1
shr ebx, 1
push ebx
push eax
lea ecx, [ebp - 0x34]
call fcn.004b5850
mov esi, eax
test esi, esi
jne 0x4d4cc5
jmp 0x4d4ce5
push 1
push esi
push ebx
lea ecx, [ebp - 0x34]
call fcn.004b5740
mov esi, eax
cmp esi, dword [ebp + 0x14]
jmp 0x4d4cc7
push 1
push esi
push ebx
lea ecx, [ebp - 0x34]
call fcn.004b5ad0
mov esi, eax
cmp esi, dword [ebp + 0x14]
jmp 0x4d4cc7
mov eax, dword [ebp + 0x14]
cmp esi, eax
jb 0x4d4d5f
mov esi, dword [ebp - 0x1c]
lea esi, [esi*4 + 4]
cmp esi, eax
ja 0x4d4d53
mov esi, eax
mov ecx, dword [ebp - 0x3c]
push 0x70
call fcn.004cc3d0
jmp 0x4d4d88
mov ecx, dword [ebp - 0x3c]
push 0
call fcn.004cc3d0
jmp 0x4d4d88
cmp dword [ebp - 0x18], 8
mov dword [ebp - 0x34], 0x469078
jb 0x4d4da1
mov ecx, dword [ebp - 0x2c]
push ecx
call fcn.005265f5
add esp, 4
mov eax, esi
jmp 0x4d4df6
mov edx, dword [0x59cfc4]
push edx
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
mov esi, eax
test esi, esi
jne 0x4d4dd5
push 4
push 0x40
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
mov esi, eax
test esi, esi
je 0x4d4dd5
mov eax, dword [0x59cfc4]
push esi
push eax
call dword [sym.imp.KERNEL32.dll_TlsSetValue]
mov dword [esi], 0x69
cmp dword [ebp - 0x18], 8
mov dword [ebp - 0x34], 0x469078
jb 0x4d4df4
mov ecx, dword [ebp - 0x2c]
push ecx
call fcn.005265f5
add esp, 4
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00526a8a
mov esp, ebp
pop ebp
ret 0x10