Function at 0x445210
Capabilities:
Delete file
Get common file path
Set file attributes

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4fb098
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x66c
push ebx
push esi
push edi
lea eax, [ebp - 0x278]
mov dword [ebp - 0x10], esp
push eax
mov dword [ebp - 4], 0
call fcn.004ab6e0
add esp, 4
lea ecx, [ebp - 0x30]
push ecx
call fcn.00401350
add esp, 4
lea ecx, [ebp - 0x78]
push 1
call fcn.004f0653
mov edx, dword [0x4fe4e8]
lea ecx, [ebp - 0x78]
push edx
push 8
push str.c:endpcacheprocess_log.txt
mov byte [ebp - 4], 1
call fcn.004f0727
lea eax, [ebp - 0x1f8]
push 0x80
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
lea ecx, [ebp - 0x1f8]
lea edx, [ebp - 0x378]
push ecx
push str._sdrivers_npf.sys
push edx
call fcn.004f175f
lea eax, [ebp - 0x378]
push eax
call fcn.004abe70
add esp, 0x10
lea ecx, [ebp - 0x1f8]
lea edx, [ebp - 0x578]
mov esi, eax
push ecx
push str._sPacket.dll
push edx
call fcn.004f175f
lea eax, [ebp - 0x578]
push eax
call fcn.004abe70
add esp, 0x10
lea ecx, [ebp - 0x1f8]
lea edx, [ebp - 0x478]
mov edi, eax
push ecx
push str._sWanPacket.dll
push edx
call fcn.004f175f
lea eax, [ebp - 0x478]
push eax
call fcn.004abe70
add esp, 0x10
lea ecx, [ebp - 0x1f8]
lea edx, [ebp - 0x678]
mov ebx, eax
push ecx
push str._swpcap.dll
push edx
call fcn.004f175f
lea eax, [ebp - 0x678]
push eax
call fcn.004abe70
add esp, 0x10
xor ecx, ecx
cmp esi, 1
jne 0x4455e9
cmp edi, esi
jne 0x44533f
mov ecx, esi
cmp ebx, 1
jne 0x445346
mov ecx, ebx
cmp eax, 1
je 0x445354
cmp ecx, 1
jne 0x4455e1
lea ecx, [ebp - 0x30]
mov byte [ebp - 0x178], 0
push ecx
call fcn.004fa6c0
add esp, 4
lea edx, [ebp - 0x278]
push eax
push edx
call fcn.004fa6c0
add esp, 4
push eax
lea eax, [ebp - 0x178]
push 0x51e86c
push eax
call fcn.004f175f
mov ecx, dword [0xe56d24]
mov eax, dword [0xe56db0]
add esp, 0x10
inc ecx
test eax, eax
mov dword [0xe56d24], ecx
jne 0x445413
mov eax, dword [0xe56dbc]
test eax, eax
jne 0x4453df
mov ebx, dword [ebp + 0x1b4]
mov edx, dword [ebp + 0x1b0]
lea ecx, [ebp - 0x178]
lea esi, [ebp + 8]
push ecx
push ebx
push edx
mov ecx, 0x6a
sub esp, 0x1a8
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404170
add esp, 0x1b4
jmp 0x445419
mov ebx, dword [ebp + 0x1b4]
mov ecx, dword [ebp + 0x1b0]
lea eax, [ebp - 0x178]
lea esi, [ebp + 8]
push eax
push ebx
push ecx
mov ecx, 0x6a
sub esp, 0x1a8
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404560
add esp, 0x1b4
jmp 0x445419
mov ebx, dword [ebp + 0x1b4]
lea edx, [ebp - 0x178]
lea ecx, [ebp - 0x6c]
push edx
call fcn.004f0087
push 0xa
mov ecx, eax
call fcn.004eff40
push 0x402150
mov ecx, eax
call fcn.004016a0
call fcn.00466190
cmp dword [0xe56d0c], 2
je 0x44546b
cmp eax, 4
jg 0x44546b
mov ecx, dword [0xe56dc8]
mov eax, 1
cmp ecx, eax
je 0x44546b
cmp dword [0xe56bf8], eax
jne 0x4456a7
lea eax, [ebp - 0x30]
mov byte [ebp - 0x178], 0
push eax
call fcn.004fa6c0
add esp, 4
lea ecx, [ebp - 0x278]
push eax
push ecx
call fcn.004fa6c0
add esp, 4
lea edx, [ebp - 0x178]
push eax
push 0x51e824
push edx
call fcn.004f175f
mov eax, dword [0xe56db0]
add esp, 0x10
test eax, eax
jne 0x445509
mov eax, dword [0xe56dbc]
test eax, eax
jne 0x4454dd
mov ecx, dword [ebp + 0x1b0]
lea eax, [ebp - 0x178]
push eax
push ebx
push ecx
mov ecx, 0x6a
sub esp, 0x1a8
lea esi, [ebp + 8]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404170
jmp 0x445503
mov eax, dword [ebp + 0x1b0]
lea edx, [ebp - 0x178]
push edx
push ebx
push eax
mov ecx, 0x6a
sub esp, 0x1a8
lea esi, [ebp + 8]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404560
add esp, 0x1b4
lea ecx, [ebp - 0x178]
push ecx
lea ecx, [ebp - 0x6c]
call fcn.004f0087
push 0xa
mov ecx, eax
call fcn.004eff40
push 0x402150
mov ecx, eax
call fcn.004016a0
mov esi, dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
lea edx, [ebp - 0x378]
push 0x80
push edx
call esi
mov edi, dword [sym.imp.KERNEL32.dll_DeleteFileA]
lea eax, [ebp - 0x378]
push eax
call edi
lea ecx, [ebp - 0x378]
push ecx
call fcn.004abcc0
add esp, 4
lea edx, [ebp - 0x578]
push 0x80
push edx
call esi
lea eax, [ebp - 0x578]
push eax
call edi
lea ecx, [ebp - 0x578]
push ecx
call fcn.004abcc0
add esp, 4
lea edx, [ebp - 0x478]
push 0x80
push edx
call esi
lea eax, [ebp - 0x478]
push eax
call edi
lea ecx, [ebp - 0x478]
push ecx
call fcn.004abcc0
add esp, 4
lea edx, [ebp - 0x678]
push 0x80
push edx
call esi
lea eax, [ebp - 0x678]
push eax
call edi
lea ecx, [ebp - 0x678]
push ecx
call fcn.004abcc0
mov eax, dword [0xe56cc8]
add esp, 4
inc eax
mov dword [0xe56cc8], eax
jmp 0x4456a7
test ecx, ecx
jne 0x4456a7
lea edx, [ebp - 0x30]
push 0x51e804
push edx
mov byte [ebp - 0x178], 0
call fcn.004fa6c0
add esp, 4
push eax
lea eax, [ebp - 0x278]
push eax
call fcn.004fa6c0
add esp, 4
lea ecx, [ebp - 0x178]
push eax
push 0x5190b4
push ecx
call fcn.004f175f
mov eax, dword [0xe56db0]
add esp, 0x14
test eax, eax
jne 0x445683
mov eax, dword [0xe56dbc]
mov ecx, dword [ebp + 0x1b0]
test eax, eax
mov eax, dword [ebp + 0x1b4]
lea edx, [ebp - 0x178]
push edx
push eax
push ecx
jne 0x445666
sub esp, 0x1a8
mov ecx, 0x6a
lea esi, [ebp + 8]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404170
jmp 0x44567d
sub esp, 0x1a8
mov ecx, 0x6a
lea esi, [ebp + 8]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.00404560
add esp, 0x1b4
lea edx, [ebp - 0x178]
lea ecx, [ebp - 0x6c]
push edx
call fcn.004f0087
push 0xa
mov ecx, eax
call fcn.004eff40
push 0x402150
mov ecx, eax
call fcn.004016a0
lea ecx, [ebp - 0x78]
call fcn.004f076e
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0
call fcn.004f0714
lea ecx, [ebp - 0x64]
call fcn.004f05fb
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret