Function at 0x401940
Capabilities:
Set file attributes

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x404
mov eax, 1
test eax, eax
je 0x401c09
push 0x3e8
push 0
lea ecx, [ebp - 0x3e8]
push ecx
call sub.MSVCRT.dll_memset
add esp, 0xc
lea edx, [ebp - 0x3fc]
push edx
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
push 0xa
push 2
mov eax, dword [ebp - 0x3f6]
and eax, 0xffff
push eax
lea ecx, [ebp - 0x3e8]
push ecx
call fcn.00401c21
add esp, 0x10
push 0x401198
lea edx, [ebp - 0x3e8]
push edx
call sub.MSVCRT.dll_strcat
add esp, 8
push 0xa
push 2
mov eax, dword [ebp - 0x3fa]
and eax, 0xffff
push eax
lea ecx, [ebp - 0x3e8]
push ecx
call fcn.00401c21
add esp, 0x10
push 0x40119c
lea edx, [ebp - 0x3e8]
push edx
call sub.MSVCRT.dll_strcat
add esp, 8
push 0xa
push 4
mov eax, dword [ebp - 0x3fc]
and eax, 0xffff
push eax
lea ecx, [ebp - 0x3e8]
push ecx
call fcn.00401c21
add esp, 0x10
push 0x4011a0
lea edx, [ebp - 0x3e8]
push edx
call sub.MSVCRT.dll_strcat
add esp, 8
push 0xa
push 2
mov eax, dword [ebp - 0x3f4]
and eax, 0xffff
push eax
lea ecx, [ebp - 0x3e8]
push ecx
call fcn.00401c21
add esp, 0x10
push 0x4011a4
lea edx, [ebp - 0x3e8]
push edx
call sub.MSVCRT.dll_strcat
add esp, 8
push 0xa
push 2
mov eax, dword [ebp - 0x3f2]
and eax, 0xffff
push eax
lea ecx, [ebp - 0x3e8]
push ecx
call fcn.00401c21
add esp, 0x10
push 0x4011a8
lea edx, [ebp - 0x3e8]
push edx
call sub.MSVCRT.dll_strcat
add esp, 8
push 0xa
push 2
mov eax, dword [ebp - 0x3f0]
and eax, 0xffff
push eax
lea ecx, [ebp - 0x3e8]
push ecx
call fcn.00401c21
add esp, 0x10
push 0x4011ac
lea edx, [ebp - 0x3e8]
push edx
call sub.MSVCRT.dll_strcat
add esp, 8
push 0xa
push 3
mov eax, dword [ebp - 0x3ee]
and eax, 0xffff
push eax
lea ecx, [ebp - 0x3e8]
push ecx
call fcn.00401c21
add esp, 0x10
push 0x4011b0
lea edx, [ebp - 0x3e8]
push edx
call sub.MSVCRT.dll_strcat
add esp, 8
mov eax, dword [ebp + 8]
and eax, 0xff
mov dword [ebp - 0x404], eax
cmp dword [ebp - 0x404], 4
ja case.0x401afb.2
mov ecx, dword [ebp - 0x404]
jmp dword [ecx*4 + 0x401c0d]
push 0x4011b4
lea edx, [ebp - 0x3e8]
push edx
call sub.MSVCRT.dll_strcat
add esp, 8
jmp case.0x401afb.2
push 0x4011c0
lea eax, [ebp - 0x3e8]
push eax
call sub.MSVCRT.dll_strcat
add esp, 8
jmp case.0x401afb.2
push 0x4011cc
lea ecx, [ebp - 0x3e8]
push ecx
call sub.MSVCRT.dll_strcat
add esp, 8
jmp case.0x401afb.2
push 0x4011d8
lea edx, [ebp - 0x3e8]
push edx
call sub.MSVCRT.dll_strcat
add esp, 8
mov eax, dword [ebp + 0xc]
push eax
lea ecx, [ebp - 0x3e8]
push ecx
call sub.MSVCRT.dll_strcat
add esp, 8
push 0x401150
lea edx, [ebp - 0x3e8]
push edx
call sub.MSVCRT.dll_strcat
add esp, 8
lea eax, [ebp - 0x3e8]
push eax
call sub.MSVCRT.dll_strlen
add esp, 4
mov dword [ebp - 0x3ec], eax
mov dword [ebp - 0x400], 0
jmp 0x401baf
mov ecx, dword [ebp - 0x400]
add ecx, 1
mov dword [ebp - 0x400], ecx
mov edx, dword [ebp - 0x400]
cmp edx, dword [ebp - 0x3ec]
jge 0x401bdc
mov eax, dword [ebp - 0x400]
mov cl, byte [ebp + eax - 0x3e8]
xor cl, 0xab
mov edx, dword [ebp - 0x400]
mov byte [ebp + edx - 0x3e8], cl
jmp 0x401ba0
push 0x7fffffff
mov eax, dword [ebp - 0x3ec]
push eax
lea ecx, [ebp - 0x3e8]
push ecx
push 0x4011e4
call fcn.004017e4
add esp, 0x10
push 2
push 0x4011f4
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
mov esp, ebp
pop ebp
ret