Function at 0x4454b3
Capabilities:
Delete directory

Disassembly:
push 0x48
mov eax, 0x5d6246
call fcn.0056d43d
mov ebx, ecx
mov dword [ebp - 0x2c], ebx
xor eax, eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 4], eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], eax
lea edx, [ebp - 0x50]
mov byte [ebp - 4], 1
call fcn.00445b0b
lea edx, [ebp - 0x44]
mov ecx, ebx
call fcn.00445c94
mov eax, dword [ebp - 0x4c]
mov edi, dword [ebp - 0x50]
sub eax, edi
cdq
push 0x18
pop esi
idiv esi
mov ebx, dword [ebp - 0x44]
mov ecx, eax
mov dword [ebp - 0x30], 0x2f
mov eax, dword [ebp - 0x40]
sub eax, ebx
cdq
idiv esi
mov dword [ebp - 0x34], eax
test ecx, ecx
je 0x445635
mov ebx, dword [ebp - 0x2c]
mov esi, edi
mov edi, ecx
xor eax, eax
lea ecx, [ebp - 0x28]
push ebx
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], eax
call fcn.0040850d
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x18]
test ecx, ecx
jne 0x44554f
push esi
lea ecx, [ebp - 0x28]
call fcn.00406392
jmp 0x4455c9
cmp dword [esi + 0x10], 0
je 0x4455c9
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
push 0x2f
cmovae eax, dword [ebp - 0x28]
movzx eax, word [eax + ecx*2 - 2]
pop ecx
push 0x5c
cmp cx, ax
pop ecx
je 0x445585
cmp cx, ax
je 0x445585
push 0x60db0c
lea ecx, [ebp - 0x28]
call fcn.00409914
push 0x5c
pop ecx
xor edx, edx
mov eax, esi
cmp dword [esi + 0x14], 8
jb 0x445591
mov eax, dword [esi]
movzx eax, word [eax]
cmp word [ebp - 0x30], ax
je 0x44559f
cmp cx, ax
jne 0x4455a2
xor edx, edx
inc edx
cmp dword [esi + 0x14], 8
mov ecx, esi
jb 0x4455ac
mov ecx, dword [esi]
mov eax, dword [esi + 0x10]
lea ecx, [ecx + eax*2]
mov eax, esi
jb 0x4455b8
mov eax, dword [esi]
lea eax, [eax + edx*2]
sub ecx, eax
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.0040993b
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
call fcn.00597cc4
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x14]
pop ecx
cmp eax, 8
jb 0x44561c
mov ecx, dword [ebp - 0x28]
lea eax, [eax*2 + 2]
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x38], ecx
cmp eax, 0x1000
jb 0x445613
lea eax, [ebp - 0x54]
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.00403daf
mov eax, dword [ebp - 0x54]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x38]
push eax
push ecx
call fcn.0056c61e
pop ecx
pop ecx
push 0x18
pop ecx
add esi, ecx
sub edi, 1
jne 0x445525
mov edi, dword [ebp - 0x50]
mov ebx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x34]
jmp 0x445638
push 0x18
pop ecx
test eax, eax
je 0x44575b
mov edi, dword [ebp - 0x34]
mov esi, ebx
mov ebx, dword [ebp - 0x2c]
xor eax, eax
lea ecx, [ebp - 0x28]
push ebx
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], eax
call fcn.0040850d
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x18]
test ecx, ecx
jne 0x445672
push esi
lea ecx, [ebp - 0x28]
call fcn.00406392
jmp 0x4456ec
cmp dword [esi + 0x10], 0
je 0x4456ec
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
push 0x2f
cmovae eax, dword [ebp - 0x28]
movzx eax, word [eax + ecx*2 - 2]
pop ecx
push 0x5c
cmp cx, ax
pop ecx
je 0x4456a8
cmp cx, ax
je 0x4456a8
push 0x60db0c
lea ecx, [ebp - 0x28]
call fcn.00409914
push 0x5c
pop ecx
xor edx, edx
mov eax, esi
cmp dword [esi + 0x14], 8
jb 0x4456b4
mov eax, dword [esi]
movzx eax, word [eax]
cmp word [ebp - 0x30], ax
je 0x4456c2
cmp cx, ax
jne 0x4456c5
xor edx, edx
inc edx
cmp dword [esi + 0x14], 8
mov ecx, esi
jb 0x4456cf
mov ecx, dword [esi]
mov eax, dword [esi + 0x10]
lea ecx, [ecx + eax*2]
mov eax, esi
jb 0x4456db
mov eax, dword [esi]
lea eax, [eax + edx*2]
sub ecx, eax
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.0040993b
lea ecx, [ebp - 0x28]
call fcn.004454b3
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
call dword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x14]
cmp eax, 8
jb 0x445747
mov ecx, dword [ebp - 0x28]
lea eax, [eax*2 + 2]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x34], ecx
cmp eax, 0x1000
jb 0x44573e
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x34]
push eax
call fcn.00403daf
mov eax, dword [ebp - 0x2c]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x34]
push eax
push ecx
call fcn.0056c61e
pop ecx
pop ecx
push 0x18
pop ecx
add esi, ecx
sub edi, 1
jne 0x445648
mov edi, dword [ebp - 0x50]
mov ebx, dword [ebp - 0x44]
test ebx, ebx
je 0x4457ad
mov esi, ebx
jmp 0x44576f
mov ecx, esi
call fcn.00403d40
push 0x18
pop ecx
add esi, ecx
cmp esi, dword [ebp - 0x40]
jne 0x445763
mov eax, dword [ebp - 0x3c]
sub eax, ebx
mov dword [ebp - 0x2c], ebx
cdq
idiv ecx
imul eax, eax, 0x18
mov dword [ebp - 0x30], eax
cmp eax, 0x1000
jb 0x4457a1
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00403daf
mov eax, dword [ebp - 0x30]
mov ebx, dword [ebp - 0x2c]
pop ecx
pop ecx
push eax
push ebx
call fcn.0056c61e
pop ecx
pop ecx
push 0x18
pop ecx
test edi, edi
je 0x4457fc
mov esi, edi
jmp 0x4457c1
mov ecx, esi
call fcn.00403d40
push 0x18
pop ecx
add esi, ecx
cmp esi, dword [ebp - 0x4c]
jne 0x4457b5
mov eax, dword [ebp - 0x48]
sub eax, edi
mov dword [ebp - 0x2c], edi
cdq
idiv ecx
imul eax, eax, 0x18
mov dword [ebp - 0x30], eax
cmp eax, 0x1000
jb 0x4457f3
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00403daf
mov eax, dword [ebp - 0x30]
mov edi, dword [ebp - 0x2c]
pop ecx
pop ecx
push eax
push edi
call fcn.0056c61e
pop ecx
pop ecx
mov al, 1
call fcn.0056d3ec
ret