Function at 0x140002e60
Capabilities:
Check if file exists
Check internet connectivity via wininet
Parse url

Disassembly:
mov rax, rsp
push r12
push r14
push r15
sub rsp, 0xf0
mov qword [rsp + 0x78], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov r14, r9
mov r15, r8
mov rdi, rdx
mov rbx, rcx
xor r12d, r12d
mov qword [rsp + 0x70], r12
test r9, r9
je 0x14000e3d1
mov qword [r9], r12
test rdx, rdx
je 0x14000e3d1
mov rcx, rdx
call qword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
je 0x14000e3d1
lea rsi, [rbx + 0xa8]
mov rdx, rdi
mov rcx, rsi
call fcn.140004910
xor edx, edx
lea r8d, [r12 + 0x68]
lea rcx, [rsp + 0x80]
call sub.VCRUNTIME140.dll_memset
mov dword [rsp + 0x80], 0x68
mov dword [rsp + 0xa0], 0x824
mov dword [rsp + 0xd0], 0x824
mov rcx, qword [rsi]
call qword [sym.imp.OLEAUT32.dll_VariantInit]
lea r9, [rsp + 0x80]
xor r8d, r8d
mov edx, eax
mov rcx, qword [rsi]
call qword [sym.imp.WININET.dll_InternetCrackUrlW]
test eax, eax
je 0x140002f5f
lea rcx, [rbx + 0xc0]
mov r8d, dword [rsp + 0xa0]
add r8d, r8d
mov rdx, qword [rsp + 0x98]
call fcn.140004750
mov edi, eax
test eax, eax
js 0x1400030ef
mov eax, dword [rsp + 0xa0]
mov dword [rbx + 0xcc], eax
cmp qword [rbx + 0x68], 0
je 0x14000e22e
cmp qword [rbx + 0x60], 0
je 0x14000e22e
mov edi, r12d
cmp qword [rsi], rdi
je 0x1400030cf
xor eax, eax
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rax
lea rcx, [rsp + 0x58]
call qword [sym.imp.OLEAUT32.dll_VariantClear]
xor eax, eax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rax
lea rcx, [rsp + 0x40]
call qword [sym.imp.OLEAUT32.dll_VariantClear]
cmp dword [rbx + 0x158], 0
je 0x14000e238
mov eax, 3
mov word [rsp + 0x58], ax
mov dword [rsp + 0x60], 0x402
cmp dword [rbx + 0x178], 5
je 0x14000e2f7
lea rcx, [rbx - 0x28]
lea r8, [rsp + 0x40]
mov rdx, qword [rsi]
call fcn.140004588
mov edi, eax
test eax, eax
js 0x14000e2db
mov rcx, r15
call qword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
jne 0x14000e304
mov byte [rbx + 0x13a], 0
cmp dword [rbx + 0x158], 0
je 0x14000e3be
mov r8d, 1
mov edx, 2
lea ecx, [rdx + 7]
call qword [sym.imp.urlmon.dll_CoInternetSetFeatureEnabled]
mov ecx, 0x2bd8
call fcn.140004298
lea rcx, [rsp + 0x128]
call fcn.140003100
mov rcx, qword [rbx + 0x60]
mov rax, qword [rcx]
lea rdx, [rsp + 0x40]
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], r12
xor r9d, r9d
lea r8, [rsp + 0x58]
mov rdx, qword [rsi]
mov rax, qword [rax + 0x58]
call qword [case.0x140008ad6.0]
mov edi, eax
test eax, eax
js 0x14000e2db
lea rcx, [rsp + 0x70]
call fcn.140003100
mov rcx, qword [rax]
sub rcx, qword [rsp + 0x128]
movabs rax, 0x20c49ba5e353f7cf
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov qword [r14], rdx
lea rcx, [rsp + 0x40]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
lea rcx, [rsp + 0x58]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
nop
mov eax, edi
lea r11, [rsp + 0xf0]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov rsp, r11
pop r15
pop r14
pop r12
ret
jmp 0x1400030cf
mov edi, 0x8000ffff
jmp 0x1400030cf
cmp qword [rbx + 0x30], 0
jne 0x140002fc6
mov dword [rsp + 0x128], r12d
xor edx, edx
lea rcx, [rsp + 0x128]
call qword [sym.imp.WININET.dll_InternetGetConnectedState]
cmp eax, 1
jne 0x14000e2d6
mov eax, dword [rsp + 0x128]
test al, 0x42
setne cl
test al, 0x20
setne al
test al, cl
jne 0x14000e2d6
mov rax, qword [rbx]
xor r9d, r9d
lea r8d, [r9 + 1]
mov rdx, qword [rsi]
mov rcx, rbx
mov rax, qword [rax + 0x110]
call qword [case.0x140008ad6.0]
test eax, eax
jns 0x14000e2c4
mov rcx, qword [rsi]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x14000e2c4
mov edi, 0x800432b7
lea rcx, [rsp + 0x40]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
nop
lea rcx, [rsp + 0x58]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
jmp 0x1400030cf
lea rcx, [0x140020b60]
call qword [sym.imp.KERNEL32.dll_SetUnhandledExceptionFilter]
jmp 0x140002fc6
mov edi, 0x800c0004
lea rcx, [rsp + 0x40]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
nop
lea rcx, [rsp + 0x58]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
jmp 0x1400030cf
mov dword [rsp + 0x60], 0x40e
jmp 0x140002fe5
mov qword [rsp + 0x128], r12
cmp word [rsp + 0x40], 8
jne 0x14000e359
mov rdx, qword [rsp + 0x48]
lea rcx, [rsp + 0x128]
call fcn.140015a28
lea rdx, [0x1400319c0]
mov rax, 0xffffffffffffffff
inc rax
cmp word [rdx + rax*2], 0
jne 0x14000e334
mov r8d, eax
lea rcx, [rsp + 0x128]
call fcn.140007d90
mov edi, eax
test eax, eax
js 0x14000e393
mov qword [rsp + 0x48], r12
mov rdx, r15
lea rcx, [rsp + 0x128]
call fcn.14001e944
mov edi, eax
test eax, eax
js 0x14000e393
mov eax, 8
mov word [rsp + 0x40], ax
mov rax, qword [rsp + 0x128]
mov qword [rsp + 0x48], rax
xor ecx, ecx
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
jmp 0x140003011
mov rcx, qword [rsp + 0x128]
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
nop
lea rcx, [rsp + 0x40]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
nop
lea rcx, [rsp + 0x58]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
jmp 0x1400030cf
cmp qword [rbx + 0x30], 0
jne 0x140003025
xor r8d, r8d
jmp 0x14000302b
mov edi, 0x80070057
jmp 0x1400030cf