Function at 0x1000c3ab
Capabilities:
Check if file exists
Delete directory
Delete file
Enumerate files on windows
Enumerate files recursively
Get file attributes
Get file system object information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x5a8
lea ecx, [ebp - 0x14c]
call fcn.1000d032
mov dword [ebp - 0x148], 0
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0xffffffff
jne 0x1000c42b
push 0x400
push 0x160
lea ecx, [ebp - 0x2ac]
push ecx
push 0x80
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.SHELL32.dll_SHGetFileInfoA]
mov eax, dword [ebp - 0x2a4]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0xffffffff
jne 0x1000c42b
mov dword [ebp - 0x550], 1
lea ecx, [ebp - 0x14c]
call sub.MFC42.DLL_CString::CString
mov eax, dword [ebp - 0x550]
jmp 0x1000ca21
cmp dword [ebp - 4], 0
jne 0x1000c4fb
mov ecx, dword [ebp + 8]
push ecx
lea ecx, [ebp - 0x3f4]
call sub.MFC42.DLL_CString::CString_2
push 0x100ffeec
lea edx, [ebp - 0x3f4]
push edx
lea eax, [ebp - 0x554]
push eax
call sub.MFC42.DLL_operator
push eax
lea ecx, [ebp - 0x3f4]
call sub.MFC42.DLL_CString::operator_1
lea ecx, [ebp - 0x554]
call sub.MFC42.DLL_CString::CString
push 0x100ffef0
push 0x100ffef4
lea ecx, [ebp - 0x3f4]
call sub.MFC42.DLL_CString::Replace
lea ecx, [ebp - 0x3ec]
push ecx
push 0x100ffef8
lea edx, [ebp - 0x3f4]
push edx
lea eax, [ebp - 0x558]
push eax
call sub.MFC42.DLL_operator
mov ecx, eax
call fcn.10003420
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov dword [ebp - 0x3f0], eax
lea ecx, [ebp - 0x558]
call sub.MFC42.DLL_CString::CString
cmp dword [ebp - 0x3f0], 0xffffffff
je 0x1000c4f0
mov ecx, dword [ebp - 0x3ec]
and ecx, 0x10
test ecx, ecx
je 0x1000c4e3
mov dword [ebp - 4], 0x10
mov edx, dword [ebp - 0x3f0]
push edx
call dword [sym.imp.KERNEL32.dll_FindClose]
lea ecx, [ebp - 0x3f4]
call sub.MFC42.DLL_CString::CString
mov eax, dword [ebp - 4]
and eax, 0x10
test eax, eax
je 0x1000c939
mov ecx, dword [ebp + 8]
push ecx
lea ecx, [ebp - 0x53c]
call sub.MFC42.DLL_CString::CString_2
push 0x100ffefc
lea edx, [ebp - 0x53c]
push edx
lea eax, [ebp - 0x55c]
push eax
call sub.MFC42.DLL_operator
push eax
lea ecx, [ebp - 0x53c]
call sub.MFC42.DLL_CString::operator_1
lea ecx, [ebp - 0x55c]
call sub.MFC42.DLL_CString::CString
push 0x100fff00
push 0x100fff04
lea ecx, [ebp - 0x53c]
call sub.MFC42.DLL_CString::Replace
lea ecx, [ebp - 0x540]
call fcn.1000d032
lea ecx, [ebp - 0x534]
push ecx
push 0x100fff08
lea edx, [ebp - 0x53c]
push edx
lea eax, [ebp - 0x560]
push eax
call sub.MFC42.DLL_operator
mov ecx, eax
call fcn.10003420
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov dword [ebp - 0x538], eax
lea ecx, [ebp - 0x560]
call sub.MFC42.DLL_CString::CString
cmp dword [ebp - 0x538], 0xffffffff
je 0x1000c914
lea ecx, [ebp - 0x534]
push ecx
mov edx, dword [ebp - 0x538]
push edx
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
je 0x1000c907
push 2
call dword [sym.imp.KERNEL32.dll_Sleep]
xor eax, eax
mov al, byte [0x10102dfc]
test eax, eax
je 0x1000c5e6
jmp 0x1000c907
mov ecx, dword [ebp - 0x534]
and ecx, 0x10
test ecx, ecx
je 0x1000c7ac
mov edx, dword [ebp + 0x10]
and edx, 0xff
test edx, edx
je 0x1000c7a7
lea ecx, [ebp - 0x544]
call fcn.1000d032
lea eax, [ebp - 0x508]
push eax
lea ecx, [ebp - 0x544]
call sub.MFC42.DLL_CString::operator_2
push 0x100fff0c
lea ecx, [ebp - 0x544]
push ecx
call fcn.10009dd0
and eax, 0xff
test eax, eax
je 0x1000c79c
push 0x100fff10
lea edx, [ebp - 0x544]
push edx
call fcn.10009dd0
and eax, 0xff
test eax, eax
je 0x1000c79c
push 0x100fff14
lea ecx, [ebp - 0x568]
call sub.MFC42.DLL_CString::CString_2
mov ecx, eax
call fcn.10003420
push eax
lea ecx, [ebp - 0x53c]
call sub.MFC42.DLL_CString::Find_1
cmp eax, 0xffffffff
jne 0x1000c731
push 0x100fff20
lea ecx, [ebp - 0x570]
call sub.MFC42.DLL_CString::CString_2
mov ecx, eax
call fcn.10003420
push eax
lea ecx, [ebp - 0x53c]
call sub.MFC42.DLL_CString::Find_1
xor ecx, ecx
cmp eax, 0xffffffff
setne cl
mov byte [ebp - 0x56c], cl
lea ecx, [ebp - 0x570]
call sub.MFC42.DLL_CString::CString
mov edx, dword [ebp - 0x56c]
and edx, 0xff
test edx, edx
jne 0x1000c731
push 0x100fff2c
lea ecx, [ebp - 0x578]
call sub.MFC42.DLL_CString::CString_2
mov ecx, eax
call fcn.10003420
push eax
lea ecx, [ebp - 0x53c]
call sub.MFC42.DLL_CString::Find_1
xor ecx, ecx
cmp eax, 0xffffffff
setne cl
mov byte [ebp - 0x574], cl
lea ecx, [ebp - 0x578]
call sub.MFC42.DLL_CString::CString
mov edx, dword [ebp - 0x574]
and edx, 0xff
test edx, edx
jne 0x1000c731
mov dword [ebp - 0x5a4], 0
jmp 0x1000c73b
mov dword [ebp - 0x5a4], 1
mov al, byte [ebp - 0x5a4]
mov byte [ebp - 0x564], al
lea ecx, [ebp - 0x568]
call sub.MFC42.DLL_CString::CString
mov ecx, dword [ebp - 0x564]
and ecx, 0xff
test ecx, ecx
je 0x1000c79c
mov dl, byte [ebp + 0x10]
push edx
mov al, byte [ebp + 0xc]
push eax
lea ecx, [ebp - 0x508]
push ecx
lea edx, [ebp - 0x53c]
push edx
lea eax, [ebp - 0x57c]
push eax
call sub.MFC42.DLL_operator
mov ecx, eax
call fcn.10003420
push eax
call fcn.1000c3ab
lea ecx, [ebp - 0x57c]
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x544]
call sub.MFC42.DLL_CString::CString
jmp 0x1000c902
lea ecx, [ebp - 0x508]
push ecx
lea edx, [ebp - 0x53c]
push edx
lea eax, [ebp - 0x548]
push eax
call sub.MFC42.DLL_operator
push 0x100fff34
push 0x100fff38
lea ecx, [ebp - 0x548]
call sub.MFC42.DLL_CString::Replace
push str.YRFSTMP
lea ecx, [ebp - 0x584]
call sub.MFC42.DLL_CString::CString_2
mov ecx, eax
call fcn.10003420
push eax
lea ecx, [ebp - 0x548]
call sub.MFC42.DLL_CString::Find_1
cmp eax, 0xffffffff
jne 0x1000c8ab
push str.ZkQrCode
lea ecx, [ebp - 0x58c]
call sub.MFC42.DLL_CString::CString_2
mov ecx, eax
call fcn.10003420
push eax
lea ecx, [ebp - 0x548]
call sub.MFC42.DLL_CString::Find_1
xor ecx, ecx
cmp eax, 0xffffffff
setne cl
mov byte [ebp - 0x588], cl
lea ecx, [ebp - 0x58c]
call sub.MFC42.DLL_CString::CString
mov edx, dword [ebp - 0x588]
and edx, 0xff
test edx, edx
jne 0x1000c8ab
push str.yrdjtmp
lea ecx, [ebp - 0x594]
call sub.MFC42.DLL_CString::CString_2
mov ecx, eax
call fcn.10003420
push eax
lea ecx, [ebp - 0x548]
call sub.MFC42.DLL_CString::Find_1
xor ecx, ecx
cmp eax, 0xffffffff
setne cl
mov byte [ebp - 0x590], cl
lea ecx, [ebp - 0x594]
call sub.MFC42.DLL_CString::CString
mov edx, dword [ebp - 0x590]
and edx, 0xff
test edx, edx
jne 0x1000c8ab
mov dword [ebp - 0x5a8], 0
jmp 0x1000c8b5
mov dword [ebp - 0x5a8], 1
mov al, byte [ebp - 0x5a8]
mov byte [ebp - 0x580], al
lea ecx, [ebp - 0x584]
call sub.MFC42.DLL_CString::CString
mov ecx, dword [ebp - 0x580]
and ecx, 0xff
test ecx, ecx
je 0x1000c8f7
lea ecx, [ebp - 0x548]
call fcn.10003420
push eax
lea edx, [ebp - 0x534]
push edx
call fcn.1000b4cd
add esp, 8
lea ecx, [ebp - 0x548]
call sub.MFC42.DLL_CString::CString
jmp 0x1000c5b2
mov eax, dword [ebp - 0x538]
push eax
call dword [sym.imp.KERNEL32.dll_FindClose]
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.KERNEL32.dll_RemoveDirectoryA]
lea ecx, [ebp - 0x540]
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x53c]
call sub.MFC42.DLL_CString::CString
jmp 0x1000c9f3
lea edx, [ebp - 0x144]
push edx
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov dword [ebp - 0x148], eax
cmp dword [ebp - 0x148], 0xffffffff
jne 0x1000c983
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov dword [ebp - 0x598], 0
lea ecx, [ebp - 0x14c]
call sub.MFC42.DLL_CString::CString
mov eax, dword [ebp - 0x598]
jmp 0x1000ca21
mov edx, dword [ebp - 0x148]
push edx
call dword [sym.imp.KERNEL32.dll_FindClose]
mov eax, dword [ebp + 8]
push eax
lea ecx, [ebp - 0x144]
push ecx
call fcn.1000b4cd
add esp, 8
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov eax, dword [ebp + 0xc]
and eax, 0xff
test eax, eax
je 0x1000c9f3
lea ecx, [ebp - 0x118]
push ecx
lea ecx, [ebp - 0x54c]
call sub.MFC42.DLL_CString::CString_2
push ecx
mov ecx, esp
mov dword [ebp - 0x59c], esp
lea edx, [ebp - 0x54c]
push edx
call sub.MFC42.DLL_CString::CString_1
call fcn.1000ba34
add esp, 4
lea ecx, [ebp - 0x54c]
call sub.MFC42.DLL_CString::CString
push 0
mov eax, dword [ebp + 8]
push eax
push 0x2001
push 4
call dword [sym.imp.SHELL32.dll_SHChangeNotify]
mov dword [ebp - 0x5a0], 1
lea ecx, [ebp - 0x14c]
call sub.MFC42.DLL_CString::CString
mov eax, dword [ebp - 0x5a0]
mov esp, ebp
pop ebp
ret 0xc