Function at 0x1000a440
Capabilities:
Delete directory

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1018d368
mov eax, dword fs:[0]
push eax
sub esp, 0x4c
mov eax, dword [0x101f62b4]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, edx
mov edi, ecx
push 0x101afe68
push str.reachedRenameEx
call fcn.10040a90
mov ecx, eax
call fcn.10040b40
call fcn.1004cb70
mov esi, dword [ebp + 8]
mov edx, ebx
push eax
push esi
mov ecx, edi
call fcn.100fdf20
add esp, 8
test al, al
jne 0x1000a8e7
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0x101afe68
push str.reachedRename
call fcn.10040a90
mov ecx, eax
call fcn.10040b40
call fcn.1004cb70
push eax
push esi
mov edx, ebx
mov ecx, edi
call fcn.100fdb80
add esp, 8
test al, al
jne 0x1000a8e7
push str.RenamePathToPath_API_Failed_once
push 0x101aee58
call fcn.1004cb70
push eax
call fcn.1004db20
add esp, 0xc
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
call fcn.1004cb70
push eax
push esi
mov edx, ebx
mov ecx, edi
call fcn.100fdb80
add esp, 8
test al, al
jne 0x1000a8e7
push str.RenamePathToPath_API_Failed_twice
push 0x101aee58
call fcn.1004cb70
push eax
call fcn.1004db20
add esp, 0xc
mov eax, edi
cmp dword [edi + 0x14], 8
jb 0x1000a539
mov eax, dword [edi]
push eax
push str.Simulating_it_with_the_Copy_and_Delete_operation.
push 0x101aee58
push ecx
call fcn.1004cb70
add esp, 4
push eax
call fcn.1004db20
add esp, 0x10
push 0x101afe68
push str.reachedCopy
call fcn.10040a90
mov ecx, eax
call fcn.10040b40
xor eax, eax
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 7
mov word [ebp - 0x34], ax
push 0x64
mov dword [ebp - 4], eax
call dword [sym.imp.KERNEL32.dll_Sleep]
sub esp, 0x18
mov eax, esp
mov dword [ebp - 0x3c], esp
push 0
push ebx
push eax
call fcn.1010f8c0
sub esp, 0xc
mov byte [ebp - 4], 1
mov eax, esp
push 0
push edi
push eax
call fcn.1010f8c0
add esp, 0xc
mov byte [ebp - 4], 0
mov dl, 1
xor ecx, ecx
push 0
push 1
call fcn.100063d0
add esp, 0x38
test al, al
je 0x1000a8ab
push 0x101afe68
push str.reachedDelete
call fcn.10040a90
mov ecx, eax
call fcn.10040b40
call fcn.1004cb70
push eax
mov ecx, edi
call fcn.100ff050
add esp, 4
test al, al
je 0x1000a620
call fcn.1004cb70
push str.DeleteDirectoryAtPathEx_Succeeded_i.e._Simulation_with_Copy_and_Delete_operation_Succeeded
push 0x101aee58
push eax
mov ecx, dword [eax]
mov esi, dword [ecx + 0x54]
mov ecx, esi
call dword [0x1019a4f8]
call esi
add esp, 0xc
mov bl, 1
jmp 0x1000a8ad
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
xorps xmm0, xmm0
mov dword [ebp - 0x14], 0
movq qword [ebp - 0x1c], xmm0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
push ecx
push 1
mov byte [ebp - 4], 2
call fcn.1004cb70
push eax
push 1
push 1
lea edx, [ebp - 0x1c]
mov ecx, edi
call fcn.100fe710
mov esi, dword [ebp - 0x1c]
add esp, 0x14
mov byte [ebp - 0x35], al
cmp esi, dword [ebp - 0x18]
je 0x1000a6ea
push 0x101b1dc0
mov edx, esi
lea ecx, [ebp - 0x58]
call fcn.1000b090
add esp, 4
mov byte [ebp - 4], 3
mov ecx, eax
cmp dword [eax + 0x14], 8
jb 0x1000a695
mov ecx, dword [eax]
push dword [eax + 0x10]
push ecx
lea ecx, [ebp - 0x34]
call fcn.10001e70
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0x44]
cmp edx, 8
jb 0x1000a6df
mov ecx, dword [ebp - 0x58]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1000a6d5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000a905
push edx
push ecx
call fcn.1015cbd5
add esp, 8
add esi, 0x18
cmp esi, dword [ebp - 0x18]
jne 0x1000a675
mov al, byte [ebp - 0x35]
test al, al
je 0x1000a722
cmp dword [edi + 0x14], 8
jb 0x1000a6f6
mov edi, dword [edi]
push edi
push str.Simulation_with_Copy_and_Delete_operation_Succeeded.
push 0x101aee58
push ecx
call fcn.1004cb70
add esp, 4
push eax
call fcn.1004db20
add esp, 0x10
lea ecx, [ebp - 0x1c]
mov bl, 1
call fcn.1000ad70
jmp 0x1000a8ad
cmp dword [ebp - 0x20], 8
lea eax, [ebp - 0x34]
cmovae eax, dword [ebp - 0x34]
push eax
push str.deletefailed
call fcn.10040a90
mov ecx, eax
call fcn.10040b40
cmp dword [ebp - 0x20], 8
lea eax, [ebp - 0x34]
cmovae eax, dword [ebp - 0x34]
push eax
push str.Files_Whose_Delete_failed_is__s
push 0x101aee58
push ecx
call fcn.1004cb70
add esp, 4
push eax
call fcn.1004db20
add esp, 0x10
cmp dword [edi + 0x10], 0
je 0x1000a7ce
cmp dword [edi + 0x14], 8
mov eax, edi
jb 0x1000a777
mov eax, dword [edi]
push eax
call dword [sym.imp.SHLWAPI.dll_PathIsDirectoryEmptyW]
test eax, eax
je 0x1000a7ce
push 0x101afe68
push str.EmptyDirRemoveFailed
call fcn.10040a90
mov ecx, eax
call fcn.10040b40
push str.RemoveDirectory_seems_to_have_failed_for_empty_directory__but_considering_it_success...
push 0x101aee58
call fcn.1004cb70
push eax
call fcn.1004db20
add esp, 0xc
cmp dword [edi + 0x14], 8
jb 0x1000a7b8
mov edi, dword [edi]
push edi
call dword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
lea ecx, [ebp - 0x1c]
mov bl, 1
call fcn.1000ad70
jmp 0x1000a8ad
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
cmp dword [edi + 0x14], 8
mov eax, edi
jb 0x1000a7e0
mov eax, dword [edi]
push eax
call dword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
test eax, eax
je 0x1000a828
push 0x101afe68
push str.RemoveDirectorySucceeded
call fcn.10040a90
mov ecx, eax
call fcn.10040b40
push str.RemoveDirectory_succeeded__considering_it_success...
push 0x101aee58
call fcn.1004cb70
push eax
call fcn.1004db20
add esp, 0xc
lea ecx, [ebp - 0x1c]
mov bl, 1
call fcn.1000ad70
jmp 0x1000a8ad
cmp dword [edi + 0x14], 8
mov eax, edi
jb 0x1000a832
mov eax, dword [edi]
push eax
push str.Unable_to_Rename_Folder_:__s._Copy__Delete_simulation_also_failed._Retaining_state
push 0x101aee58
push ecx
call fcn.1004cb70
add esp, 4
push eax
call fcn.1004db20
sub esp, 8
mov eax, esp
mov dword [ebp - 0x40], esp
push 0
push edi
push eax
call fcn.1010f8c0
sub esp, 0xc
mov byte [ebp - 4], 4
mov eax, esp
push 0
push ebx
push eax
call fcn.1010f8c0
add esp, 0xc
mov byte [ebp - 4], 2
mov dl, 1
xor ecx, ecx
push 1
push 1
call fcn.100063d0
add esp, 0x34
push 1
call fcn.1004cb70
push eax
push 1
push 1
lea edx, [ebp - 0x1c]
mov ecx, ebx
call fcn.100fe710
add esp, 0x14
lea ecx, [ebp - 0x1c]
xor bl, bl
call fcn.1000ad70
jmp 0x1000a8ad
xor bl, bl
mov edx, dword [ebp - 0x20]
cmp edx, 8
jb 0x1000a8e3
mov ecx, dword [ebp - 0x34]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1000a8d9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000a905
push edx
push ecx
call fcn.1015cbd5
add esp, 8
mov al, bl
jmp 0x1000a8e9
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1015c875
mov esp, ebp
pop ebp
ret
call fcn.101686f5
int3