Function at 0x48f3f0
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push ecx
push ecx
push ebx
push ebp
push esi
push edi
mov esi, ecx
call fcn.0049232a
xor edi, edi
test al, al
je 0x48f41d
push edi
push edi
push edi
push 7
push dword [esi + 0xa0]
mov ecx, esi
push 0xffffffffffffffff
call fcn.00492802
push 6
mov ecx, esi
call fcn.0048f37d
mov ebp, dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov ebx, edi
cmp dword [0x59835c], 0
je 0x48f450
push ebx
call ebp
push eax
push str._INFO___d___start_download__retry__d_
push 3
push dword [0x59835c]
call fcn.00481b54
add esp, 0x14
push edi
push edi
push ebx
push 9
push dword [esi + 0xa0]
mov ecx, esi
push 0xffffffffffffffff
call fcn.00492802
mov ecx, esi
call fcn.00490a2c
cmp dword [0x59835c], 0
mov edi, eax
mov dword [esp + 0x10], edi
je 0x48f494
push edi
push ebx
call ebp
push eax
push str._INFO___d___start_download__retry__d__result__d_
push 3
push dword [0x59835c]
call fcn.00481b54
add esp, 0x18
test edi, edi
je 0x48f4cb
mov ecx, esi
cmp edi, 1
je 0x48f62e
lea eax, [esp + 0x10]
push eax
call fcn.004915e6
mov edi, dword [esp + 0x10]
cmp edi, 0xd
je 0x48f682
cmp edi, 0xa
je 0x48f682
test edi, edi
jne 0x48f561
cmp dword [0x59835c], 0
je 0x48f4ec
call ebp
push eax
push str._INFO___d___wait_for_download_finished.
push 3
push dword [0x59835c]
call fcn.00481b54
add esp, 0x10
mov ecx, esi
call fcn.0049237e
mov dword [esp + 0x10], eax
test eax, eax
jne 0x48f548
xor ecx, ecx
cmp dword [esi + 0x50], ecx
jle 0x48f51e
mov eax, dword [esi + 0x58]
add eax, 0xfc
cmp byte [eax], 0
je 0x48f600
inc ecx
add eax, 0x100
cmp ecx, dword [esi + 0x50]
jl 0x48f50a
cmp dword [0x59835c], 0
je 0x48f53f
call ebp
push eax
push str._INFO___d___download_finished.
push 3
push dword [0x59835c]
call fcn.00481b54
add esp, 0x10
push 1
mov ecx, esi
call fcn.00492357
lea eax, [esp + 0x10]
mov ecx, esi
push eax
call fcn.004915e6
mov edi, dword [esp + 0x10]
cmp edi, 0xd
je 0x48f682
cmp edi, 0xc
je 0x48f56b
cmp edi, 0xb
jne 0x48f59d
push dword [esi + 0x44]
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov eax, dword [esi + 0x44]
cmp dword [eax - 0xc], 0
je 0x48f59d
lea eax, [esp + 0x14]
mov ecx, esi
push eax
call fcn.00490fdf
push dword [eax]
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov ecx, dword [esp + 0x14]
lea ecx, [ecx - 0x10]
call fcn.00450ce2
mov ecx, esi
call fcn.004900b9
cmp ebx, 9
je 0x48f65f
test edi, edi
je 0x48f65f
push 0x64
push dword [esi + 8]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
je 0x48f639
mov ecx, esi
call fcn.0049232a
test al, al
je 0x48f5e4
push edi
push ebx
push 0
push 0xa
push dword [esi + 0xa0]
mov ecx, esi
push 0xffffffffffffffff
call fcn.00492802
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
inc ebx
cmp ebx, 0xa
jge 0x48f682
xor edi, edi
jmp 0x48f42e
cmp dword [0x59835c], 0
je 0x48f621
call ebp
push eax
push str._ERROR___d___download_failed_
push 1
push dword [0x59835c]
call fcn.00481b54
add esp, 0x10
mov dword [esp + 0x10], 0xe
jmp 0x48f548
push 1
call fcn.00492357
xor edi, edi
jmp 0x48f682
cmp dword [0x59835c], 0
je 0x48f65a
call ebp
push eax
push str._WARN___d___download_delay_retry__cancel.
push 2
push dword [0x59835c]
call fcn.00481b54
add esp, 0x10
push 0xd
pop edi
jmp 0x48f682
cmp dword [0x59835c], 0
je 0x48f682
push edi
push ebx
call ebp
push eax
push str._INFO___d___download_finished__retry__d___result__d_.
push 3
push dword [0x59835c]
call fcn.00481b54
add esp, 0x18
mov ecx, esi
call fcn.0049232a
test al, al
je 0x48f6b8
push edi
push ebx
push 0
push 0xa
push dword [esi + 0xa0]
mov ecx, esi
push 0xffffffffffffffff
call fcn.00492802
push 0
push 0
push edi
push 2
push dword [esi + 0xa0]
mov ecx, esi
push 0xffffffffffffffff
call fcn.00492802
xor eax, eax
test edi, edi
pop edi
sete al
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret