Function at 0x4e946c
Capabilities:
Set file attributes

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x12
push 0
push 0
dec ecx
jne 0x4e9474
push ecx
push ebx
push esi
push edi
mov ebx, 0x50fcdc
mov esi, 0x4fdaa0
mov edi, 0x4fdaa4
xor eax, eax
push ebp
push 0x4e9c20
push dword fs:[eax]
mov dword fs:[eax], esp
mov dword [ebp - 4], 0xffffffff
lea edx, [ebp - 0x14]
xor eax, eax
call fcn.00402d90
mov eax, dword [ebp - 0x14]
lea edx, [ebp - 0x10]
call fcn.0040b6dc
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 0x18]
mov edx, 0x4e9c3c
mov eax, 0x4e9c58
call fcn.004e25c0
mov edx, dword [ebp - 0x18]
pop eax
call fcn.00405088
mov eax, dword [ebp - 0x10]
call fcn.0040b5b0
push 0x80
lea eax, [ebp - 0x1c]
call fcn.004e2798
lea eax, [ebp - 0x1c]
mov edx, 0x4e9c80
call fcn.00405088
mov eax, dword [ebp - 0x1c]
call fcn.00405278
push eax
call sub.kernel32.dll_SetFileAttributesA
lea ecx, [ebp - 0x20]
mov edx, 0x4e9c3c
mov eax, dword [0x4fda88]
call fcn.004e25c0
mov eax, dword [ebp - 0x20]
push eax
lea ecx, [ebp - 0x24]
mov edx, 0x4e9c3c
mov eax, 0x4e9c94
call fcn.004e25c0
mov edx, dword [ebp - 0x24]
pop eax
call fcn.004051c4
jne 0x4e9557
lea eax, [ebp - 0x28]
call fcn.004e2798
lea eax, [ebp - 0x28]
mov edx, 0x4e9c80
call fcn.00405088
mov eax, dword [ebp - 0x28]
call fcn.0040b5b0
mov eax, dword [0x4fdb58]
call fcn.0040b5b0
push 0x80
lea edx, [ebp - 0x30]
xor eax, eax
call fcn.00402d90
mov eax, dword [ebp - 0x30]
lea ecx, [ebp - 0x2c]
mov edx, 0x4e9cb4
call fcn.0040b648
mov eax, dword [ebp - 0x2c]
call fcn.00405278
push eax
call sub.kernel32.dll_SetFileAttributesA
lea edx, [ebp - 0x38]
xor eax, eax
call fcn.00402d90
mov eax, dword [ebp - 0x38]
lea ecx, [ebp - 0x34]
mov edx, 0x4e9cb4
call fcn.0040b648
mov eax, dword [ebp - 0x34]
call fcn.0040b5b0
xor eax, eax
call fcn.004e760c
test al, al
je 0x4e9bfa
push 0
call sub.ole32.dll_CoInitialize
call fcn.0041828c
test al, al
jne 0x4e9bfa
lea ecx, [ebp - 0x3c]
mov eax, dword [0x4fe024]
xor edx, edx
call fcn.004e6870
mov byte [ebx + 0x16], 0
lea ecx, [ebp - 0x40]
mov edx, 0x4e9c3c
mov eax, 0x4e9cc4
call fcn.004e25c0
mov eax, dword [ebp - 0x40]
push eax
lea ecx, [ebp - 0x44]
mov edx, 0x4e9c3c
mov eax, 0x4e9ce8
call fcn.004e25c0
mov edx, dword [ebp - 0x44]
pop eax
call fcn.004051c4
jne 0x4e9625
mov eax, edi
mov edx, 0x4e9d0c
call fcn.00404e00
cmp dword [edi], 0
je 0x4e9660
lea ecx, [ebp - 0x48]
mov edx, 0x4e9c3c
mov eax, dword [edi]
call fcn.004e25c0
mov eax, dword [ebp - 0x48]
push eax
lea ecx, [ebp - 0x4c]
mov edx, 0x4e9c3c
mov eax, 0x4e9d0c
call fcn.004e25c0
mov edx, dword [ebp - 0x4c]
pop eax
call fcn.004051c4
jne 0x4e9660
mov dword [esi], 0x7fffffff
cmp dword [edi], 0
je 0x4e969b
lea ecx, [ebp - 0x50]
mov edx, 0x4e9c3c
mov eax, dword [edi]
call fcn.004e25c0
mov eax, dword [ebp - 0x50]
push eax
lea ecx, [ebp - 0x54]
mov edx, 0x4e9c3c
mov eax, 0x4e9d28
call fcn.004e25c0
mov edx, dword [ebp - 0x54]
pop eax
call fcn.004051c4
jne 0x4e969b
mov dword [esi], 0xffff
cmp dword [edi], 0
je 0x4e96d0
lea ecx, [ebp - 0x58]
mov edx, 0x4e9c3c
mov eax, dword [edi]
call fcn.004e25c0
mov eax, dword [ebp - 0x58]
push eax
lea ecx, [ebp - 0x5c]
mov edx, 0x4e9c3c
mov eax, 0x4e9d44
call fcn.004e25c0
mov edx, dword [ebp - 0x5c]
pop eax
call fcn.004051c4
je 0x4e96d9
cmp byte [0x4fda80], 0
je 0x4e9723
lea eax, [ebx + 0x10]
call fcn.00406fac
push eax
mov eax, dword [0x4fdf84]
push eax
push 3
push 0
push 0x4fd848
call sub.ole32.dll_CoCreateInstance
test eax, eax
sete al
mov byte [ebx + 0x16], al
cmp byte [ebx + 0x16], 0
je 0x4e970c
mov dword [esi], 0x7fffffff
jmp 0x4e9712
mov dword [esi], 0xffff
cmp byte [0x4fda80], 0
je 0x4e9723
mov al, byte [ebx + 0x16]
mov byte [0x4fda80], al
xor eax, eax
mov dword [0x50fd40], eax
mov eax, dword [0x4fdd68]
mov byte [eax], 0
mov byte [ebx + 0x14], 0
xor eax, eax
mov dword [ebx + 0x1b], eax
xor eax, eax
mov dword [ebx + 0x1f], eax
xor eax, eax
mov dword [ebx + 0x2f], eax
xor eax, eax
mov dword [ebx + 0x17], eax
xor eax, eax
mov dword [ebx + 0x44], eax
xor eax, eax
mov dword [ebx + 0x48], eax
xor eax, eax
mov dword [ebx + 0x4c], eax
mov byte [ebx + 0x15], 0
mov dword [ebx + 0x33], 0x64
xor eax, eax
mov dword [ebx + 0x2b], eax
xor eax, eax
mov dword [ebx + 0x23], eax
lea eax, [ebx + 0xc]
call fcn.00406fac
mov byte [ebx + 0x3b], 5
mov dword [ebx + 0x40], 0xffffffff
mov dword [ebx + 0x57], 0x100010
cmp dword [esi], 0x7fffffff
jne 0x4e9821
cmp byte [ebx + 0x16], 0
jne 0x4e97bf
lea eax, [ebx + 0x10]
call fcn.00406fac
push eax
mov eax, dword [0x4fdf84]
push eax
push 3
push 0
push 0x4fd848
call sub.ole32.dll_CoCreateInstance
test eax, eax
sete al
mov byte [ebx + 0x16], al
cmp byte [ebx + 0x16], 0
je 0x4e980c
lea eax, [ebp - 0xc]
call fcn.00406fac
mov ecx, eax
mov edx, 0x4e9d5c
mov eax, dword [ebx + 0x10]
call fcn.00410ff0
test al, al
je 0x4e97f5
lea eax, [ebx + 0x51]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [eax]
call dword [eax + 0xc]
lea eax, [ebp - 0xc]
call fcn.00406fac
mov eax, dword [0x4fdab4]
push eax
mov eax, dword [0x4fdab0]
push eax
mov eax, dword [0x4fdaac]
push eax
call sym.Vod.dll_SetB_S_CRm
call sym.Vod.dll_GetTvOutputRm
mov dword [0x50fd58], eax
xor eax, eax
mov al, byte [ebx + 0x16]
dec eax
mov dword [ebp - 4], eax
jmp 0x4e9826
xor eax, eax
mov dword [ebp - 4], eax
cmp dword [esi], 0xffff
jne 0x4e983f
cmp byte [0x4fdae4], 0
je 0x4e983f
mov eax, dword [0x4fdd68]
mov byte [eax], 0
mov byte [0x4fdad8], 0
lea ecx, [ebp - 0x60]
mov edx, 0x4e9c3c
mov eax, 0x4e9d74
call fcn.004e25c0
mov eax, dword [ebp - 0x60]
push eax
mov eax, 0x4e9c94
lea ecx, [ebp - 0x64]
mov edx, 0x4e9c3c
call fcn.004e25c0
mov edx, dword [ebp - 0x64]
pop eax
call fcn.004051c4
jne 0x4e98b2
cmp dword [ebp - 4], 0
jne 0x4e9a8a
push 0
push 0
lea ecx, [ebp - 0x68]
mov edx, 0x4e9c3c
mov eax, 0x4e9d90
call fcn.004e25c0
mov eax, dword [ebp - 0x68]
call fcn.00405278
push eax
call sub.user32.dll_GetForegroundWindow
push eax
call sub.user32.dll_MessageBoxA_1
jmp 0x4e9a8a
cmp dword [esi], 0x7fffffff
jne 0x4e98c1
xor eax, eax
call fcn.004e5720
lea ecx, [ebp - 0x6c]
mov edx, 0x4e9c3c
mov eax, 0x4e9df4
call fcn.004e25c0
mov eax, dword [ebp - 0x6c]
push eax
mov eax, 0x4e9c94
lea ecx, [ebp - 0x70]
mov edx, 0x4e9c3c
call fcn.004e25c0
mov edx, dword [ebp - 0x70]
pop eax
call fcn.004051c4
je 0x4e9a03
mov eax, 0x4e9cc4
lea ecx, [ebp - 0x74]
mov edx, 0x4e9c3c
call fcn.004e25c0
mov eax, dword [ebp - 0x74]
push eax
lea ecx, [ebp - 0x78]
mov edx, 0x4e9c3c
mov eax, 0x4e9e14
call fcn.004e25c0
mov edx, dword [ebp - 0x78]
pop eax
call fcn.004051c4
jne 0x4e99bf
mov eax, dword [0x4fdacc]
call fcn.0046c8f8
test al, al
jne 0x4e994d
cmp dword [0x4fdb54], 0x7fffffff
jne 0x4e9a8a
lea ecx, [ebp - 0x7c]
mov edx, 0x4e9c3c
mov eax, 0x4e9e38
call fcn.004e25c0
mov eax, dword [ebp - 0x7c]
call fcn.00405278
push eax
call sub.MI.dll_SetMediaInfoSn
lea ecx, [ebp - 0x80]
mov edx, 0x4e9c3c
mov eax, 0x4e9e80
call fcn.004e25c0
mov eax, dword [ebp - 0x80]
push eax
lea ecx, [ebp - 0x84]
mov edx, 0x4e9c3c
mov eax, 0x4e9e90
call fcn.004e25c0
mov edx, dword [ebp - 0x84]
pop eax
call fcn.004051c4
jne 0x4e99b3
cmp dword [esi], 0xffff
jne 0x4e99b3
call sym.Vod.dll_LoadPY_Dll
mov byte [0x4fdad8], 1
jmp 0x4e9a8a
mov eax, dword [0x4fdacc]
call fcn.0046d77c
test al, al
je 0x4e9a8a
lea ecx, [ebp - 0x88]
mov edx, 0x4e9c3c
mov eax, 0x4e9e38
call fcn.004e25c0
mov eax, dword [ebp - 0x88]
call fcn.00405278
push eax
call sub.MI.dll_SetMediaInfoSn
mov byte [0x4fdad8], 1
jmp 0x4e9a8a
mov eax, dword [0x4fdacc]
call fcn.0046e600
test al, al
je 0x4e9a8a
lea ecx, [ebp - 0x8c]
mov edx, 0x4e9c3c
mov eax, 0x4e9e38
call fcn.004e25c0
mov eax, dword [ebp - 0x8c]
call fcn.00405278
push eax
call sub.MI.dll_SetMediaInfoSn
lea ecx, [ebp - 0x90]
mov edx, 0x4e9c3c
mov eax, 0x4e9e80
call fcn.004e25c0
mov eax, dword [ebp - 0x90]
push eax
mov eax, 0x4e9e90
lea ecx, [ebp - 0x94]
mov edx, 0x4e9c3c
call fcn.004e25c0
mov edx, dword [ebp - 0x94]
pop eax
call fcn.004051c4
jne 0x4e9a83
cmp dword [esi], 0xffff
jne 0x4e9a83
call sym.Vod.dll_LoadPY_Dll
mov byte [0x4fdad8], 1
mov byte [0x4fdb0c], 0
mov byte [0x4fdabc], 1
cmp dword [esi], 0x7fffffff
jne 0x4e9ac3
cmp byte [0x4fda80], 0
jne 0x4e9ac3
cmp dword [0x4fdb30], 0xffffffff
jne 0x4e9ac3
mov byte [0x4fdb20], 1
mov dword [0x4fdb30], 2
cmp dword [esi], 0xffff
je 0x4e9ad4
cmp byte [0x4fda80], 0
je 0x4e9b0b
cmp dword [0x4fdb2c], 0xffffffff
jne 0x4e9b0b
mov dword [0x4fdb2c], 2
mov eax, dword [0x4fdd24]
cmp dword [eax], 6
jl 0x4e9af9
mov eax, dword [0x4fdf90]
cmp dword [eax], 1
mov eax, dword [0x4fdd24]
cmp dword [eax], 5
jne 0x4e9b0b
mov eax, dword [0x4fdf90]
cmp dword [eax], 1
cmp dword [esi], 0xffff
je 0x4e9b1c
cmp byte [0x4fda80], 0
je 0x4e9b2f
cmp dword [0x4fdb34], 0xffffffff
jne 0x4e9b2f
mov dword [0x4fdb34], 3
cmp dword [esi], 0xffff
jne 0x4e9bb4
mov eax, dword [0x4fdd24]
cmp dword [eax], 5
jg 0x4e9bb4
xor eax, eax
mov dword [ebp - 8], eax
xor eax, eax
push ebp
push 0x4e9b6d
push dword fs:[eax]
mov dword fs:[eax], esp
push 0x64
push 0xffffffffffffffff
push 0xffffffffffffffff
mov eax, dword [ebp - 8]
push eax
call fcn.004e6728
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4e9b77
xor eax, eax
push ebp
push 0x4e9ba1
push dword fs:[eax]
mov dword fs:[eax], esp
push 0x64
push 0xffffffffffffffff
push 0x1008
mov eax, dword [ebp - 8]
push eax
call fcn.004e6728
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4e9bab
inc dword [ebp - 8]
cmp dword [ebp - 8], 3
jne 0x4e9b46
xor eax, eax
mov dword [0x50fcb0], eax
xor eax, eax
mov dword [0x50fcb4], eax
xor eax, eax
mov dword [0x50fcb8], eax
xor eax, eax
mov dword [0x50fcbc], eax
xor eax, eax
mov dword [0x50fcc0], eax
xor eax, eax
mov dword [0x50fcc4], eax
xor eax, eax
mov dword [0x50fcc8], eax
xor eax, eax
mov dword [0x50fccc], eax
xor eax, eax
mov dword [0x50fcd0], eax
xor eax, eax
mov dword [0x50fcd4], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4e9c27
lea eax, [ebp - 0x94]
mov edx, 0x22
call fcn.00404dd0
lea eax, [ebp - 0xc]
call fcn.00406fac
ret