Function at 0x140103d40
Capabilities:
Check internet connectivity via wininet

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x38]
sub rsp, 0x138
mov qword [rsp + 0x78], 0xfffffffffffffffe
mov rax, qword [0x1402ba4e0]
xor rax, rsp
mov qword [rbp + 0x20], rax
mov esi, r9d
mov dword [rsp + 0x28], r9d
mov dword [rsp + 0x20], r8d
mov rbx, rdx
mov qword [rsp + 0x58], rdx
mov rdi, rcx
call fcn.1400e8d70
test al, al
je 0x140103da6
xor r9d, r9d
xor r8d, r8d
mov edx, esi
mov rcx, rdi
call fcn.1400e8a90
jmp 0x1401045a6
xor r13d, r13d
mov dword [rsp + 0x40], r13d
mov qword [0x1402c2b50], rdi
cmp edi, 0xffffffff
cmove rdi, r13
mov qword [rsp + 0x68], rdi
cmp dword [0x1402c2cb8], r13d
jne 0x140103de0
lea rcx, [0x1400e7fe0]
call fcn.140110520
mov dword [0x1402c2cb8], 1
mov dword [rsp + 0x24], 1
mov qword [rbp - 0x68], 0xf
mov qword [rbp - 0x70], r13
mov byte [rbp - 0x80], r13b
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasb al, byte [rdi]
not rcx
lea r8, [rcx - 1]
mov rdx, rbx
lea rcx, [rbp - 0x80]
call fcn.140015af0
nop
lea rdx, [rbp - 0x80]
lea rcx, [0x1402c2bb0]
call fcn.140103610
mov qword [rbp - 0x40], 0xf
mov qword [rbp - 0x48], r13
mov byte [rbp - 0x58], 0
or r9, 0xffffffffffffffff
xor r8d, r8d
mov rdx, rax
lea rcx, [rbp - 0x58]
call fcn.1400159a0
nop
lea r12, [rbp - 0x58]
cmp qword [rbp - 0x40], 0x10
cmovae r12, qword [rbp - 0x58]
mov qword [rsp + 0x48], r12
mov qword [rsp + 0x70], r13
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, r12
repne scasb al, byte [rdi]
not rcx
dec rcx
jne 0x140104055
mov dword [rsp + 0x24], r13d
or rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasb al, byte [rdi]
not rcx
call fcn.14010a204
mov rsi, rax
mov rdx, rbx
sub rax, rbx
nop dword [rax]
movzx ecx, byte [rdx]
mov byte [rax + rdx], cl
inc rdx
test cl, cl
jne 0x140103ea0
mov edx, 0x3e
mov rcx, rsi
call fcn.140115ac0
mov rbx, rax
test rax, rax
je 0x140104048
mov byte [rax], 0
mov qword [rbp + 0x10], 0xf
mov qword [rbp + 8], r13
mov byte [rbp - 8], 0
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rsi
repne scasb al, byte [rdi]
not rcx
lea r8, [rcx - 1]
mov rdx, rsi
lea rcx, [rbp - 8]
call fcn.140015af0
nop
lea rdx, [rbp - 8]
lea rcx, [0x1402c2bb0]
call fcn.140103610
mov qword [rbp - 0x18], 0xf
mov qword [rbp - 0x20], r13
mov byte [rbp - 0x30], 0
or r9, 0xffffffffffffffff
xor r8d, r8d
mov rdx, rax
lea rcx, [rbp - 0x30]
call fcn.1400159a0
nop
lea r12, [rbp - 0x30]
cmp qword [rbp - 0x18], 0x10
cmovae r12, qword [rbp - 0x30]
mov qword [rsp + 0x48], r12
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, r12
repne scasb al, byte [rdi]
not rcx
dec rcx
je 0x140104008
mov dword [rsp + 0x24], 1
lea edx, [rax + 0x3e]
mov rcx, r12
call fcn.140115ac0
test rax, rax
jne 0x140104008
or rcx, 0xffffffffffffffff
lea rdi, [rbx + 1]
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx - 1]
or rcx, 0xffffffffffffffff
mov rdi, r12
repne scasb al, byte [rdi]
not rcx
dec rcx
add ecx, edx
add ecx, 2
call fcn.14010a204
mov r13, rax
mov qword [rsp + 0x70], rax
mov rdx, rax
sub rdx, r12
nop word [rax + rax]
movzx ecx, byte [r12]
mov byte [rdx + r12], cl
inc r12
test cl, cl
jne 0x140103fb0
mov rdi, rax
xor eax, eax
or rcx, 0xffffffffffffffff
repne scasb al, byte [rdi]
movzx eax, word [0x1401ed66c]
mov word [rdi - 1], ax
mov rdi, r13
xor eax, eax
or rcx, 0xffffffffffffffff
repne scasb al, byte [rdi]
xor ecx, ecx
nop word [rax + rax]
movzx eax, byte [rbx + rcx + 1]
mov byte [rdi + rcx - 1], al
inc rcx
test al, al
jne 0x140103ff0
mov qword [rsp + 0x48], r13
xor r13d, r13d
cmp qword [rbp - 0x18], 0x10
jb 0x140104018
mov rcx, qword [rbp - 0x30]
call fcn.140085540
mov qword [rbp - 0x18], 0xf
mov qword [rbp - 0x20], r13
mov byte [rbp - 0x30], 0
cmp qword [rbp + 0x10], 0x10
jb 0x140104038
mov rcx, qword [rbp - 8]
call fcn.140085540
mov qword [rbp + 0x10], 0xf
mov qword [rbp + 8], r13
mov byte [rbp - 8], 0
mov rcx, rsi
call fcn.14010d304
mov rbx, qword [rsp + 0x58]
mov r8d, 7
lea rdx, str.http:__
mov rcx, rbx
call fcn.1401170a8
test eax, eax
je 0x14010408b
mov r8d, 8
lea rdx, str.https:__
mov rcx, rbx
call fcn.1401170a8
test eax, eax
jne 0x1401043ad
xor edx, edx
lea rcx, [rsp + 0x50]
call qword [sym.imp.WININET.dll_InternetGetConnectedState]
test eax, eax
je 0x140104386
test byte [rsp + 0x50], 1
jne 0x140104386
mov rcx, rbx
call fcn.1400ea080
test eax, eax
je 0x1401041f9
mov r13, qword [0x1402c2c38]
mov rdi, qword [r13 + 8]
mov r12, r13
mov r14, qword [rbp - 0x68]
mov rsi, qword [rbp - 0x70]
mov r15, qword [rbp - 0x80]
cmp byte [rdi + 0x41], 0
jne 0x14010414b
nop dword [rax + rax]
lea rcx, [rdi + 0x18]
lea rdx, [rbp - 0x80]
cmp r14, 0x10
cmovae rdx, r15
mov rbx, qword [rcx + 0x10]
cmp rbx, rbx
cmp qword [rcx + 0x18], 0x10
jb 0x140104101
mov rcx, qword [rcx]
mov r8, rsi
cmp rbx, rsi
cmovb r8, rbx
call fcn.14010fbe0
movsxd rcx, eax
test eax, eax
jne 0x14010412b
cmp rbx, rsi
jae 0x140104121
or ecx, 0xffffffff
jmp 0x14010412b
xor eax, eax
cmp rbx, rsi
setne al
mov ecx, eax
test ecx, ecx
sets al
test al, al
je 0x14010413a
mov rdi, qword [rdi + 0x10]
jmp 0x140104140
mov r12, rdi
mov rdi, qword [rdi]
cmp byte [rdi + 0x41], 0
je 0x1401040e0
mov rbx, qword [rsp + 0x58]
mov qword [rsp + 0x60], r12
cmp r12, r13
je 0x1401041ae
lea rdx, [r12 + 0x18]
mov rdi, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x140104168
mov rdx, qword [rdx]
lea rcx, [rbp - 0x80]
cmp r14, 0x10
cmovae rcx, r15
mov r8, rdi
cmp rsi, rdi
cmovb r8, rsi
call fcn.14010fbe0
movsxd rcx, eax
test eax, eax
jne 0x14010419e
cmp rsi, rdi
jae 0x140104194
or ecx, 0xffffffff
jmp 0x14010419e
xor eax, eax
cmp rsi, rdi
setne al
mov ecx, eax
test ecx, ecx
sets al
test al, al
jne 0x1401041ae
lea rax, [rsp + 0x60]
jmp 0x1401041b8
mov qword [rsp + 0x30], r13
lea rax, [rsp + 0x30]
cmp qword [rax], r13
jne 0x1401041f6
mov rcx, rbx
call fcn.1400e8640
mov edi, eax
lea rdx, [rbp - 0x80]
lea rcx, [0x1402c2c30]
call fcn.1400fe860
mov r8, rax
xor r9d, r9d
lea rdx, [rsp + 0x30]
lea rcx, [0x1402c2c30]
call fcn.1400fe060
test edi, edi
je 0x140104386
xor r13d, r13d
lea r8, [rbp - 0x80]
lea rdx, [rsp + 0x30]
lea rcx, [0x1402c2c10]
call fcn.1400f1a80
mov rdi, qword [rsp + 0x30]
mov rax, rdi
mov rbx, qword [rsp + 0x38]
cmp rdi, rbx
je 0x140104273
cmp byte [rax + 0x41], 0
jne 0x14010426e
mov rcx, qword [rax + 0x10]
cmp byte [rcx + 0x41], 0
jne 0x14010424e
mov rax, rcx
mov rcx, qword [rcx]
cmp byte [rcx + 0x41], 0
jne 0x14010426e
nop dword [rax]
mov rax, rcx
mov rcx, qword [rcx]
cmp byte [rcx + 0x41], 0
je 0x140104240
jmp 0x14010426e
mov rcx, qword [rax + 8]
cmp byte [rcx + 0x41], 0
jne 0x14010426b
cmp rax, qword [rcx + 0x10]
jne 0x14010426b
mov rax, rcx
mov rcx, qword [rcx + 8]
cmp byte [rcx + 0x41], 0
je 0x140104258
mov rax, rcx
cmp rax, rbx
jne 0x140104220
mov rsi, qword [0x1402c2c18]
cmp rdi, qword [rsi]
jne 0x140104310
cmp rbx, rsi
jne 0x140104310
mov rdi, qword [rsi + 8]
mov rbx, rdi
cmp byte [rdi + 0x41], 0
jne 0x1401042eb
nop dword [rax]
mov rdx, qword [rbx + 0x10]
lea rcx, [0x1402c2c10]
call fcn.1400fdf20
mov rbx, qword [rbx]
cmp qword [rdi + 0x30], 0x10
jb 0x1401042c3
mov rcx, qword [rdi + 0x18]
call fcn.140085540
mov qword [rdi + 0x30], 0xf
mov qword [rdi + 0x28], r13
mov byte [rdi + 0x18], 0
mov rcx, rdi
call fcn.140085540
mov rdi, rbx
cmp byte [rbx + 0x41], 0
je 0x1401042a0
mov rsi, qword [0x1402c2c18]
mov qword [rsi + 8], rsi
mov rax, qword [0x1402c2c18]
mov qword [rax], rax
mov rax, qword [0x1402c2c18]
mov qword [rax + 0x10], rax
mov qword [0x1402c2c20], r13
jmp 0x1401043ad
cmp rdi, rbx
je 0x1401043b4
nop dword [rax]
mov r8, rdi
cmp byte [rdi + 0x41], 0
jne 0x14010436e
mov rax, qword [rdi + 0x10]
cmp byte [rax + 0x41], 0
jne 0x14010434e
mov rdi, rax
mov rax, qword [rax]
cmp byte [rax + 0x41], 0
jne 0x14010436e
nop
mov rdi, rax
mov rax, qword [rax]
cmp byte [rax + 0x41], 0
je 0x140104340
jmp 0x14010436e
mov rax, qword [rdi + 8]
cmp byte [rax + 0x41], 0
jne 0x14010436b
cmp rdi, qword [rax + 0x10]
jne 0x14010436b
mov rdi, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x41], 0
je 0x140104358
mov rdi, rax
lea rdx, [rsp + 0x30]
lea rcx, [0x1402c2c10]
call fcn.1400fdb30
cmp rdi, rbx
jne 0x140104320
jmp 0x1401043ad
lea rdx, [rbp - 0x80]
lea rcx, [0x1402c2c10]
call fcn.1400fe860
mov r8, rax
xor r9d, r9d
lea rdx, [rsp + 0x30]
lea rcx, [0x1402c2c10]
call fcn.1400fe060
mov rsi, qword [0x1402c2c18]
mov rdi, qword [rsi + 8]
mov r13, rsi
mov r14, qword [rbp - 0x68]
mov r12, qword [rbp - 0x70]
mov r15, qword [rbp - 0x80]
cmp byte [rdi + 0x41], 0
jne 0x140104436
nop dword [rax]
lea rcx, [rdi + 0x18]
lea rdx, [rbp - 0x80]
cmp r14, 0x10
cmovae rdx, r15
mov rbx, qword [rcx + 0x10]
cmp rbx, rbx
cmp qword [rcx + 0x18], 0x10
jb 0x1401043f1
mov rcx, qword [rcx]
mov r8, r12
cmp rbx, r12
cmovb r8, rbx
call fcn.14010fbe0
movsxd rcx, eax
test eax, eax
jne 0x14010441b
cmp rbx, r12
jae 0x140104411
or ecx, 0xffffffff
jmp 0x14010441b
xor eax, eax
cmp rbx, r12
setne al
mov ecx, eax
test ecx, ecx
sets al
test al, al
je 0x14010442a
mov rdi, qword [rdi + 0x10]
jmp 0x140104430
mov r13, rdi
mov rdi, qword [rdi]
cmp byte [rdi + 0x41], 0
je 0x1401043d0
mov qword [rsp + 0x30], r13
cmp r13, rsi
je 0x140104498
lea rdx, [r13 + 0x18]
mov rdi, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x140104452
mov rdx, qword [rdx]
lea rcx, [rbp - 0x80]
cmp r14, 0x10
cmovae rcx, r15
mov r8, rdi
cmp r12, rdi
cmovb r8, r12
call fcn.14010fbe0
movsxd rcx, eax
test eax, eax
jne 0x140104488
cmp r12, rdi
jae 0x14010447e
or ecx, 0xffffffff
jmp 0x140104488
xor eax, eax
cmp r12, rdi
setne al
mov ecx, eax
test ecx, ecx
sets al
test al, al
jne 0x140104498
lea rax, [rsp + 0x30]
jmp 0x1401044a2
mov qword [rsp + 0x60], rsi
lea rax, [rsp + 0x60]
mov r12d, dword [rsp + 0x28]
mov rbx, qword [rsp + 0x68]
cmp qword [rax], rsi
mov esi, dword [rsp + 0x20]
jne 0x1401044fc
mov r9d, r12d
mov r8d, esi
mov rdx, qword [rsp + 0x58]
mov rcx, rbx
call fcn.140103ca0
test eax, eax
jne 0x1401044f5
lea rdx, [rbp - 0x80]
lea rcx, [0x1402c2c10]
call fcn.1400fe860
mov r8, rax
xor r9d, r9d
lea rdx, [rsp + 0x30]
lea rcx, [0x1402c2c10]
call fcn.1400fe060
jmp 0x1401044fc
mov edi, 1
jmp 0x140104550
cmp dword [rsp + 0x24], 0
je 0x14010454c
mov rdi, qword [rsp + 0x48]
mov rcx, rdi
call fcn.1400e9fc0
test eax, eax
je 0x14010451e
mov dword [rsp + 0x20], 1
jmp 0x140104533
mov rcx, rdi
call fcn.1400e9f50
test r12d, r12d
je 0x140104537
mov dword [rsp + 0x20], 0xf
mov esi, dword [rsp + 0x20]
mov r9d, r12d
mov r8d, esi
mov rdx, rdi
mov rcx, rbx
call fcn.140103ca0
mov edi, eax
jmp 0x140104550
mov edi, dword [rsp + 0x40]
mov rax, qword [rsp + 0x70]
test rax, rax
je 0x140104563
mov rcx, rax
call fcn.14010d304
nop
cmp qword [rbp - 0x40], 0x10
jb 0x140104573
mov rcx, qword [rbp - 0x58]
call fcn.140085540
mov qword [rbp - 0x40], 0xf
xor ebx, ebx
mov qword [rbp - 0x48], rbx
mov byte [rbp - 0x58], bl
cmp qword [rbp - 0x68], 0x10
jb 0x140104594
mov rcx, qword [rbp - 0x80]
call fcn.140085540
mov qword [rbp - 0x68], 0xf
mov qword [rbp - 0x70], rbx
mov byte [rbp - 0x80], 0
mov eax, edi
mov rcx, qword [rbp + 0x20]
xor rcx, rsp
call fcn.14010d170
add rsp, 0x138
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret