Function at 0x405e90
Capabilities:
Set file attributes

Disassembly:
sub esp, 0x350
push ebx
push ebp
mov ebp, dword [esp + 0x35c]
push esi
test ebp, ebp
push edi
je 0x406147
mov edi, ebp
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x406147
push eax
push eax
push eax
push eax
mov dword [esp + 0x20], eax
push eax
lea eax, [esp + 0x24]
push eax
push ebp
call fcn.004021e0
mov eax, dword [esp + 0x2c]
add esp, 0x1c
cmp eax, 0xffffffff
je 0x405eed
test al, 1
je 0x405eed
and al, 0xfe
push eax
push ebp
mov dword [esp + 0x18], eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
mov ecx, dword [esp + 0x36c]
mov edx, dword [esp + 0x368]
push ecx
push edx
push ebp
call dword [sym.imp.ADVAPI32.dll_SetFileSecurityA]
mov ebx, eax
test ebx, ebx
je 0x40613a
mov eax, dword [esp + 0x10]
and eax, 0x10
cmp al, 0x10
je 0x405f26
pop edi
pop esi
mov eax, ebx
pop ebp
pop ebx
add esp, 0x350
ret
push 0x5c
push ebp
call fcn.00412bc7
mov esi, eax
add esp, 8
test esi, esi
je 0x406019
inc esi
push str.mails
push esi
call fcn.00412a32
add esp, 8
test eax, eax
je 0x40600c
push str.MailsTemp
push esi
call fcn.00412a32
add esp, 8
test eax, eax
je 0x40600c
push str.MailsLeave
push esi
call fcn.00412a32
add esp, 8
test eax, eax
je 0x40600c
push str.files
push esi
call fcn.00412a32
add esp, 8
test eax, eax
je 0x40600c
push str.WinPatch
push esi
call fcn.00412a32
add esp, 8
test eax, eax
je 0x40600c
push str.tsdocbak
push esi
call fcn.00412a32
add esp, 8
test eax, eax
je 0x40600c
push 0x4849ac
push esi
call fcn.00412a32
add esp, 8
test eax, eax
je 0x40600c
push str.Temp
push esi
call fcn.00412a32
add esp, 8
test eax, eax
je 0x40600c
push str.SCDT
push esi
call fcn.00412a32
add esp, 8
test eax, eax
je 0x40600c
mov edi, str.Temp_Docerr_
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push str.Temp_Docerr_
push esi
call fcn.00412594
add esp, 0xc
test eax, eax
jne 0x406019
pop edi
pop esi
mov eax, ebx
pop ebp
pop ebx
add esp, 0x350
ret
mov ecx, 0x40
xor eax, eax
lea edi, [esp + 0x159]
mov byte [esp + 0x158], 0
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
push ebp
push str._s
lea ecx, [esp + 0x160]
push 0x103
push ecx
stosb byte es:[edi], al
call fcn.004129e1
add esp, 0x10
test eax, eax
jl 0x406147
mov ecx, 0x4f
xor eax, eax
lea edi, [esp + 0x1c]
mov dword [esp + 0x18], 0
rep stosd dword es:[edi], eax
lea edx, [esp + 0x18]
lea eax, [esp + 0x158]
push edx
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
cmp eax, 0xffffffff
mov dword [esp + 0x14], eax
je 0x40613a
mov esi, dword [sym.imp.KERNEL32.dll_lstrcmpA]
lea ecx, [esp + 0x44]
push 0x4846ec
push ecx
call esi
test eax, eax
je 0x406113
lea edx, [esp + 0x44]
push 0x4846e8
push edx
call esi
test eax, eax
je 0x406113
mov ecx, 0x40
xor eax, eax
lea edi, [esp + 0x25d]
mov byte [esp + 0x25c], 0
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea eax, [esp + 0x44]
lea ecx, [esp + 0x25c]
push eax
push ebp
push 0x48497c
push 0x103
push ecx
call fcn.004129e1
add esp, 0x14
test eax, eax
jl 0x406113
mov edx, dword [esp + 0x36c]
mov eax, dword [esp + 0x368]
push edx
lea ecx, [esp + 0x260]
push eax
push ecx
call fcn.00405e90
add esp, 0xc
mov ebx, eax
test ebx, ebx
je 0x40612f
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x18]
push edx
push eax
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
jne 0x406092
mov ecx, dword [esp + 0x14]
push ecx
call dword [sym.imp.KERNEL32.dll_FindClose]
pop edi
pop esi
mov eax, ebx
pop ebp
pop ebx
add esp, 0x350
ret
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x350
ret