Function at 0x47bbfc
Capabilities:
Delete directory
Delete file
Enumerate files on windows
Enumerate files recursively
Move file

Disassembly:
push 0x2b0
mov eax, 0x4b92c1
call fcn.004935c5
mov eax, dword [ebp + 8]
mov edi, dword [ebp + 0xc]
xor ebx, ebx
mov dword [ebp - 0x2bc], eax
cmp eax, ebx
je 0x47bf58
cmp edi, ebx
je 0x47bf58
push 0x24c
lea eax, [ebp - 0x2b0]
push ebx
push eax
mov dword [ebp - 0x2b4], ebx
call fcn.00492b40
push 7
pop esi
xor eax, eax
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x38], ebx
mov word [ebp - 0x48], ax
push dword [ebp - 0x2bc]
lea eax, [ebp - 0x64]
push eax
mov dword [ebp - 4], ebx
call fcn.0047bb65
add esp, 0x14
push eax
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 1
call fcn.0042e4be
push ebx
push 1
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], bl
call fcn.0042e109
push edi
call fcn.00493091
pop ecx
push eax
push edi
lea ecx, [ebp - 0x48]
call fcn.0042edb8
cmp dword [ebp - 0x34], 8
mov eax, dword [ebp - 0x48]
jae 0x47bc9d
lea eax, [ebp - 0x48]
lea ecx, [ebp - 0x2b4]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov dword [ebp - 0x2b8], eax
lea ecx, [ebp - 0x2b8]
mov byte [ebp - 4], 2
call fcn.0047b7a6
test al, al
je 0x47bd5a
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
call esi
cmp eax, 0x12
je 0x47bd29
cmp eax, 3
je 0x47bd29
call esi
cmp eax, ebx
jle 0x47bcea
and eax, 0xffff
or eax, 0x80070000
mov esi, eax
push esi
push str.FindFirstFile_Failed:_0x_08x.
push str.kupdate::KPathUtil::DeleteDirMatchFiles
push 0x18a
push str.S:_func_improvement_20150701_branchCoding_supportwpsupdateUpdateClientupdateutilKPathUtil.cpp
push ebx
call fcn.0042f683
add esp, 0x18
cmp dword [ebp - 0x2b8], ebx
je 0x47bd48
cmp dword [ebp - 0x2b8], 0xffffffff
je 0x47bd48
push dword [ebp - 0x2b8]
call dword [sym.imp.KERNEL32.dll_FindClose]
jmp 0x47bd48
cmp dword [ebp - 0x2b8], ebx
je 0x47bd46
cmp dword [ebp - 0x2b8], 0xffffffff
je 0x47bd46
push dword [ebp - 0x2b8]
call dword [sym.imp.KERNEL32.dll_FindClose]
xor esi, esi
push ebx
push 1
lea ecx, [ebp - 0x48]
call fcn.0042e109
mov eax, esi
jmp 0x47bf7a
xor eax, eax
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x1c], ebx
mov word [ebp - 0x2c], ax
mov byte [ebp - 4], 3
push dword [ebp - 0x2bc]
lea eax, [ebp - 0x64]
push eax
call fcn.0047bb65
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 4
call fcn.0042e4be
push ebx
push 1
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 3
call fcn.0042e109
lea eax, [ebp - 0x288]
push eax
call fcn.00493091
pop ecx
push eax
lea eax, [ebp - 0x288]
push eax
lea ecx, [ebp - 0x2c]
call fcn.0042edb8
test byte [ebp - 0x2b4], 0x10
je 0x47be16
lea eax, [ebp - 0x288]
push 0x4cd508
push eax
call fcn.00498165
pop ecx
pop ecx
test eax, eax
je 0x47be47
lea eax, [ebp - 0x288]
push 0x4d0900
push eax
call fcn.00498165
pop ecx
pop ecx
test eax, eax
je 0x47be47
cmp dword [ebp - 0x18], 8
mov eax, dword [ebp - 0x2c]
jae 0x47bdf7
lea eax, [ebp - 0x2c]
push edi
push eax
call fcn.0047bbfc
mov esi, eax
pop ecx
pop ecx
cmp esi, ebx
jge 0x47be47
push ebx
push 1
lea ecx, [ebp - 0x2c]
call fcn.0042e109
jmp 0x47bd0a
cmp dword [ebp - 0x18], 8
mov eax, dword [ebp - 0x2c]
jae 0x47be22
lea eax, [ebp - 0x2c]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
jne 0x47be47
cmp dword [ebp - 0x18], 8
mov eax, dword [ebp - 0x2c]
jae 0x47be39
lea eax, [ebp - 0x2c]
push 4
push ebx
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileExW]
test eax, eax
je 0x47bebd
lea eax, [ebp - 0x2b4]
push eax
push dword [ebp - 0x2b8]
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x47bd6a
push ebx
lea ecx, [ebp - 0x2b8]
call fcn.0047b7c0
push 0x4c80f0
push edi
call fcn.00498165
pop ecx
pop ecx
test eax, eax
jne 0x47bf21
push dword [ebp - 0x2bc]
call dword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
test eax, eax
jne 0x47bf21
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, ebx
jle 0x47beab
and eax, 0xffff
or eax, 0x80070000
push eax
push str.Failed_RemoveDirectory:_0x_08x.
push str.kupdate::KPathUtil::DeleteDirMatchFiles
push 0x1a9
jmp 0x47bee1
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, ebx
jle 0x47bed1
and eax, 0xffff
or eax, 0x80070000
push eax
push str.DeleteFile_Failed:_0x_08x.
push str.kupdate::KPathUtil::DeleteDirMatchFiles
push 0x1a1
push str.S:_func_improvement_20150701_branchCoding_supportwpsupdateUpdateClientupdateutilKPathUtil.cpp
push ebx
call fcn.0042f683
add esp, 0x18
push ebx
push 1
lea ecx, [ebp - 0x2c]
call fcn.0042e109
cmp dword [ebp - 0x2b8], ebx
je 0x47bf17
cmp dword [ebp - 0x2b8], 0xffffffff
je 0x47bf17
push dword [ebp - 0x2b8]
call dword [sym.imp.KERNEL32.dll_FindClose]
mov esi, 0x80004005
jmp 0x47bd48
push ebx
push 1
lea ecx, [ebp - 0x2c]
call fcn.0042e109
cmp dword [ebp - 0x2b8], ebx
je 0x47bf49
cmp dword [ebp - 0x2b8], 0xffffffff
je 0x47bf49
push dword [ebp - 0x2b8]
call dword [sym.imp.KERNEL32.dll_FindClose]
push ebx
push 1
lea ecx, [ebp - 0x48]
call fcn.0042e109
xor eax, eax
jmp 0x47bf7a
push str.Invalid_Args.
push str.kupdate::KPathUtil::DeleteDirMatchFiles
push 0x176
push str.S:_func_improvement_20150701_branchCoding_supportwpsupdateUpdateClientupdateutilKPathUtil.cpp
push ebx
call fcn.0042f683
add esp, 0x14
mov eax, 0x80070057
call fcn.00493648
ret