Function at 0x4306d0
Capabilities:
Check if file exists
Delete directory
Delete file
Enumerate files on windows
Get file attributes
Set file attributes

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4f0ab6
mov eax, dword fs:[0]
push eax
sub esp, 0x368
mov eax, dword [0x5564b0]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
push eax
lea ecx, [ebp - 0x84]
call fcn.0042ea50
xor ebx, ebx
mov dword [ebp - 4], ebx
mov eax, dword [ebp - 0x84]
mov edi, 8
cmp dword [ebp - 0x70], edi
jae 0x430728
lea eax, [ebp - 0x84]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x43074f
cmp dword [ebp - 0x70], edi
jb 0x430748
mov eax, dword [ebp - 0x84]
push eax
call fcn.0049acb7
add esp, 4
mov al, 1
jmp 0x4308d5
mov esi, dword [ebp - 0x84]
cmp dword [ebp - 0x70], edi
jae 0x430760
lea esi, [ebp - 0x84]
xor ecx, ecx
mov dword [ebp - 0x2d8], esi
mov dword [ebp - 0x1c], 7
mov dword [ebp - 0x20], ebx
mov word [ebp - 0x30], cx
mov eax, esi
mov byte [ebp - 4], 1
lea edx, [eax + 2]
nop
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x430780
sub eax, edx
sar eax, 1
push eax
push esi
lea ecx, [ebp - 0x30]
call fcn.0040a420
mov esi, dword [ebp - 0x20]
cmp esi, ebx
jne 0x4307b6
mov byte [ebp - 4], 0
cmp dword [ebp - 0x1c], edi
jb 0x430b98
mov edx, dword [ebp - 0x30]
push edx
jmp 0x430b90
mov edi, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x30]
mov eax, ecx
cmp edi, 8
jae 0x4307c6
lea eax, [ebp - 0x30]
cmp word [eax + esi*2 - 2], 0x5c
lea eax, [eax + esi*2 - 2]
je 0x4307ea
push 1
push 0x5186c0
lea ecx, [ebp - 0x30]
call fcn.00412b10
mov edi, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x30]
xor eax, eax
cmp esi, ebx
jbe 0x430820
mov edx, ecx
cmp edi, 8
jae 0x4307fa
lea edx, [ebp - 0x30]
cmp word [edx + eax*2], 0x2f
jne 0x43081b
cmp edi, 8
jae 0x430809
lea ecx, [ebp - 0x30]
mov edx, 0x5c
mov word [ecx + eax*2], dx
mov edi, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x30]
inc eax
cmp eax, esi
jb 0x4307f0
push 0xffffffffffffffff
push ebx
lea ecx, [ebp - 0x30]
xor eax, eax
push ecx
lea ecx, [ebp - 0x4c]
mov dword [ebp - 0x38], 7
mov dword [ebp - 0x3c], ebx
mov word [ebp - 0x4c], ax
call fcn.00409a40
push 3
push 0x521e34
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 2
call fcn.00412b10
push 0x250
lea edx, [ebp - 0x2d4]
push ebx
push edx
call fcn.0049e880
mov eax, dword [ebp - 0x4c]
mov edi, 8
add esp, 0xc
cmp dword [ebp - 0x38], edi
jae 0x430877
lea eax, [ebp - 0x4c]
lea ecx, [ebp - 0x2d4]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov esi, eax
cmp esi, 0xffffffff
jne 0x4308f3
cmp dword [ebp - 0x38], edi
jb 0x43089d
mov edx, dword [ebp - 0x4c]
push edx
call fcn.0049acb7
add esp, 4
xor eax, eax
cmp dword [ebp - 0x1c], edi
mov dword [ebp - 0x38], 7
mov dword [ebp - 0x3c], ebx
mov word [ebp - 0x4c], ax
jb 0x4308be
mov ecx, dword [ebp - 0x30]
push ecx
call fcn.0049acb7
add esp, 4
cmp dword [ebp - 0x70], 8
jb 0x4308d3
mov eax, dword [ebp - 0x84]
push eax
call fcn.0049acb7
add esp, 4
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0049ab39
mov esp, ebp
pop ebp
ret 4
mov ebx, dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov edi, dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
nop
xor edx, edx
push 0xffffffffffffffff
push edx
lea eax, [ebp - 0x30]
push eax
lea ecx, [ebp - 0x68]
mov dword [ebp - 0x54], 7
mov dword [ebp - 0x58], 0
mov word [ebp - 0x68], dx
call fcn.00409a40
lea eax, [ebp - 0x2a8]
mov byte [ebp - 4], 3
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x430930
sub eax, edx
sar eax, 1
push eax
lea ecx, [ebp - 0x2a8]
push ecx
lea ecx, [ebp - 0x68]
call fcn.00412b10
test byte [ebp - 0x2d4], 0x10
je 0x430996
lea edx, [ebp - 0x2a8]
push 0x521e3c
push edx
call fcn.004a0daa
add esp, 8
test eax, eax
je 0x4309f9
lea eax, [ebp - 0x2a8]
push 0x521e40
push eax
call fcn.004a0daa
add esp, 8
test eax, eax
je 0x4309f9
lea eax, [ebp - 0x68]
call fcn.00463f52
jmp 0x4309f9
cmp dword [ebp - 0x54], 8
mov eax, dword [ebp - 0x68]
jae 0x4309a2
lea eax, [ebp - 0x68]
push eax
call ebx
test eax, eax
jne 0x4309f9
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 5
jne 0x4309f9
cmp dword [ebp - 0x54], 8
mov eax, dword [ebp - 0x68]
jae 0x4309c0
lea eax, [ebp - 0x68]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp dword [ebp - 0x54], 8
mov ecx, dword [ebp - 0x68]
jae 0x4309d3
lea ecx, [ebp - 0x68]
and eax, 0xfffffffe
push eax
push ecx
call edi
test eax, eax
je 0x430ae5
cmp dword [ebp - 0x54], 8
mov eax, dword [ebp - 0x68]
jae 0x4309ee
lea eax, [ebp - 0x68]
push eax
call ebx
test eax, eax
je 0x430a8d
mov byte [ebp - 4], 2
cmp dword [ebp - 0x54], 8
jb 0x430a0f
mov ecx, dword [ebp - 0x68]
push ecx
call fcn.0049acb7
add esp, 4
lea eax, [ebp - 0x2d4]
push eax
xor edx, edx
push esi
mov dword [ebp - 0x54], 7
mov dword [ebp - 0x58], 0
mov word [ebp - 0x68], dx
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x430900
push esi
call dword [sym.imp.KERNEL32.dll_FindClose]
mov ebx, dword [ebp - 0x2d8]
mov esi, dword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
push ebx
call esi
test eax, eax
jne 0x430b5a
push ebx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
and eax, 0xfffffffe
push eax
push ebx
call edi
test eax, eax
je 0x430b2c
push ebx
call esi
test eax, eax
jne 0x430b5a
lea ecx, [ebp - 0x4c]
call fcn.004cc710
lea ecx, [ebp - 0x30]
call fcn.004cc710
jmp 0x4308be
mov esi, 8
cmp dword [ebp - 0x54], esi
jb 0x430aa3
mov ecx, dword [ebp - 0x68]
push ecx
call fcn.0049acb7
add esp, 4
xor ebx, ebx
xor edx, edx
mov edi, 7
mov dword [ebp - 0x54], edi
mov dword [ebp - 0x58], ebx
mov word [ebp - 0x68], dx
cmp dword [ebp - 0x38], esi
jb 0x430ac7
mov eax, dword [ebp - 0x4c]
push eax
call fcn.0049acb7
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x3c], ebx
mov word [ebp - 0x4c], cx
cmp dword [ebp - 0x1c], esi
jb 0x4308be
mov edx, dword [ebp - 0x30]
push edx
jmp 0x4308b6
mov esi, 8
cmp dword [ebp - 0x54], esi
jb 0x430afb
mov eax, dword [ebp - 0x68]
push eax
call fcn.0049acb7
add esp, 4
xor ebx, ebx
xor ecx, ecx
mov edi, 7
mov dword [ebp - 0x54], edi
mov dword [ebp - 0x58], ebx
mov word [ebp - 0x68], cx
cmp dword [ebp - 0x38], esi
jb 0x430b1f
mov edx, dword [ebp - 0x4c]
push edx
call fcn.0049acb7
add esp, 4
xor eax, eax
cmp dword [ebp - 0x1c], esi
mov dword [ebp - 0x38], edi
jmp 0x4308a9
mov esi, 8
cmp dword [ebp - 0x38], esi
jb 0x430b42
mov edx, dword [ebp - 0x4c]
push edx
call fcn.0049acb7
add esp, 4
xor eax, eax
cmp dword [ebp - 0x1c], esi
mov dword [ebp - 0x38], 7
mov dword [ebp - 0x3c], 0
jmp 0x4308ac
mov esi, 8
cmp dword [ebp - 0x38], esi
jb 0x430b70
mov edx, dword [ebp - 0x4c]
push edx
call fcn.0049acb7
add esp, 4
xor eax, eax
mov byte [ebp - 4], al
mov dword [ebp - 0x38], 7
mov dword [ebp - 0x3c], 0
mov word [ebp - 0x4c], ax
cmp dword [ebp - 0x1c], esi
jb 0x430b98
mov ecx, dword [ebp - 0x30]
push ecx
call fcn.0049acb7
add esp, 4
lea edx, [ebp - 0x374]
push edx
call fcn.00409d60
lea eax, [ebp - 0x374]
push str.NetworkService::DownloadTask::RemoveDownloadFolder:_Successfully_deleted_folder
push eax
mov byte [ebp - 4], 4
call fcn.0040da40
lea ecx, [ebp - 0x84]
push ecx
lea edx, [ebp - 0x374]
push edx
call fcn.0040dd00
add esp, 0x10
lea esi, [ebp - 0x30]
lea eax, [ebp - 0x374]
call fcn.00408e20
push 4
mov ecx, esi
mov byte [ebp - 4], 5
call fcn.004182c0
mov esi, 8
add esp, 4
cmp dword [ebp - 0x1c], esi
jb 0x430c03
mov eax, dword [ebp - 0x30]
push eax
call fcn.0049acb7
add esp, 4
xor ecx, ecx
mov word [ebp - 0x30], cx
mov byte [ebp - 4], cl
lea ecx, [ebp - 0x374]
mov dword [ebp - 0x1c], 7
mov dword [ebp - 0x20], 0
call fcn.00408480
cmp dword [ebp - 0x70], esi
jb 0x430748
mov edx, dword [ebp - 0x84]
push edx
call fcn.0049acb7
add esp, 4
mov al, 1
jmp 0x4308d5