Function at 0x140013740
Capabilities:
Query or enumerate registry value

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbx
sub rsp, 0x248
mov rax, qword [0x14039fd98]
xor rax, rsp
mov qword [rsp + 0x240], rax
mov dword [rsp + 0x3c], 0x200
lea r12, [rsp + 0x3c]
mov qword [rsp + 0x30], r12
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 0
lea rdx, str.SOFTWAREMicrosoftWindows_NTCurrentVersion
lea r8, str.ProductName
mov rcx, 0xffffffff80000002
mov r9d, 2
call qword [sym.imp.ADVAPI32.dll_RegGetValueW]
test eax, eax
je 0x1400137d2
xor edi, edi
mov rcx, qword [rsp + 0x240]
xor rcx, rsp
call fcn.140265fe0
mov rax, rdi
add rsp, 0x248
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
lea rdi, [rsp + 0x40]
mov rcx, rdi
mov rdx, 0xffffffffffffffff
xor r8d, r8d
call fcn.1400f5c00
mov rsi, rax
mov dword [rsp + 0x40], 4
mov qword [rsp + 0x30], rdi
lea rax, [rsp + 0x38]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 0
lea rdx, str.SOFTWAREMicrosoftWindows_NTCurrentVersion
lea r8, str.CurrentMajorVersionNumber
mov rcx, 0xffffffff80000002
mov r9d, reloc.WS2_32.dll_recv
call qword [sym.imp.ADVAPI32.dll_RegGetValueW]
test eax, eax
je 0x14001388a
mov dword [rsp + 0x3c], 0x200
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], 0
lea rdx, str.SOFTWAREMicrosoftWindows_NTCurrentVersion
lea r8, str.CurrentVersion
mov rcx, 0xffffffff80000002
mov r9d, 2
call qword [sym.imp.ADVAPI32.dll_RegGetValueW]
test eax, eax
jne 0x1400138ce
lea rcx, [rsp + 0x40]
mov rdx, 0xffffffffffffffff
xor r8d, r8d
call fcn.1400f5c00
mov rbx, rax
jmp 0x1400138d0
mov dword [rsp + 0x40], 4
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], 0
lea rdx, str.SOFTWAREMicrosoftWindows_NTCurrentVersion
lea r8, str.CurrentMinorVersionNumber
mov rcx, 0xffffffff80000002
mov r9d, reloc.WS2_32.dll_recv
call qword [sym.imp.ADVAPI32.dll_RegGetValueW]
test eax, eax
je 0x140013984
xor ebx, ebx
test rbx, rbx
je 0x1400137ac
mov dword [rsp + 0x3c], 0x200
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], 0
lea rdx, str.SOFTWAREMicrosoftWindows_NTCurrentVersion
lea r8, str.CurrentBuild
mov rcx, 0xffffffff80000002
mov r9d, 2
call qword [sym.imp.ADVAPI32.dll_RegGetValueW]
test eax, eax
jne 0x1400137ac
lea rcx, [rsp + 0x40]
mov rdx, 0xffffffffffffffff
xor r8d, r8d
call fcn.1400f5c00
mov r14, rax
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rbx
lea r15, str.__s___s__Build__s_
xor ecx, ecx
xor edx, edx
mov r8, r15
mov r9, rsi
call fcn.140002010
inc eax
movsxd r12, eax
mov rcx, r12
call sym.dart_precompiled_runtime_product.exe_Dart_ScopeAllocate
mov rdi, rax
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], rbx
mov rcx, rax
mov rdx, r12
mov r8, r15
mov r9, rsi
call fcn.140002010
jmp 0x1400137ae
mov eax, dword [rsp + 0x3c]
mov r9d, dword [rsp + 0x38]
mov dword [rsp + 0x20], eax
lea r8, str._d._d
xor ebx, ebx
xor ecx, ecx
xor edx, edx
call fcn.140002010
test eax, eax
js 0x1400138d0
mov r14d, eax
inc r14d
mov rcx, r14
call sym.dart_precompiled_runtime_product.exe_Dart_ScopeAllocate
mov r15, rax
mov eax, dword [rsp + 0x3c]
mov r9d, dword [rsp + 0x38]
mov dword [rsp + 0x20], eax
lea r8, str._d._d
mov rcx, r15
mov rdx, r14
call fcn.140002010
xor ebx, ebx
test eax, eax
cmovns rbx, r15
jmp 0x1400138d0