Function at 0x48d806
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.0049074a
xor edi, edi
test al, al
je 0x48d833
push edi
push edi
push edi
push 7
push dword [esi + 0xa0]
mov ecx, esi
push 0xffffffffffffffff
call fcn.00490c22
push 6
mov ecx, esi
call fcn.0048d793
mov ebp, dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov ebx, edi
cmp dword [0x59535c], 0
je 0x48d866
push ebx
call ebp
push eax
push str._INFO___d___start_download__retry__d_
push 3
push dword [0x59535c]
call fcn.0047fca4
add esp, 0x14
push edi
push edi
push ebx
push 9
push dword [esi + 0xa0]
mov ecx, esi
push 0xffffffffffffffff
call fcn.00490c22
mov ecx, esi
call fcn.0048ee4c
cmp dword [0x59535c], 0
mov edi, eax
mov dword [esp + 0x10], edi
je 0x48d8aa
push edi
push ebx
call ebp
push eax
push str._INFO___d___start_download__retry__d__result__d_
push 3
push dword [0x59535c]
call fcn.0047fca4
add esp, 0x18
test edi, edi
je 0x48d8e1
mov ecx, esi
cmp edi, 1
je 0x48da44
lea eax, [esp + 0x10]
push eax
call fcn.0048fa06
mov edi, dword [esp + 0x10]
cmp edi, 0xd
je 0x48da98
cmp edi, 0xa
je 0x48da98
test edi, edi
jne 0x48d977
cmp dword [0x59535c], 0
je 0x48d902
call ebp
push eax
push str._INFO___d___wait_for_download_finished.
push 3
push dword [0x59535c]
call fcn.0047fca4
add esp, 0x10
mov ecx, esi
call fcn.0049079e
mov dword [esp + 0x10], eax
test eax, eax
jne 0x48d95e
xor ecx, ecx
cmp dword [esi + 0x50], ecx
jle 0x48d934
mov eax, dword [esi + 0x58]
add eax, 0xfc
cmp byte [eax], 0
je 0x48da16
inc ecx
add eax, 0x100
cmp ecx, dword [esi + 0x50]
jl 0x48d920
cmp dword [0x59535c], 0
je 0x48d955
call ebp
push eax
push str._INFO___d___download_finished.
push 3
push dword [0x59535c]
call fcn.0047fca4
add esp, 0x10
push 1
mov ecx, esi
call fcn.00490777
lea eax, [esp + 0x10]
mov ecx, esi
push eax
call fcn.0048fa06
mov edi, dword [esp + 0x10]
cmp edi, 0xd
je 0x48da98
cmp edi, 0xc
je 0x48d981
cmp edi, 0xb
jne 0x48d9b3
push dword [esi + 0x44]
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov eax, dword [esi + 0x44]
cmp dword [eax - 0xc], 0
je 0x48d9b3
lea eax, [esp + 0x14]
mov ecx, esi
push eax
call fcn.0048f3ff
push dword [eax]
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov ecx, dword [esp + 0x14]
lea ecx, [ecx - 0x10]
call fcn.00450c64
mov ecx, esi
call fcn.0048e4d9
cmp ebx, 9
je 0x48da75
test edi, edi
je 0x48da75
push 0x64
push dword [esi + 8]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
je 0x48da4f
mov ecx, esi
call fcn.0049074a
test al, al
je 0x48d9fa
push edi
push ebx
push 0
push 0xa
push dword [esi + 0xa0]
mov ecx, esi
push 0xffffffffffffffff
call fcn.00490c22
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
inc ebx
cmp ebx, 0xa
jge 0x48da98
xor edi, edi
jmp 0x48d844
cmp dword [0x59535c], 0
je 0x48da37
call ebp
push eax
push str._ERROR___d___download_failed_
push 1
push dword [0x59535c]
call fcn.0047fca4
add esp, 0x10
mov dword [esp + 0x10], 0xe
jmp 0x48d95e
push 1
call fcn.00490777
xor edi, edi
jmp 0x48da98
cmp dword [0x59535c], 0
je 0x48da70
call ebp
push eax
push str._WARN___d___download_delay_retry__cancel.
push 2
push dword [0x59535c]
call fcn.0047fca4
add esp, 0x10
push 0xd
pop edi
jmp 0x48da98
cmp dword [0x59535c], 0
je 0x48da98
push edi
push ebx
call ebp
push eax
push str._INFO___d___download_finished__retry__d___result__d_.
push 3
push dword [0x59535c]
call fcn.0047fca4
add esp, 0x18
mov ecx, esi
call fcn.0049074a
test al, al
je 0x48dace
push edi
push ebx
push 0
push 0xa
push dword [esi + 0xa0]
mov ecx, esi
push 0xffffffffffffffff
call fcn.00490c22
push 0
push 0
push edi
push 2
push dword [esi + 0xa0]
mov ecx, esi
push 0xffffffffffffffff
call fcn.00490c22
xor eax, eax
test edi, edi
pop edi
sete al
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret