Function at 0x4056f0
Capabilities:
Set file attributes

Disassembly:
sub esp, 0x668
push ebx
mov ebx, dword [esp + 0x670]
push ebp
push esi
push edi
xor edi, edi
cmp ebx, edi
je 0x4059a1
push ebx
call fcn.0041233b
add esp, 4
test eax, eax
je 0x4059a1
push edi
push edi
push edi
push edi
lea eax, [esp + 0x20]
push edi
push eax
push ebx
mov dword [esp + 0x2c], edi
call fcn.00401ca0
mov eax, dword [esp + 0x2c]
add esp, 0x1c
cmp eax, 0xffffffff
je 0x40574e
test al, 1
je 0x40574e
and al, 0xfe
push eax
push ebx
mov dword [esp + 0x18], eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
mov ecx, dword [esp + 0x684]
mov edx, dword [esp + 0x680]
push ecx
push edx
push ebx
call dword [sym.imp.ADVAPI32.dll_SetFileSecurityW]
mov ebp, eax
cmp ebp, edi
je 0x405994
mov eax, dword [esp + 0x10]
and eax, 0x10
cmp al, 0x10
je 0x405787
pop edi
mov eax, ebp
pop esi
pop ebp
pop ebx
add esp, 0x668
ret
push 0x5c
push ebx
call fcn.004124d7
mov esi, eax
add esp, 8
cmp esi, edi
je 0x405877
add esi, 2
push str.mails
push esi
call fcn.0041301e
add esp, 8
test eax, eax
je 0x40586a
push str.MailsTemp
push esi
call fcn.0041301e
add esp, 8
test eax, eax
je 0x40586a
push str.MailsLeave
push esi
call fcn.0041301e
add esp, 8
test eax, eax
je 0x40586a
push str.files
push esi
call fcn.0041301e
add esp, 8
test eax, eax
je 0x40586a
push str.WinPatch
push esi
call fcn.0041301e
add esp, 8
test eax, eax
je 0x40586a
push str.tsdocbak
push esi
call fcn.0041301e
add esp, 8
test eax, eax
je 0x40586a
push 0x49ec34
push esi
call fcn.0041301e
add esp, 8
test eax, eax
je 0x40586a
push 0x49ec28
push esi
call fcn.0041301e
add esp, 8
test eax, eax
je 0x40586a
push str.SCDT
push esi
call fcn.0041301e
add esp, 8
test eax, eax
je 0x40586a
push str.Temp_Docerr_
call fcn.0041233b
push eax
push str.Temp_Docerr_
push esi
call fcn.00412814
add esp, 0x10
test eax, eax
jne 0x405877
pop edi
mov eax, ebp
pop esi
pop ebp
pop ebx
add esp, 0x668
ret
mov word [esp + 0x268], di
mov ecx, 0x81
xor eax, eax
lea edi, [esp + 0x26a]
rep stosd dword es:[edi], eax
push ebx
push 0x49ebf4
lea ecx, [esp + 0x270]
push 0x103
push ecx
stosw word es:[edi], ax
call fcn.00412fae
add esp, 0x10
test eax, eax
jl 0x4059a1
xor esi, esi
mov ecx, 0x93
xor eax, eax
lea edi, [esp + 0x1c]
mov dword [esp + 0x18], esi
lea edx, [esp + 0x18]
rep stosd dword es:[edi], eax
lea eax, [esp + 0x268]
push edx
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
cmp eax, 0xffffffff
mov dword [esp + 0x14], eax
je 0x405994
mov edi, dword [sym.imp.KERNEL32.dll_lstrcmpW]
lea ecx, [esp + 0x44]
push 0x49e940
push ecx
call edi
test eax, eax
je 0x40596d
lea edx, [esp + 0x44]
push 0x49e93c
push edx
call edi
test eax, eax
je 0x40596d
mov ecx, 0x81
xor eax, eax
lea edi, [esp + 0x472]
mov word [esp + 0x470], si
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea eax, [esp + 0x44]
lea ecx, [esp + 0x470]
push eax
push ebx
push 0x49ebe8
push 0x103
push ecx
call fcn.00412fae
add esp, 0x14
test eax, eax
jl 0x40596d
mov edx, dword [esp + 0x684]
mov eax, dword [esp + 0x680]
push edx
lea ecx, [esp + 0x474]
push eax
push ecx
call fcn.004056f0
add esp, 0xc
mov ebp, eax
cmp ebp, esi
je 0x405989
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x18]
push edx
push eax
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x4058e7
mov ecx, dword [esp + 0x14]
push ecx
call dword [sym.imp.KERNEL32.dll_FindClose]
pop edi
mov eax, ebp
pop esi
pop ebp
pop ebx
add esp, 0x668
ret
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x668
ret