Function at 0x44571b
Capabilities:
Delete directory

Disassembly:
push 0x48
mov eax, 0x5c2277
call fcn.00542a1f
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.00445d73
lea edx, [ebp - 0x44]
mov ecx, ebx
call fcn.00445efc
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 0x44589d
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.00408766
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x18]
test ecx, ecx
jne 0x4457b7
push esi
lea ecx, [ebp - 0x28]
call fcn.004065d3
jmp 0x445831
cmp dword [esi + 0x10], 0
je 0x445831
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 0x4457ed
cmp cx, ax
je 0x4457ed
push 0x5fb114
lea ecx, [ebp - 0x28]
call fcn.00409b6d
push 0x5c
pop ecx
xor edx, edx
mov eax, esi
cmp dword [esi + 0x14], 8
jb 0x4457f9
mov eax, dword [esi]
movzx eax, word [eax]
cmp word [ebp - 0x30], ax
je 0x445807
cmp cx, ax
jne 0x44580a
xor edx, edx
inc edx
cmp dword [esi + 0x14], 8
mov ecx, esi
jb 0x445814
mov ecx, dword [esi]
mov eax, dword [esi + 0x10]
lea ecx, [ecx + eax*2]
mov eax, esi
jb 0x445820
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.00409b94
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
call fcn.00579c74
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x14]
pop ecx
cmp eax, 8
jb 0x445884
mov ecx, dword [ebp - 0x28]
lea eax, [eax*2 + 2]
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x38], ecx
cmp eax, 0x1000
jb 0x44587b
lea eax, [ebp - 0x54]
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.00403fef
mov eax, dword [ebp - 0x54]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x38]
push eax
push ecx
call fcn.00541c01
pop ecx
pop ecx
push 0x18
pop ecx
add esi, ecx
sub edi, 1
jne 0x44578d
mov edi, dword [ebp - 0x50]
mov ebx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x34]
jmp 0x4458a0
push 0x18
pop ecx
test eax, eax
je 0x4459c3
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.00408766
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x18]
test ecx, ecx
jne 0x4458da
push esi
lea ecx, [ebp - 0x28]
call fcn.004065d3
jmp 0x445954
cmp dword [esi + 0x10], 0
je 0x445954
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 0x445910
cmp cx, ax
je 0x445910
push 0x5fb114
lea ecx, [ebp - 0x28]
call fcn.00409b6d
push 0x5c
pop ecx
xor edx, edx
mov eax, esi
cmp dword [esi + 0x14], 8
jb 0x44591c
mov eax, dword [esi]
movzx eax, word [eax]
cmp word [ebp - 0x30], ax
je 0x44592a
cmp cx, ax
jne 0x44592d
xor edx, edx
inc edx
cmp dword [esi + 0x14], 8
mov ecx, esi
jb 0x445937
mov ecx, dword [esi]
mov eax, dword [esi + 0x10]
lea ecx, [ecx + eax*2]
mov eax, esi
jb 0x445943
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.00409b94
lea ecx, [ebp - 0x28]
call fcn.0044571b
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 0x4459af
mov ecx, dword [ebp - 0x28]
lea eax, [eax*2 + 2]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x34], ecx
cmp eax, 0x1000
jb 0x4459a6
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x34]
push eax
call fcn.00403fef
mov eax, dword [ebp - 0x2c]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x34]
push eax
push ecx
call fcn.00541c01
pop ecx
pop ecx
push 0x18
pop ecx
add esi, ecx
sub edi, 1
jne 0x4458b0
mov edi, dword [ebp - 0x50]
mov ebx, dword [ebp - 0x44]
test ebx, ebx
je 0x445a15
mov esi, ebx
jmp 0x4459d7
mov ecx, esi
call fcn.00403f80
push 0x18
pop ecx
add esi, ecx
cmp esi, dword [ebp - 0x40]
jne 0x4459cb
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 0x445a09
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00403fef
mov eax, dword [ebp - 0x30]
mov ebx, dword [ebp - 0x2c]
pop ecx
pop ecx
push eax
push ebx
call fcn.00541c01
pop ecx
pop ecx
push 0x18
pop ecx
test edi, edi
je 0x445a64
mov esi, edi
jmp 0x445a29
mov ecx, esi
call fcn.00403f80
push 0x18
pop ecx
add esi, ecx
cmp esi, dword [ebp - 0x4c]
jne 0x445a1d
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 0x445a5b
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00403fef
mov eax, dword [ebp - 0x30]
mov edi, dword [ebp - 0x2c]
pop ecx
pop ecx
push eax
push edi
call fcn.00541c01
pop ecx
pop ecx
mov al, 1
call fcn.005429ce
ret