Function at 0x41056f
Capabilities:
Delete file

Disassembly:
push 0xf8
mov eax, 0x44672a
call fcn.00431e61
lea ecx, [edi + 0x7c]
call fcn.00402078
push 0x45a964
lea ecx, [ebp - 0x104]
call fcn.004021e1
mov eax, dword [ebp + 8]
xor ebx, ebx
mov dword [ebp - 4], ebx
push 8
mov dword [edi + 0x74], eax
mov byte [ebp - 0xf1], 1
call fcn.0041e0bb
pop ecx
cmp al, bl
je 0x4105c0
mov ecx, edi
call fcn.00411006
jmp 0x4107b1
push 0x44ab2c
push 5
push 0xfb4
call fcn.004262bf
add esp, 0xc
push eax
lea ecx, [ebp - 0xf8]
call fcn.00401f1d
lea eax, [ebp - 0xf8]
push eax
lea eax, [ebp - 0x100]
push eax
mov ecx, edi
mov byte [ebp - 4], 1
call fcn.00410954
lea esi, [edi + 0x70]
push eax
mov ecx, esi
mov byte [ebp - 4], 2
call fcn.0040222e
mov ecx, dword [ebp - 0x100]
add ecx, 0xfffffff0
call fcn.0040113c
mov byte [ebp - 4], bl
mov ecx, dword [ebp - 0xf8]
add ecx, 0xfffffff0
call fcn.0040113c
mov eax, dword [esi]
cmp dword [eax - 0xc], ebx
jne 0x41066d
call dword [sym.imp.KERNEL32.DLL_GetLastError]
push eax
push 0x44ab34
push 0x1f
push 0x2839
call fcn.004262bf
add esp, 0xc
push eax
lea eax, [ebp - 0x104]
push eax
call fcn.00403f05
add esp, 0xc
lea esi, [ebp - 0x104]
call fcn.0041f59e
or dword [edi + 0x50], 1
jmp 0x410862
call fcn.00429ff5
push str.Downloading
lea ecx, [ebp - 0xfc]
call fcn.00401f1d
lea ecx, [edi + 0x20]
push ecx
lea ecx, [ebp - 0xf8]
push ecx
mov ecx, eax
mov byte [ebp - 4], 3
call fcn.004067f9
lea ecx, [ebp - 0x100]
push 0x449828
push ecx
mov ecx, eax
mov byte [ebp - 4], 4
call fcn.0040684a
add esp, 0x10
mov byte [ebp - 4], 5
mov ecx, dword [edi + 0x74]
mov edx, dword [ecx]
push eax
call dword [edx + 0x28]
mov ecx, dword [ebp - 0x100]
add ecx, 0xfffffff0
call fcn.0040113c
mov ecx, dword [ebp - 0xf8]
add ecx, 0xfffffff0
call fcn.0040113c
mov byte [ebp - 4], bl
mov ecx, dword [ebp - 0xfc]
add ecx, 0xfffffff0
call fcn.0040113c
mov ecx, dword [edi + 0x74]
mov eax, dword [ecx]
push ebx
call dword [eax + 0x30]
mov ecx, dword [edi + 0x74]
mov eax, dword [ecx]
push ebx
call dword [eax + 0x18]
mov ecx, dword [edi + 0x74]
mov eax, dword [ecx]
push ebx
call dword [eax + 0x48]
mov ecx, dword [edi + 0x74]
mov eax, dword [ecx]
push 1
call dword [eax + 0x40]
mov ecx, dword [edi + 0x74]
mov eax, dword [ecx]
call dword [eax + 0x38]
push dword [edi + 0x5c]
lea eax, [edi + 0xc]
push eax
push esi
push dword [edi + 0x74]
lea ecx, [edi + 8]
push ecx
mov eax, esp
mov dword [ebp - 0xfc], esp
push eax
call fcn.00428a5b
pop ecx
lea eax, [edi + 0x48]
push eax
push edi
push 0x459a2c
lea eax, [ebp - 0xf0]
push eax
call fcn.00423c8f
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 6
call fcn.0042401c
cmp al, bl
jne 0x410779
xor eax, eax
cmp dword [ebp - 0x18], 4
mov byte [ebp - 0xf1], bl
setne al
dec eax
and eax, 3
inc eax
or dword [edi + 0x50], eax
jmp 0x410797
lea ecx, [edi + 0x48]
mov eax, dword [ecx]
cmp dword [eax - 0xc], ebx
jne 0x410797
call fcn.00402078
lea eax, [edi + 0x48]
push eax
push esi
push 4
pop ecx
call fcn.00427333
pop ecx
pop ecx
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], bl
call fcn.00423c46
cmp byte [ebp - 0xf1], bl
je 0x410862
push 0x40
call fcn.0041e0bb
pop ecx
test al, al
jne 0x410856
mov ecx, dword [edi + 0x74]
mov eax, dword [ecx]
push ebx
call dword [eax + 0x18]
push str.Installing
lea ecx, [ebp - 0xf8]
call fcn.00401f1d
lea ecx, [edi + 0x20]
push ecx
lea ecx, [ebp - 0x100]
push ecx
mov ecx, eax
mov byte [ebp - 4], 7
call fcn.004067f9
lea ecx, [ebp - 0xfc]
push str._...
push ecx
mov ecx, eax
mov byte [ebp - 4], 8
call fcn.0040684a
add esp, 0x10
mov byte [ebp - 4], 9
mov ecx, dword [edi + 0x74]
mov edx, dword [ecx]
push eax
call dword [edx + 0x28]
mov ecx, dword [ebp - 0xfc]
add ecx, 0xfffffff0
call fcn.0040113c
mov ecx, dword [ebp - 0x100]
add ecx, 0xfffffff0
call fcn.0040113c
mov byte [ebp - 4], bl
mov ecx, dword [ebp - 0xf8]
add ecx, 0xfffffff0
call fcn.0040113c
mov ecx, dword [edi + 0x74]
mov eax, dword [ecx]
push ebx
call dword [eax + 0x48]
mov ecx, dword [edi + 0x74]
mov eax, dword [ecx]
push ebx
call dword [eax + 0x40]
mov esi, edi
call fcn.00410a98
call fcn.00410c42
push ecx
mov dword [ebp - 0xfc], esp
mov ecx, esp
lea esi, [edi + 0x70]
push esi
call fcn.00402206
call fcn.0042669e
pop ecx
cmp al, bl
je 0x4108ab
push dword [esi]
mov ebx, dword [sym.imp.KERNEL32.DLL_DeleteFileA]
call ebx
test eax, eax
jne 0x4108ab
call dword [sym.imp.KERNEL32.DLL_GetLastError]
cmp eax, 3
je 0x4108ab
cmp eax, 2
je 0x4108ab
push 0x1f4
call dword [sym.imp.KERNEL32.DLL_Sleep]
push dword [esi]
call ebx
mov ebx, dword [edi + 0x50]
mov ecx, dword [ebp - 0x104]
shr ebx, 7
add ecx, 0xfffffff0
and bl, 1
call fcn.0040113c
mov al, bl
call fcn.00431ee4
ret 4