Function at 0x401a40
Capabilities:
Set file attributes

Disassembly:
push 0xffffffffffffffff
push 0x42a4bb
mov eax, dword fs:[0]
push eax
sub esp, 0x690
mov eax, dword [0x435db4]
xor eax, esp
mov dword [esp + 0x688], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x435db4]
xor eax, esp
push eax
lea eax, [esp + 0x6a4]
mov dword fs:[0], eax
mov ebp, dword [esp + 0x6b4]
xor esi, esi
push 0x206
lea eax, [esp + 0x49a]
push esi
push eax
mov dword [esp + 0x24], ecx
mov word [esp + 0x4a0], si
call fcn.004151b0
add esp, 0xc
push 0x206
lea ecx, [esp + 0x292]
push esi
push ecx
mov word [esp + 0x298], si
call fcn.004151b0
add esp, 0xc
push 0x42ef74
push ebp
push str.ScrubFolder__s___s_
call fcn.00403590
mov edi, eax
call fcn.00403a70
mov eax, ebp
add esp, 0xc
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, si
jne 0x401ae3
sub eax, edx
sar eax, 1
je 0x401cac
cmp ebp, esi
je 0x401cac
push ebp
lea edx, [esp + 0x498]
push 0x104
push edx
call fcn.00413404
mov ebx, dword [sym.imp.SHLWAPI.dll_PathAppendW]
add esp, 0xc
push 0x42ef74
lea eax, [esp + 0x498]
push eax
call ebx
lea ecx, [esp + 0x3c]
push ecx
lea edx, [esp + 0x498]
push edx
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov edi, eax
cmp edi, 0xffffffff
je 0x401cc0
lea esp, [esp]
mov ecx, 0x42ef68
lea eax, [esp + 0x68]
lea esp, [esp]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x401b86
cmp dx, si
je 0x401b82
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x401b86
add eax, 4
add ecx, 4
cmp dx, si
jne 0x401b60
xor eax, eax
jmp 0x401b8b
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, esi
je 0x401c40
mov ecx, 0x42ef6c
lea eax, [esp + 0x68]
lea esp, [esp]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x401bc6
cmp dx, si
je 0x401bc2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x401bc6
add eax, 4
add ecx, 4
cmp dx, si
jne 0x401ba0
xor eax, eax
jmp 0x401bcb
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, esi
je 0x401c40
push ebp
lea eax, [esp + 0x290]
push 0x104
push eax
call fcn.00413404
add esp, 0xc
lea ecx, [esp + 0x68]
push ecx
lea edx, [esp + 0x290]
push edx
call ebx
push 0x80
lea eax, [esp + 0x290]
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
test byte [esp + 0x3c], 0x10
je 0x401c32
mov eax, dword [esp + 0x6bc]
cmp eax, esi
je 0x401c32
push eax
push 0x42ef74
lea ecx, [esp + 0x294]
push ecx
mov ecx, dword [esp + 0x24]
call fcn.00401a40
jmp 0x401c40
lea edx, [esp + 0x28c]
push edx
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
lea eax, [esp + 0x3c]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
cmp eax, esi
jne 0x401b50
push edi
call dword [sym.imp.KERNEL32.dll_FindClose]
mov dword [esp + 0x1c], vtable.CList_wchar_t___wchar_t__.0
mov dword [esp + 0x28], esi
mov dword [esp + 0x2c], esi
mov dword [esp + 0x24], esi
mov dword [esp + 0x20], esi
mov dword [esp + 0x30], esi
mov dword [esp + 0x34], 0xa
lea edx, [esp + 0x1c]
mov ecx, ebp
mov dword [esp + 0x6ac], esi
call fcn.00401cf0
lea esi, [esp + 0x1c]
mov dword [esp + 0x6ac], 0xffffffff
call fcn.00402180
mov eax, 1
jmp 0x401cc2
push str.folderToRemove_is_zero_length_or_NULL.__Cannot_remove__aborting...
call fcn.00403590
mov edi, eax
call fcn.00403a70
add esp, 4
xor eax, eax
mov ecx, dword [esp + 0x6a4]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x688]
xor ecx, esp
call fcn.00412bb4
add esp, 0x69c
ret 0xc