Function at 0x4a16e0
Capabilities:
Delete volume shadow copies

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x4a1aa6
sub esp, 0x5c
mov edx, dword [esp + 0x64]
cmp edx, 0x20000000
jge 0x4a1a3b
mov ebx, dword [esp + 0x6c]
cmp ebx, 0x20000000
jge 0x4a19d1
mov dword [esp + 0x4a], 0
mov dword [esp + 0x4c], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0x40], 0
mov dword [esp + 0x42], 0
mov dword [esp + 0x46], 0
nop
mov eax, edx
xor ecx, ecx
jmp 0x4a175a
or edx, 0xffffff80
mov byte [esp + ecx + 0x4a], dl
inc ecx
mov edx, ebp
mov ebp, edx
and edx, 0x7f
sar ebp, 7
test ebp, ebp
je 0x4a1770
cmp ecx, 0xa
jb 0x4a1750
jmp 0x4a19c5
cmp ecx, 0xa
jae 0x4a19b9
mov byte [esp + ecx + 0x4a], dl
nop
mov edx, ebx
xor ebp, ebp
jmp 0x4a178e
or ebx, 0xffffff80
mov byte [esp + ebp + 0x40], bl
inc ebp
mov ebx, esi
mov esi, ebx
and ebx, 0x7f
sar esi, 7
test esi, esi
je 0x4a17a4
cmp ebp, 0xa
jb 0x4a1784
jmp 0x4a19ad
cmp ebp, 0xa
jae 0x4a19a1
mov dword [esp + 0x30], ebp
mov dword [esp + 0x34], ecx
mov byte [esp + ebp + 0x40], bl
lea ebx, [ecx + eax + 2]
mov dword [esp + 0x2c], ebx
lea esi, [eax + ecx]
mov dword [esp + 0x3c], esi
test edx, edx
je 0x4a17dd
lea edi, [edx + ebp]
lea edi, [edi + esi + 3]
movzx ebp, byte [esp + 0x70]
or ebp, 2
jmp 0x4a17e4
mov edi, ebx
movzx ebp, byte [esp + 0x70]
mov dword [esp + 0x38], edi
xchg ebp, eax
mov byte [esp + 0x27], al
xchg ebp, eax
lea eax, [0x535200]
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], edi
call fcn.00447510
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x38]
test ecx, ecx
jbe 0x4a199a
movzx edx, byte [esp + 0x27]
mov byte [eax], dl
lea edx, [ecx - 1]
mov ebx, edx
neg edx
sar edx, 0x1f
and edx, 1
add edx, eax
mov ebp, dword [esp + 0x34]
lea esi, [ebp + 1]
cmp esi, ebx
jl 0x4a1837
mov esi, ebx
mov dword [esp + 0x58], eax
lea ebx, [esp + 0x4a]
cmp ebx, edx
je 0x4a185f
mov dword [esp], edx
mov dword [esp + 4], ebx
mov dword [esp + 8], esi
call fcn.0045fce0
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x38]
mov ebp, dword [esp + 0x34]
lea edx, [ebp + 2]
cmp ecx, edx
jb 0x4a1993
mov ebx, ecx
sub ecx, ebp
lea ebp, [ecx - 2]
mov esi, ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add edx, eax
mov ebp, dword [esp + 0x64]
cmp ebp, esi
jl 0x4a188a
mov ebp, esi
mov esi, dword [esp + 0x60]
cmp esi, edx
je 0x4a18b6
mov dword [esp], edx
mov dword [esp + 4], esi
mov dword [esp + 8], ebp
call fcn.0045fce0
mov eax, dword [esp + 0x6c]
test eax, eax
mov eax, dword [esp + 0x58]
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x38]
jmp 0x4a18bc
mov edx, dword [esp + 0x6c]
test edx, edx
je 0x4a1979
mov ebp, dword [esp + 0x2c]
cmp ebx, ebp
jb 0x4a198a
mov esi, dword [esp + 0x3c]
sub ebx, esi
lea ecx, [ebx - 2]
mov esi, ecx
neg ecx
sar ecx, 0x1f
and ebp, ecx
add ebp, eax
mov edi, dword [esp + 0x30]
mov ecx, edx
lea edx, [edi + 1]
mov dword [esp + 0x28], edx
cmp edx, esi
jl 0x4a18f5
mov edx, esi
mov dword [esp + 0x3c], ebx
lea ebx, [esp + 0x40]
cmp ebx, ebp
je 0x4a1939
mov dword [esp + 0x38], esi
mov dword [esp + 0x54], ebp
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
call fcn.0045fce0
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x38]
cmp eax, ecx
mov edx, eax
mov ebp, dword [esp + 0x54]
mov esi, ecx
mov edi, dword [esp + 0x30]
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x6c]
jmp 0x4a193f
mov edx, dword [esp + 0x28]
cmp edx, esi
ja 0x4a1981
mov ebx, dword [esp + 0x3c]
sub ebx, edi
add ebx, 0xfffffffd
mov esi, ebx
neg ebx
sar ebx, 0x1f
and ebx, edx
lea edx, [ebp + ebx]
cmp ecx, esi
jl 0x4a195d
mov ecx, esi
mov ebx, dword [esp + 0x68]
cmp ebx, edx
je 0x4a1979
mov dword [esp], edx
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
call fcn.0045fce0
mov eax, dword [esp + 0x58]
mov dword [esp + 0x74], eax
add esp, 0x5c
ret
mov eax, edx
mov ecx, esi
call fcn.0045f4b0
mov eax, ebp
mov ecx, ebx
call fcn.0045f4b0
mov eax, edx
call fcn.0045f4b0
xor eax, eax
call fcn.0045f450
mov eax, ebp
mov ecx, 0xa
call fcn.0045f450
mov eax, ebp
mov ecx, 0xa
call fcn.0045f450
mov eax, ecx
mov ecx, 0xa
call fcn.0045f450
mov eax, ecx
mov ecx, 0xa
call fcn.0045f450
mov dword [esp], 0
lea eax, [0x54f90c]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x20
mov eax, dword [esp + 0x68]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 0x400
lea eax, [0x547f5b]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 3
call fcn.0044cec0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00408c10
mov eax, dword [esp + 8]
lea ecx, [0x535040]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004332d0
mov dword [esp], 0
lea eax, [0x54fdfb]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x21
mov eax, dword [esp + 0x60]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 0x400
lea eax, [0x547f5b]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 3
call fcn.0044cec0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00408c10
mov eax, dword [esp + 8]
lea ecx, [0x535040]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004332d0
nop
call fcn.0045e000
jmp fcn.004a16e0