Function at 0x4ebca8
Capabilities:
Delete directory
Get file attributes

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffd38
push ebx
push esi
push edi
xor ebx, ebx
mov dword [ebp - 0x2c8], ebx
mov dword [ebp - 0x2c4], ebx
mov dword [ebp - 0x2c0], ebx
mov dword [ebp - 0x2bc], ebx
mov dword [ebp - 0x2b8], ebx
mov dword [ebp - 0x29c], ebx
mov dword [ebp - 0x2b0], ebx
mov dword [ebp - 0x2b4], ebx
mov dword [ebp - 0x298], ebx
mov dword [ebp - 4], ebx
mov dword [ebp - 0x280], ecx
mov esi, edx
mov dword [ebp - 0x27c], eax
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebp + 8]
call sub.rtl250.bpl__System__IntfAddRef_qqrx44System__DelphiInterface_17System_IInterface_
lea eax, [ebp - 0x278]
mov edx, dword [sym.imp.rtl250.bpl___xp_26System_Sysutils_TSearchRec]
call sub.rtl250.bpl__System__InitializeRecord_qqrpvt1
xor eax, eax
push ebp
push 0x4ec116
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [ebp - 0x281], 0
mov eax, dword [ebp - 0x27c]
call sub.rtl250.bpl__System__UStrLen_qqrx20System_UnicodeString
cmp eax, 4
jl 0x4ec0c7
mov dl, 1
mov eax, dword [ebp - 0x27c]
call sub.rtl250.bpl__System_Sysutils_FileExists_qqrx20System_UnicodeStringo
test al, al
je 0x4ebf75
xor eax, eax
push ebp
push 0x4ebf00
push dword fs:[eax]
mov dword fs:[eax], esp
cmp dword [ebp + 8], 0
je 0x4ebd93
mov cl, 1
mov edx, dword [ebp - 0x27c]
mov eax, dword [ebp + 8]
mov ebx, dword [eax]
call dword [ebx + 0xc]
test al, al
jne 0x4ebd93
mov byte [ebp - 0x281], 1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4ec0c7
lea edx, [ebp - 0x298]
mov eax, dword [ebp - 0x27c]
call sub.rtl250.bpl__System_Sysutils_ExtractFileDrive_qqrx20System_UnicodeString
mov eax, dword [ebp - 0x298]
lea edx, [ebp - 4]
call fcn.004ec790
mov eax, dword [ebp - 4]
call fcn.004ec958
test al, al
jne 0x4ebdcb
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4ec0c7
lea eax, [ebp - 0x29c]
push eax
lea edx, [ebp - 0x2b0]
mov eax, dword [ebp - 4]
call sub.rtl250.bpl__System_Sysutils_IncludeTrailingPathDelimiter_qqrx20System_UnicodeString
mov eax, dword [ebp - 0x2b0]
mov dword [ebp - 0x2ac], eax
mov byte [ebp - 0x2a8], 0x11
lea eax, [ebp - 0x294]
call sub.rtl250.bpl__System_Sysutils_TGuidHelper_NewGuid_qqrv
lea eax, [ebp - 0x294]
lea edx, [ebp - 0x2b4]
call sub.rtl250.bpl__System_Sysutils_TGuidHelper_ToString_qqrv
mov eax, dword [ebp - 0x2b4]
mov dword [ebp - 0x2a4], eax
mov byte [ebp - 0x2a0], 0x11
lea edx, [ebp - 0x2ac]
mov ecx, 1
mov eax, 0x4ec13c
call sub.rtl250.bpl__System_Sysutils_Format_qqrx20System_UnicodeStringpx14System_TVarRecxi
mov edx, dword [ebp - 0x29c]
lea eax, [ebp - 4]
call sub.rtl250.bpl__System__UStrLAsg_qqrr20System_UnicodeStringx20System_UnicodeString
mov eax, dword [0x536628]
call sub.rtl250.bpl__System_Syncobjs_TCriticalSection_Enter_qqrv
xor eax, eax
push ebp
push 0x4ebeec
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x27c]
call sub.rtl250.bpl__System__UStrToPWChar_qqrx20System_UnicodeString
push eax
call sub.kernel32.dll_GetFileAttributesW
mov ebx, eax
lea eax, [ebp - 0x2b8]
mov ecx, 0x4ec154
mov edx, dword [ebp - 4]
call sub.rtl250.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov edx, dword [ebp - 0x2b8]
mov eax, dword [ebp - 0x27c]
call fcn.004e5968
mov byte [ebp - 0x281], al
cmp byte [ebp - 0x281], 0
je 0x4ebed4
mov eax, dword [ebp - 0x27c]
push eax
lea eax, [ebp - 0x2bc]
mov ecx, 0x4ec178
mov edx, dword [ebp - 4]
call sub.rtl250.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov eax, dword [ebp - 0x2bc]
mov ecx, ebx
mov edx, esi
call fcn.004e4b14
mov eax, dword [ebp - 0x280]
inc dword [eax]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4ebef3
mov eax, dword [0x536628]
call sub.rtl250.bpl__System_Syncobjs_TCriticalSection_Leave_qqrv
ret
lea edx, [ebp - 4]
mov eax, dword [ebp - 0x27c]
call sub.rtl250.bpl__System_Sysutils_IncludeTrailingPathDelimiter_qqrx20System_UnicodeString
mov byte [ebp - 0x281], 1
mov dl, 1
mov eax, dword [ebp - 4]
call sub.rtl250.bpl__System_Sysutils_DirectoryExists_qqrx20System_UnicodeStringo
test al, al
je 0x4ec0c7
lea eax, [ebp - 0x2c4]
mov ecx, 0x4ec1fc
mov edx, dword [ebp - 4]
call sub.rtl250.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov eax, dword [ebp - 0x2c4]
lea ecx, [ebp - 0x278]
mov edx, 0x1ff
call sub.rtl250.bpl__System_Sysutils_FindFirst_qqrx20System_UnicodeStringir26System_Sysutils_TSearchRec
test eax, eax
jne 0x4ec084
xor eax, eax
push ebp
push 0x4ec07d
push dword fs:[eax]
mov dword fs:[eax], esp
test ebx, ebx
je 0x4ebfe8
xor edx, edx
mov eax, ebx
call sub.AxComponentsRTL.bpl__Axrtl_System_Thread_TThread_SleepByAndCheck_qqrui
mov eax, dword [ebp - 0x264]
mov edx, 0x4ec20c
call sub.rtl250.bpl__System__UStrEqual_qqrv
je 0x4ec051
mov eax, dword [ebp - 0x264]
mov edx, 0x4ec21c
call sub.rtl250.bpl__System__UStrEqual_qqrv
je 0x4ec051
push ebx
mov eax, dword [ebp + 8]
push eax
lea eax, [ebp - 0x2c8]
mov ecx, dword [ebp - 0x264]
mov edx, dword [ebp - 4]
call sub.rtl250.bpl__System__UStrCat3_qqrr20System_UnicodeStringx20System_UnicodeStringt2
mov eax, dword [ebp - 0x2c8]
mov ecx, dword [ebp - 0x280]
mov edx, esi
call fcn.004ebca8
test al, al
je 0x4ec045
cmp byte [ebp - 0x281], 0
jne 0x4ec049
xor eax, eax
jmp 0x4ec04b
mov al, 1
mov byte [ebp - 0x281], al
lea eax, [ebp - 0x278]
call sub.rtl250.bpl__System_Sysutils_FindNext_qqrr26System_Sysutils_TSearchRec
test eax, eax
je 0x4ebfdb
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4ec084
lea eax, [ebp - 0x278]
call sub.rtl250.bpl__System_Sysutils_FindClose_qqrr26System_Sysutils_TSearchRec
ret
cmp dword [ebp + 8], 0
je 0x4ec0a4
xor ecx, ecx
mov edx, dword [ebp - 4]
mov eax, dword [ebp + 8]
mov ebx, dword [eax]
call dword [ebx + 0xc]
test al, al
jne 0x4ec0a4
mov byte [ebp - 0x281], 1
jmp 0x4ec0c7
cmp byte [ebp - 0x281], 0
je 0x4ec0c7
mov eax, dword [ebp - 4]
call sub.rtl250.bpl__System__UStrToPWChar_qqrx20System_UnicodeString
push eax
call sub.kernel32.dll_RemoveDirectoryW
cmp eax, 1
sbb eax, eax
inc eax
mov byte [ebp - 0x281], al
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4ec11d
lea eax, [ebp - 0x2c8]
mov edx, 7
call sub.rtl250.bpl__System__UStrArrayClr_qqrpvi
lea eax, [ebp - 0x29c]
mov edx, 2
call sub.rtl250.bpl__System__UStrArrayClr_qqrpvi
lea eax, [ebp - 0x278]
mov edx, dword [sym.imp.rtl250.bpl___xp_26System_Sysutils_TSearchRec]
call sub.rtl250.bpl__System__FinalizeRecord_qqrpvt1
lea eax, [ebp - 4]
call sub.rtl250.bpl__System__UStrClr_qqrpv
lea eax, [ebp + 8]
call sub.rtl250.bpl__System__IntfClear_qqrr44System__DelphiInterface_17System_IInterface_
ret