Function at 0x1800a9550
Capabilities:
Check internet connectivity via wininet
Create http request
Read data from internet
Receive data

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r12
push rbp
push r14
push r15
lea rbp, [rsp - 0x890]
sub rsp, 0x990
mov rax, qword [0x1802b0098]
xor rax, rsp
mov qword [rbp + 0x888], rax
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, str.https:__api.github.com
call qword [sym.imp.WININET.dll_InternetCheckConnectionA]
test eax, eax
je 0x1800a9d36
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
xor r15d, r15d
mov qword [rbp + 0x20], r15
mov qword [rbp + 0x28], 0xf
mov byte [rbp + 0x10], r15b
mov edi, r15d
movups xmmword [rbp + 0x30], xmm0
mov qword [rbp + 0x40], r15
mov qword [rbp + 0x48], r15
lea r8d, [r15 + 0x23]
lea rdx, str.https:__github.com_CSY0N_CSYON_MENU
lea rcx, [rbp + 0x30]
call fcn.180090ea0
nop
mov dword [rsp + 0x20], r15d
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, str.Csyon_Menu
call qword [sym.imp.WININET.dll_InternetOpenW]
mov r14, rax
test rax, rax
je 0x1800a9a21
lea rdx, [rbp + 0x30]
cmp qword [rbp + 0x48], 8
cmovae rdx, qword [rbp + 0x30]
mov qword [rsp + 0x28], r15
mov dword [rsp + 0x20], 0x4800000
xor r9d, r9d
xor r8d, r8d
mov rcx, rax
call qword [sym.imp.WININET.dll_InternetOpenUrlW]
mov rsi, rax
test rax, rax
je 0x1800a9a17
mov dword [rsp + 0x30], r15d
xorps xmm0, xmm0
movups xmmword [rbp - 0x10], xmm0
mov qword [rbp], r15
mov qword [rbp + 8], 0xf
mov byte [rbp - 0x10], r15b
lea r9, [rsp + 0x30]
mov r8d, 0x800
lea rdx, [rbp + 0x70]
mov rcx, rsi
call qword [sym.imp.WININET.dll_InternetReadFile]
test eax, eax
je 0x1800a972a
mov eax, dword [rsp + 0x30]
test eax, eax
je 0x1800a972a
cmp rax, 0x801
jae 0x1800a9de0
mov byte [rbp + rax + 0x70], 0
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x20], r15
mov qword [rbp - 0x18], r15
lea rax, [rbp + 0x70]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x1800a96b2
lea rdx, [rbp + 0x70]
lea rcx, [rbp - 0x30]
call fcn.18007bd10
nop
lea rdx, [rbp - 0x30]
cmp qword [rbp - 0x18], 0x10
cmovae rdx, qword [rbp - 0x30]
mov r8, qword [rbp - 0x20]
lea rcx, [rbp - 0x10]
call fcn.18007b400
nop
mov rdx, qword [rbp - 0x18]
cmp rdx, 0x10
jb 0x1800a965b
inc rdx
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a9720
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a9dda
call fcn.180117230
jmp 0x1800a965b
lea r12, vtable.Json::CharReaderBuilder.0
mov qword [rbp - 0x70], r12
mov byte [rbp - 0x60], 0
and dword [rbp - 0x60], 0xfffffeff
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x58], xmm0
mov qword [rbp - 0x48], r15
lea rcx, [rbp - 0x68]
call fcn.18010b440
nop
mov byte [rsp + 0x58], 0
and dword [rsp + 0x58], 0xfffffeff
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x70], r15
movups xmmword [rbp + 0x50], xmm0
mov qword [rbp + 0x60], r15
mov qword [rbp + 0x68], 0xf
mov byte [rbp + 0x50], 0
lea rcx, [rbp - 0x70]
call fcn.18010b0f0
mov rbx, rax
mov qword [rbp - 0x40], rax
mov rax, qword [rax]
mov r10, qword [rax + 8]
lea rcx, [rbp - 0x10]
mov r8, qword [rbp]
cmp qword [rbp + 8], 0x10
jb 0x1800a97b4
mov rdx, qword [rbp - 0x10]
add r8, rdx
jmp 0x1800a97bb
add r8, rcx
lea rdx, [rbp - 0x10]
lea rax, [rbp + 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x50]
mov rcx, rbx
call r10
test al, al
je 0x1800a9ab4
lea r8, [0x1801e3354]
lea rdx, str.name
lea rcx, [rsp + 0x50]
call fcn.180110f40
lea rdx, [rbp - 0x30]
mov rcx, rax
call fcn.1801104d0
mov rdi, rax
lea rax, [rbp + 0x10]
cmp rax, rdi
je 0x1800a9870
mov rdx, qword [rbp + 0x28]
cmp rdx, 0x10
jb 0x1800a9842
inc rdx
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a983d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a9de6
call fcn.180117230
mov qword [rbp + 0x20], r15
mov qword [rbp + 0x28], 0xf
mov byte [rbp + 0x10], 0
movups xmm0, xmmword [rdi]
movups xmmword [rbp + 0x10], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rbp + 0x20], xmm1
mov qword [rdi + 0x10], r15
mov qword [rdi + 0x18], 0xf
mov byte [rdi], 0
lea rcx, [rbp - 0x30]
call fcn.18007b3a0
lea rcx, [rbp + 0x10]
call fcn.18007a220
lea rdx, [rbp + 0x10]
lea rcx, [rbp - 0x30]
call fcn.18007af30
mov rcx, rax
call fcn.18007a350
mov edi, eax
mov rcx, rsi
call qword [sym.imp.WININET.dll_InternetCloseHandle]
nop
test rbx, rbx
je 0x1800a98ba
mov rcx, qword [rbx]
mov r8, qword [rcx]
mov edx, 1
mov rcx, rbx
call r8
nop
mov rdx, qword [rbp + 0x68]
cmp rdx, 0x10
jb 0x1800a98f5
inc rdx
mov rcx, qword [rbp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a98f0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a9df2
call fcn.180117230
mov qword [rbp + 0x60], r15
mov qword [rbp + 0x68], 0xf
mov byte [rbp + 0x50], 0
mov edx, dword [rsp + 0x58]
movzx ecx, dl
sub ecx, 4
je 0x1800a9953
sub ecx, 2
je 0x1800a991b
cmp ecx, 1
jne 0x1800a9965
mov rbx, qword [rsp + 0x50]
test rbx, rbx
je 0x1800a9965
mov r8, qword [rbx]
mov r8, qword [r8 + 8]
mov rdx, rbx
mov rcx, rbx
call fcn.1801117d0
mov edx, 0x58
mov rcx, qword [rbx]
call fcn.180117230
mov edx, 0x10
mov rcx, rbx
call fcn.180117230
jmp 0x1800a9965
shr edx, 8
test dl, 1
je 0x1800a9965
mov rcx, qword [rsp + 0x50]
call fcn.18011f78c
mov qword [rsp + 0x50], r15
mov rbx, qword [rsp + 0x60]
test rbx, rbx
je 0x1800a999b
lea r9, [fcn.18007aee0]
mov edx, 0x20
lea r8d, [rdx - 0x1d]
mov rcx, rbx
call fcn.1801179e4
nop
mov edx, 0x60
mov rcx, rbx
call fcn.180117230
nop
mov qword [rbp - 0x70], r12
lea rcx, [rbp - 0x68]
call fcn.180110ec0
mov qword [rbp - 0x68], r15
mov rbx, qword [rbp - 0x58]
test rbx, rbx
je 0x1800a99dc
lea r9, [fcn.18007aee0]
mov edx, 0x20
lea r8d, [rdx - 0x1d]
mov rcx, rbx
call fcn.1801179e4
nop
mov edx, 0x60
mov rcx, rbx
call fcn.180117230
nop
mov rdx, qword [rbp + 8]
cmp rdx, 0x10
jb 0x1800a9a17
inc rdx
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a9a12
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a9df8
call fcn.180117230
mov rcx, r14
call qword [sym.imp.WININET.dll_InternetCloseHandle]
nop
mov rdx, qword [rbp + 0x48]
cmp rdx, 8
jb 0x1800a9a61
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a9a5c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a9dec
call fcn.180117230
mov qword [rbp + 0x40], r15
mov qword [rbp + 0x48], 7
mov word [rbp + 0x30], r15w
mov rdx, qword [rbp + 0x28]
cmp rdx, 0x10
jb 0x1800a9aad
inc rdx
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a9aa8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a9dd4
call fcn.180117230
mov eax, edi
jmp 0x1800a9da4
lea rax, str.C:UserswladiDesktopCsyon_Mod_Menu_srccheatupdate.cpp
mov qword [rsp + 0x78], rax
mov dword [rbp - 0x80], 0x37
lea rax, str.Cheat::update_check::GetLatest
mov qword [rbp - 0x78], rax
lea rax, str.Failed_to_parse_JSON_data:_0
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], 0x1e
movaps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x40], xmm0
movups xmm1, xmmword [rsp + 0x78]
movaps xmmword [rbp - 0x30], xmm1
movsd xmm0, qword [rbp - 0x78]
movsd qword [rbp - 0x20], xmm0
lea rax, [rbp + 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x40]
lea rdx, [rbp - 0x30]
mov rcx, qword [0x1802d3208]
call fcn.1800a9e10
nop
test rbx, rbx
je 0x1800a9b37
mov rax, qword [rbx]
mov edx, 1
mov rcx, rbx
call qword [rax]
nop
mov rdx, qword [rbp + 0x68]
cmp rdx, 0x10
jb 0x1800a9b72
inc rdx
mov rcx, qword [rbp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a9b6d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a9df2
call fcn.180117230
mov qword [rbp + 0x60], r15
mov qword [rbp + 0x68], 0xf
mov byte [rbp + 0x50], 0
mov edx, dword [rsp + 0x58]
movzx ecx, dl
sub ecx, 4
je 0x1800a9bd0
sub ecx, 2
je 0x1800a9b98
cmp ecx, 1
jne 0x1800a9be2
mov rbx, qword [rsp + 0x50]
test rbx, rbx
je 0x1800a9be2
mov r8, qword [rbx]
mov r8, qword [r8 + 8]
mov rdx, rbx
mov rcx, rbx
call fcn.1801117d0
mov edx, 0x58
mov rcx, qword [rbx]
call fcn.180117230
mov edx, 0x10
mov rcx, rbx
call fcn.180117230
jmp 0x1800a9be2
shr edx, 8
test dl, 1
je 0x1800a9be2
mov rcx, qword [rsp + 0x50]
call fcn.18011f78c
mov qword [rsp + 0x50], r15
mov rbx, qword [rsp + 0x60]
test rbx, rbx
je 0x1800a9c18
lea r9, [fcn.18007aee0]
mov edx, 0x20
lea r8d, [rdx - 0x1d]
mov rcx, rbx
call fcn.1801179e4
nop
mov edx, 0x60
mov rcx, rbx
call fcn.180117230
nop
mov qword [rbp - 0x70], r12
lea rcx, [rbp - 0x68]
call fcn.180110ec0
mov qword [rbp - 0x68], r15
mov rbx, qword [rbp - 0x58]
test rbx, rbx
je 0x1800a9c59
lea r9, [fcn.18007aee0]
mov edx, 0x20
lea r8d, [rdx - 0x1d]
mov rcx, rbx
call fcn.1801179e4
nop
mov edx, 0x60
mov rcx, rbx
call fcn.180117230
nop
mov rdx, qword [rbp + 8]
cmp rdx, 0x10
jb 0x1800a9c94
inc rdx
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a9c8f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a9df8
call fcn.180117230
mov qword [rbp], r15
mov qword [rbp + 8], 0xf
mov byte [rbp - 0x10], 0
mov rdx, qword [rbp + 0x48]
cmp rdx, 8
jb 0x1800a9ce4
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a9cdf
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a9dfe
call fcn.180117230
mov qword [rbp + 0x40], r15
mov qword [rbp + 0x48], 7
mov word [rbp + 0x30], r15w
mov rdx, qword [rbp + 0x28]
cmp rdx, 0x10
jb 0x1800a9da2
inc rdx
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a9d2f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a9e04
call fcn.180117230
jmp 0x1800a9da2
lea rax, str.api.github.com_unreachable__check_your_network_configuration
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], 0x3c
lea rax, str.C:UserswladiDesktopCsyon_Mod_Menu_srccheatupdate.cpp
mov qword [rsp + 0x78], rax
mov dword [rbp - 0x80], 0x13
lea rax, str.Cheat::update_check::GetLatest
mov qword [rbp - 0x78], rax
movaps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x40], xmm0
movups xmm1, xmmword [rsp + 0x78]
movaps xmmword [rbp - 0x30], xmm1
movsd xmm0, qword [rbp - 0x78]
movsd qword [rbp - 0x20], xmm0
lea r9, [rsp + 0x40]
mov r8d, 3
lea rdx, [rbp - 0x30]
mov rcx, qword [0x1802d3208]
call fcn.18007f690
xor eax, eax
mov rcx, qword [rbp + 0x888]
xor rcx, rsp
call fcn.180117210
lea r11, [rsp + 0x990]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
call fcn.18011fb44
nop
call fcn.18011fb44
nop
call fcn.180117850
nop
call fcn.18011fb44
nop
call fcn.18011fb44
nop
call fcn.18011fb44
nop
call fcn.18011fb44
nop
call fcn.18011fb44
nop
call fcn.18011fb44
int3