Function at 0x406910
Capabilities:
Delete internet cache
Enumerate internet cache

Disassembly:
push 0xffffffffffffffff
push 0x42b718
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x10
push ebp
mov ebp, dword [esp + 0x24]
mov dword [esp + 0x10], ecx
push esi
mov eax, dword [ebp]
mov esi, dword [sym.imp.WININET.dll_FindFirstUrlCacheEntryA]
push edi
lea ecx, [esp + 0xc]
xor edi, edi
push ecx
push edi
push eax
mov dword [esp + 0x18], edi
call esi
test eax, eax
mov dword [esp + 0x10], eax
jne 0x406b26
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x103
je 0x406b26
cmp eax, 0x7a
jne 0x40698c
mov edx, dword [esp + 0xc]
push edx
call fcn.00411217
add esp, 4
lea ecx, [esp + 0xc]
mov edi, eax
mov eax, dword [ebp]
push ecx
push edi
push eax
call esi
mov dword [esp + 0x10], eax
mov ebp, dword [edi + 0xc]
cmp ebp, 0x100000
jne 0x4069d3
mov edx, dword [esp + 0x2c]
mov esi, str.cookie:
mov eax, dword [edx]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x4069c6
test cl, cl
je 0x4069c2
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x4069c6
add eax, 2
add esi, 2
test cl, cl
jne 0x4069a2
xor eax, eax
jmp 0x4069cb
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x406a5b
cmp ebp, 0x200000
jne 0x406a13
mov eax, dword [esp + 0x2c]
mov esi, str.visited:
mov eax, dword [eax]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x406a0a
test cl, cl
je 0x406a06
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x406a0a
add eax, 2
add esi, 2
test cl, cl
jne 0x4069e6
xor eax, eax
jmp 0x406a0f
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x406a5b
mov eax, dword [esp + 0x2c]
mov esi, 0x43c824
mov eax, dword [eax]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x406a42
test cl, cl
je 0x406a3e
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x406a42
add eax, 2
add esi, 2
test cl, cl
jne 0x406a1e
xor eax, eax
jmp 0x406a47
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x406ac5
cmp ebp, 0x200000
je 0x406ac5
cmp ebp, 0x100000
je 0x406ac5
mov eax, dword [edi + 4]
push eax
call dword [sym.imp.WININET.dll_DeleteUrlCacheEntry]
test eax, eax
jne 0x406a74
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 5
jne 0x406ac5
mov esi, dword [edi + 0x1c]
mov ecx, dword [edi + 4]
mov ebp, dword [edi + 0x18]
push ecx
shl esi, 0x10
lea ecx, [esp + 0x18]
add esi, ebp
call fcn.0042432b
mov ebp, dword [esp + 0x18]
lea edx, [esp + 0x14]
push esi
push edx
mov ecx, ebp
mov dword [esp + 0x2c], 0
call fcn.00402bc0
lea ecx, [esp + 0x14]
mov dword [esp + 0x24], 0xffffffff
call fcn.004242bd
mov ecx, dword [ebp + 0x70]
mov eax, dword [ebp + 0x6c]
add ecx, esi
inc eax
mov dword [ebp + 0x70], ecx
mov dword [ebp + 0x6c], eax
mov ecx, dword [esp + 0x10]
lea eax, [esp + 0xc]
push eax
push edi
push ecx
call dword [sym.imp.WININET.dll_FindNextUrlCacheEntryA]
test eax, eax
jne 0x40698c
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
jne 0x406b12
mov edx, dword [esp + 0xc]
push edx
push edi
call fcn.004110df
mov ecx, dword [esp + 0x18]
add esp, 8
mov edi, eax
lea eax, [esp + 0xc]
push eax
push edi
push ecx
call dword [sym.imp.WININET.dll_FindNextUrlCacheEntryA]
test eax, eax
jne 0x40698c
mov edx, dword [esp + 0x10]
push edx
call dword [sym.imp.WININET.dll_FindCloseUrlCache]
push edi
call fcn.00411097
add esp, 4
mov ecx, dword [esp + 0x1c]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
add esp, 0x1c
ret 4