Function at 0x43211f
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xc
push ebx
push esi
push edi
mov edi, eax
mov esi, edi
call fcn.00434c24
test al, al
je 0x43214c
xor eax, eax
push eax
push eax
push eax
push 7
push dword [edi + 0xa0]
push 0xffffffffffffffff
call fcn.004350a2
push 6
pop esi
call fcn.004320bb
and dword [esp + 0xc], 0
cmp dword [0x5500d4], 0
mov ebx, dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
je 0x432182
push dword [esp + 0xc]
call ebx
mov ecx, dword [0x5500d4]
push eax
push str._INFO___d___start_download__retry__d_
call fcn.00427581
add esp, 0xc
push 0
push 0
push dword [esp + 0x14]
mov esi, edi
push 9
push dword [edi + 0xa0]
push 0xffffffffffffffff
call fcn.004350a2
mov ecx, edi
call fcn.00433622
cmp dword [0x5500d4], 0
mov esi, eax
mov dword [esp + 0x10], esi
je 0x4321cc
push esi
push dword [esp + 0x10]
call ebx
mov ecx, dword [0x5500d4]
push eax
push str._INFO___d___start_download__retry__d__result__d_
call fcn.00427581
add esp, 0x10
test esi, esi
je 0x432208
cmp esi, 1
je 0x432353
lea edx, [esp + 0x10]
mov ecx, edi
call fcn.004340a7
mov ebx, dword [esp + 0x10]
cmp ebx, 0xd
je 0x4323af
cmp ebx, 0xa
je 0x4323af
test ebx, ebx
jne 0x4322ba
mov ebx, dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp dword [0x5500d4], 0
je 0x432226
call ebx
mov ecx, dword [0x5500d4]
push eax
push str._INFO___d___wait_for_download_finished.
call fcn.00427581
pop ecx
pop ecx
call fcn.00434c70
mov dword [esp + 0x10], eax
test eax, eax
jne 0x4322a2
mov ecx, dword [edi + 0x50]
xor edx, edx
test ecx, ecx
jle 0x432253
mov eax, dword [edi + 0x58]
add eax, 0x112
cmp byte [eax], 0
je 0x43227c
inc edx
add eax, 0x118
cmp edx, ecx
jl 0x432244
cmp dword [0x5500d4], 0
je 0x432271
call ebx
mov ecx, dword [0x5500d4]
push eax
push str._INFO___d___download_finished.
call fcn.00427581
pop ecx
pop ecx
push 1
mov esi, edi
call fcn.00434c4d
jmp 0x4322a2
cmp dword [0x5500d4], 0
je 0x43229a
call ebx
mov ecx, dword [0x5500d4]
push eax
push str._ERROR___d___download_failed_
call fcn.00427581
pop ecx
pop ecx
mov dword [esp + 0x10], 0xe
lea edx, [esp + 0x10]
mov ecx, edi
call fcn.004340a7
mov ebx, dword [esp + 0x10]
cmp ebx, 0xd
je 0x4323af
cmp ebx, 0xc
je 0x4322c4
cmp ebx, 0xb
jne 0x4322f3
push dword [edi + 0x44]
mov esi, dword [sym.imp.KERNEL32.dll_DeleteFileW]
call esi
mov eax, dword [edi + 0x44]
cmp dword [eax - 0xc], 0
je 0x4322f3
lea eax, [esp + 0x14]
push eax
push edi
call fcn.00433b20
push dword [eax]
call esi
mov eax, dword [esp + 0x14]
add eax, 0xfffffff0
call fcn.00403e7d
mov esi, edi
call fcn.00432c8d
cmp dword [esp + 0xc], 9
je 0x432387
test ebx, ebx
je 0x432387
push 0x64
push dword [edi + 8]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
je 0x432360
call fcn.00434c24
test al, al
je 0x432337
push ebx
push dword [esp + 0x10]
push 0
push 0xa
push dword [edi + 0xa0]
push 0xffffffffffffffff
call fcn.004350a2
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
inc dword [esp + 0xc]
cmp dword [esp + 0xc], 0xa
jl 0x432159
jmp 0x4323af
push 1
mov esi, edi
call fcn.00434c4d
xor ebx, ebx
jmp 0x4323af
cmp dword [0x5500d4], 0
je 0x432382
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov ecx, dword [0x5500d4]
push eax
push str._WARN___d___download_delay_retry__cancel.
call fcn.00427581
pop ecx
pop ecx
push 0xd
pop ebx
jmp 0x4323af
cmp dword [0x5500d4], 0
je 0x4323af
push ebx
push dword [esp + 0x10]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov ecx, dword [0x5500d4]
push eax
push str._INFO___d___download_finished__retry__d___result__d_.
call fcn.00427581
add esp, 0x10
mov esi, edi
call fcn.00434c24
test al, al
je 0x4323e4
push ebx
push dword [esp + 0x10]
push 0
push 0xa
push dword [edi + 0xa0]
push 0xffffffffffffffff
call fcn.004350a2
push 0
push 0
push ebx
push 2
push dword [edi + 0xa0]
push 0xffffffffffffffff
call fcn.004350a2
pop edi
xor eax, eax
test ebx, ebx
pop esi
sete al
pop ebx
mov esp, ebp
pop ebp
ret