Function at 0x405ea4
Capabilities:
Get common file path
Parse url

Disassembly:
mov eax, 0x41e52c
call fcn.00412ec4
mov eax, 0x1454
call fcn.00412ff0
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
push dword [ebp + 0x28]
lea esi, [ebx + 8]
push dword [ebp + 0x24]
mov ecx, esi
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
call fcn.0040b32c
push eax
mov ecx, esi
call fcn.0040b305
push eax
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
call fcn.0040bf8d
xor esi, esi
push esi
call fcn.0040d696
lea eax, [ebp - 0x10]
push eax
xor edi, edi
push 0x41fac8
inc edi
push esi
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x14], esi
call fcn.0040cdb7
lea eax, [ebp - 0x14]
push eax
push 0x41fad8
push esi
call fcn.0040cdb7
add esp, 0x44
cmp dword [ebp - 0x10], esi
je 0x405f39
cmp dword [ebp - 0x14], esi
je 0x405f39
push esi
push 0x41fae8
push esi
call fcn.0040bcc3
add esp, 0xc
cmp dword [ebp - 0x10], edi
jne 0x40606b
mov dword [ebp + 0x10], edi
call fcn.0040bf53
cmp dword [ebx + 0x268], esi
mov dword [ebp + 8], eax
mov dword [ebx + 0x50], edi
je 0x406009
mov dword [ebx + 0x58], esi
jmp 0x406009
push esi
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
je 0x40601a
cmp dword [ebp + 0x10], esi
je 0x405fa1
push 0x41faf8
call fcn.0040f31b
pop ecx
lea eax, [ebx + 8]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x30]
mov ecx, 0x80070204
cmp eax, ecx
je 0x406021
mov dword [ebp + 0x10], esi
jmp 0x406009
lea ecx, [ebp - 0x1460]
mov dword [ebx + 0x4c], esi
call fcn.0041167f
push dword [ebp + 0x28]
lea ecx, [ebp - 0x1460]
push dword [ebp + 0x24]
mov dword [ebp - 4], esi
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push dword [ebp + 0x14]
call fcn.004045cb
push esi
push esi
lea ecx, [ebp - 0x1460]
call fcn.0040b1f1
cmp eax, edi
mov dword [ebx + 0x4c], edi
je 0x406045
lea eax, [ebx + 8]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x34]
cmp eax, 0x80070204
je 0x4060ad
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x144c]
mov dword [ebp + 0x10], esi
call fcn.00406856
lea eax, [ebx + 8]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x28]
test eax, eax
jne 0x405f64
mov edi, 0x80004005
jmp 0x406023
mov edi, ecx
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push esi
push esi
push esi
push esi
push esi
push esi
push esi
push esi
push esi
push esi
call fcn.0040bf8d
add esp, 0x28
mov eax, edi
jmp 0x406241
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x144c]
call fcn.00406856
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0x41fafc
mov dword [ebx + 0x50], esi
call fcn.0040f693
pop ecx
push esi
push 0x41fb00
push esi
call fcn.0040cf5e
mov edi, dword [sym.imp.KERNEL32.dll_lstrlenA]
add esp, 0xc
push dword [ebp + 0xc]
call edi
cmp eax, 4
jle 0x4060dd
push 0x41fb10
push dword [ebp + 0xc]
call edi
mov edi, dword [ebp + 0xc]
lea eax, [eax + edi - 4]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
jne 0x4060dd
push esi
push edi
jmp 0x406234
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push esi
push esi
push esi
push esi
push esi
push esi
push esi
push esi
push esi
push esi
call fcn.0040bf8d
add esp, 0x28
lea ecx, [ebp - 0x144c]
call fcn.00406856
mov eax, 0x80070204
jmp 0x406241
push 0xf
pop ecx
xor eax, eax
lea edi, [ebp - 0x50]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0xc50]
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x50]
push eax
push esi
push dword [ebp + 0xc]
mov dword [ebp - 0x50], 0x3c
mov dword [ebp - 0x20], 0x400
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
push dword [ebp + 0xc]
call dword [sym.imp.WININET.dll_InternetCrackUrlA]
cmp eax, esi
mov edi, dword [sym.imp.USER32.dll_wsprintfA]
je 0x406172
push esi
lea eax, [ebp - 0x450]
push eax
push esi
lea eax, [ebp - 0xc50]
push esi
push eax
call fcn.004134b6
lea eax, [ebp - 0xc50]
push 1
push eax
call fcn.004046c7
push eax
lea eax, [ebp - 0x450]
push eax
lea eax, [ebp - 0x850]
push str._s__x
push eax
call edi
lea eax, [ebp - 0x850]
push 0x41fb20
push eax
call fcn.004133c0
add esp, 0x34
test eax, eax
je 0x40618e
push 1
push dword [ebp + 0xc]
call fcn.004046c7
push eax
lea eax, [ebp - 0x850]
push str.jupdate__x
push eax
call edi
add esp, 0x14
lea eax, [ebp - 0x450]
push eax
push 0x400
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
mov edi, dword [sym.imp.KERNEL32.dll_lstrcatA]
lea eax, [ebp - 0x850]
push eax
lea eax, [ebp - 0x450]
push eax
call edi
push str..exe
lea eax, [ebp - 0x450]
push eax
call edi
call fcn.0040be63
cmp eax, esi
je 0x4061f3
push str.Using_Async_download
call fcn.0040c78b
mov eax, dword [ebx]
pop ecx
lea ecx, [ebp - 0x450]
push ecx
push dword [ebp + 0xc]
push ebx
call dword [eax + 0x14]
cmp eax, esi
jge 0x406241
cmp eax, 0x80070200
jne 0x406241
push str.Using_Sync_download
call fcn.0040c78b
mov eax, dword [ebx]
pop ecx
push 1
push 1
lea ecx, [ebp - 0x450]
push ecx
push dword [ebp + 0xc]
push ebx
call dword [eax + 0x1c]
test eax, eax
jl 0x40623c
lea eax, [ebp - 0x450]
push eax
push 0x41fb64
push esi
call fcn.0040cf5e
add esp, 0xc
push 1
lea ecx, [ebp - 0x450]
push ecx
mov eax, dword [ebx]
push ebx
call dword [eax + 0x24]
jmp 0x406241
mov eax, 0x80004005
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret 0x24