Function at 0x180007510
Capabilities:
Check os version

Disassembly:
mov qword [rsp + 0x10], rdx
push rbx
push rbp
push rdi
push r12
sub rsp, 0xe8
mov rdi, rcx
lea rcx, str.iphlpapi
xor ebp, ebp
mov r12, rdx
mov dword [rsp + 0x128], ebp
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
lea rdx, str.GetAdaptersAddresses
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbx, rax
test rax, rax
jne 0x18000756d
mov rdx, r12
mov rcx, rdi
call fcn.180007310
add rsp, 0xe8
pop r12
pop rdi
pop rbp
pop rbx
ret
xor r9d, r9d
lea rax, [rsp + 0x128]
xor r8d, r8d
lea edx, [r9 + 0x1e]
xor ecx, ecx
mov qword [rsp + 0xe0], r13
mov qword [rsp + 0x20], rax
call rbx
mov ecx, dword [rsp + 0x128]
call fcn.1800297b8
mov r13, rax
test rax, rax
jne 0x1800075ad
lea eax, [r13 + 8]
jmp 0x1800077cf
xor r8d, r8d
lea rax, [rsp + 0x128]
mov r9, r13
lea edx, [r8 + 0x1e]
xor ecx, ecx
mov qword [rsp + 0x20], rax
call rbx
test eax, eax
je 0x1800075d9
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebp, eax
jmp 0x1800077c5
cmp dword [r13], 0x48
ja 0x1800075f2
mov rdx, r12
mov rcx, rdi
call fcn.180007310
mov ebp, eax
jmp 0x1800077c5
mov qword [rsp + 0x110], rsi
lea rcx, [rsp + 0x30]
xor edx, edx
mov r8d, 0x9c
mov qword [rsp + 0xd8], r14
mov qword [rsp + 0xd0], r15
call fcn.180029ee0
lea rcx, [rsp + 0x30]
mov dword [rsp + 0x30], 0x9c
call qword [sym.imp.KERNEL32.dll_GetVersionExA]
mov r15, r13
mov rax, qword [0x180058460]
mov r14, qword [r15 + 0xb0]
call qword [rax + 0xd8]
mov r9, qword [0x180058460]
mov r8d, dword [r15 + 4]
mov rcx, rax
mov edx, 0x2057c
mov rsi, rax
call qword [r9 + 0x58]
mov r10, qword [0x180058460]
mov r9d, dword [r15 + 0x58]
lea r8, [r15 + 0x50]
mov edx, 0x40597
mov rcx, rsi
call qword [r10 + 0x48]
mov rax, qword [0x180058460]
mov r8, qword [r15 + 0x40]
mov edx, 0x10598
mov rcx, rsi
call qword [rax + 0x60]
mov rax, qword [0x180058460]
mov r8d, dword [r15 + 0x60]
mov edx, 0x2057a
mov rcx, rsi
call qword [rax + 0x58]
mov rdi, qword [r15 + 0x18]
test rdi, rdi
je 0x18000778b
mov ecx, 2
lea r12d, [rcx + 0x15]
nop dword [rax]
mov rbx, qword [rdi + 0x10]
movzx eax, word [rbx]
cmp cx, ax
je 0x1800076d6
cmp r12w, ax
jne 0x180007776
cmp dword [rsp + 0x34], 6
mov dword [rsp + 0x120], ebp
jb 0x1800076ea
movzx ecx, byte [rdi + 0x38]
jmp 0x1800076f3
test r14, r14
je 0x180007726
mov ecx, dword [r14 + 0x20]
call qword [sym.imp.WS2_32.dll_htonl]
mov dword [rsp + 0x120], eax
test eax, eax
je 0x18000772d
mov rax, qword [0x180058460]
lea r8, [rsp + 0x120]
mov r9d, 4
mov edx, 0x20590
mov rcx, rsi
call qword [rax + 0x48]
jmp 0x18000772d
mov dword [rsp + 0x120], ebp
cmp word [rbx], 2
mov rax, qword [0x180058460]
mov edx, 0x40596
mov rcx, rsi
jne 0x180007748
lea r8, [rbx + 4]
jmp 0x180007768
lea r8, [rbx + 8]
mov r9d, reloc.WS2_32.dll_recv
call qword [rax + 0x48]
mov rax, qword [0x180058460]
lea r8, [rbx + 0x18]
mov edx, 0x4059a
mov rcx, rsi
mov r9d, 4
call qword [rax + 0x48]
mov ecx, 2
mov rdi, qword [rdi + 8]
test rdi, rdi
jne 0x1800076c0
mov r12, qword [rsp + 0x118]
mov rax, qword [0x180058460]
mov r8, rsi
mov edx, 0x40000599
mov rcx, r12
call qword [rax + 0x20]
mov r15, qword [r15 + 8]
test r15, r15
jne 0x180007632
mov r15, qword [rsp + 0xd0]
mov r14, qword [rsp + 0xd8]
mov rsi, qword [rsp + 0x110]
mov rcx, r13
call fcn.180029778
mov eax, ebp
mov r13, qword [rsp + 0xe0]
add rsp, 0xe8
pop r12
pop rdi
pop rbp
pop rbx
ret