Function at 0x140005f00
Capabilities:
Query or enumerate registry value

Disassembly:
mov rax, rsp
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x48]
sub rsp, 0x120
mov qword [rbp - 0x50], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov rax, qword [section..data]
xor rax, rsp
mov qword [rbp + 0x18], rax
mov rdi, rcx
xor r15d, r15d
mov esi, r15d
mov qword [rbp + 8], r15
mov qword [rbp + 0x10], r15
xor r8d, r8d
xor edx, edx
lea rcx, [rbp - 8]
call fcn.14000dec0
nop
mov qword [rbp - 0x30], r15
mov qword [rbp - 0x28], r15
xor r8d, r8d
xor edx, edx
lea rcx, [rbp - 0x40]
call fcn.14000dec0
nop
xor eax, eax
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x18], rax
mov qword [rbp - 0x10], rax
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x10], r15
lea r12, [0x140071d28]
mov rcx, qword [0x140071d28]
cmp rcx, r12
je 0x140005fbf
test dword [rcx + 0x1c], 0x10000000
je 0x140005fbf
cmp byte [rcx + 0x19], 5
jb 0x140005fbf
lea edx, [rax + 0x6e]
lea r8, [0x1400614d0]
mov rcx, qword [rcx + 0x10]
call fcn.1400017d0
mov rax, qword [rbp - 0x30]
mov edx, 0x40
cmp rax, rdx
jb 0x140005fe5
mov qword [rbp - 0x30], rdx
lea rax, [rbp - 0x40]
cmp qword [rbp - 0x28], 0x10
cmovae rax, qword [rbp - 0x40]
mov byte [rax + 0x40], 0
jmp 0x140005ff4
sub rdx, rax
xor r8d, r8d
lea rcx, [rbp - 0x40]
call fcn.14000dde0
mov eax, dword [rbp - 0x30]
mov dword [rbp - 0x48], eax
lea rax, [rbp - 0x40]
cmp qword [rbp - 0x28], 0x10
cmovae rax, qword [rbp - 0x40]
lea rcx, [rbp - 0x48]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea rbx, str.Version
mov rdx, rbx
mov rcx, qword [rdi + 0x98]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
je 0x140006073
mov rcx, qword [0x140071d28]
cmp rcx, r12
je 0x140006069
test dword [rcx + 0x1c], 0x10000000
je 0x140006069
cmp byte [rcx + 0x19], 2
jb 0x140006069
mov edx, 0x6f
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x28], rbx
mov rcx, qword [rcx + 0x10]
call fcn.140003790
mov esi, 1
jmp 0x140006257
mov rcx, qword [0x140071d28]
cmp rcx, r12
je 0x1400060b1
test dword [rcx + 0x1c], 0x10000000
je 0x1400060b1
cmp byte [rcx + 0x19], 5
jb 0x1400060b1
lea r9, [rbp - 0x40]
cmp qword [rbp - 0x28], 0x10
cmovae r9, qword [rbp - 0x40]
mov edx, 0x70
lea r8, [0x1400614d0]
mov rcx, qword [rcx + 0x10]
call fcn.140003950
mov edx, dword [rbp - 0x48]
dec edx
mov rax, qword [rbp - 0x30]
cmp rdx, rax
ja 0x1400060d7
mov qword [rbp - 0x30], rdx
lea rax, [rbp - 0x40]
cmp qword [rbp - 0x28], 0x10
cmovae rax, qword [rbp - 0x40]
mov byte [rdx + rax], 0
jmp 0x1400060e6
sub rdx, rax
xor r8d, r8d
lea rcx, [rbp - 0x40]
call fcn.14000dde0
mov qword [rbp - 0x60], r15
mov qword [rbp - 0x58], r15
xor r8d, r8d
xor edx, edx
lea rcx, [rbp - 0x70]
call fcn.14000dec0
mov r8d, 9
lea rdx, [0x140061090]
lea rcx, [rbp - 0x70]
call fcn.14000dac0
nop
xor r8d, r8d
mov dl, 1
lea rcx, [rbp - 8]
call fcn.14000dec0
lea rdx, [rbp - 0x70]
lea rcx, [rbp - 8]
call fcn.14000d650
nop
xor r8d, r8d
mov dl, 1
lea rcx, [rbp - 0x70]
call fcn.14000dec0
lea rdx, [rbp - 8]
mov r15, qword [rbp - 8]
mov r12, qword [rbp + 0x10]
cmp r12, 0x10
cmovae rdx, r15
lea rcx, [rbp - 0x40]
mov r13, qword [rbp - 0x40]
mov r10, qword [rbp - 0x28]
cmp r10, 0x10
cmovae rcx, r13
mov rbx, qword [rbp + 8]
mov r8, rbx
mov r14, qword [rbp - 0x30]
cmp r14, rbx
cmovb r8, r14
test r8, r8
jne 0x140006180
xor eax, eax
jmp 0x140006189
call fcn.140035630
mov r10, qword [rbp - 0x28]
cdqe
test rax, rax
jne 0x1400061a2
cmp r14, rbx
jae 0x14000619a
or eax, 0xffffffff
jmp 0x1400061a2
xor eax, eax
cmp r14, rbx
setne al
test eax, eax
je 0x14000624d
mov rcx, qword [0x140071d28]
lea rax, [0x140071d28]
cmp rcx, rax
je 0x1400061fb
test dword [rcx + 0x1c], 0x10000000
je 0x1400061fb
cmp byte [rcx + 0x19], 5
jb 0x1400061fb
lea rax, [rbp - 8]
cmp r12, 0x10
cmovae rax, r15
lea r9, [rbp - 0x40]
cmp r10, 0x10
cmovae r9, r13
mov dword [rsp + 0x30], ebx
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r14d
mov rcx, qword [rcx + 0x10]
call fcn.1400039b0
call fcn.140003e60
mov rcx, rdi
call fcn.140005700
test eax, eax
je 0x14000624d
mov rcx, qword [0x140071d28]
lea r12, [0x140071d28]
cmp rcx, r12
je 0x140006246
test dword [rcx + 0x1c], 0x10000000
je 0x140006246
cmp byte [rcx + 0x19], 2
jb 0x140006246
mov edx, 0x72
mov r9d, eax
lea r8, [0x1400614d0]
mov rcx, qword [rcx + 0x10]
call fcn.140001800
mov esi, 1
jmp 0x140006254
lea r12, [0x140071d28]
xor r15d, r15d
mov dword [rbp - 0x48], 4
lea rbx, [rdi + 4]
lea rax, [rbp - 0x48]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rbx
xor r9d, r9d
xor r8d, r8d
lea r14, str.Enabled
mov rdx, r14
mov rcx, qword [rdi + 0x98]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
je 0x1400062cd
mov rcx, qword [0x140071d28]
cmp rcx, r12
je 0x1400062c3
test dword [rcx + 0x1c], 0x10000000
je 0x1400062c3
cmp byte [rcx + 0x19], 2
jb 0x1400062c3
mov edx, 0x73
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x28], r14
mov rcx, qword [rcx + 0x10]
call fcn.140003790
mov dword [rbx], r15d
mov esi, 1
jmp 0x140006300
mov rcx, qword [0x140071d28]
cmp rcx, r12
je 0x140006300
test dword [rcx + 0x1c], 0x10000000
je 0x140006300
cmp byte [rcx + 0x19], 5
jb 0x140006300
mov edx, 0x74
mov r9d, dword [rbx]
lea r8, [0x1400614d0]
mov rcx, qword [rcx + 0x10]
call fcn.140001800
mov dword [rbp - 0x48], 8
lea rbx, [rdi + 0xc8]
lea rax, [rbp - 0x48]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rbx
xor r9d, r9d
xor r8d, r8d
lea r14, str.StartTime
mov rdx, r14
mov rcx, qword [rdi + 0x98]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
je 0x140006380
mov rcx, qword [0x140071d28]
cmp rcx, r12
je 0x14000636f
test dword [rcx + 0x1c], 0x10000000
je 0x14000636f
cmp byte [rcx + 0x19], 2
jb 0x14000636f
mov edx, 0x75
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x28], r14
mov rcx, qword [rcx + 0x10]
call fcn.140003790
xor ecx, ecx
call fcn.140037004
mov qword [rbx], rax
mov esi, 1
jmp 0x1400063ac
mov rcx, qword [0x140071d28]
cmp rcx, r12
je 0x1400063ac
test dword [rcx + 0x1c], 0x10000000
je 0x1400063ac
cmp byte [rcx + 0x19], 5
jb 0x1400063ac
mov edx, 0x76
mov r9, qword [rbx]
mov rcx, qword [rcx + 0x10]
call fcn.140003880
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x50], r15
lea rax, [rbp - 0x48]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], r15
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, qword [rdi + 0x98]
call qword [sym.imp.ADVAPI32.dll_RegQueryInfoKeyW]
test eax, eax
je 0x140006442
mov rcx, qword [0x140071d28]
cmp rcx, r12
je 0x140006687
test dword [rcx + 0x1c], 0x10000000
je 0x140006687
cmp byte [rcx + 0x19], 2
jb 0x140006687
mov edx, 0x77
mov dword [rsp + 0x28], eax
lea rax, str.Metrics
mov qword [rsp + 0x20], rax
lea r9, str.SOFTWAREIntelBluetooth
mov rcx, qword [rcx + 0x10]
call fcn.140003680
jmp 0x140006687
mov ecx, dword [rbp - 0x48]
movabs rax, 0xf0f0f0f0f0f0f0f1
mul rcx
shr rdx, 4
lea rcx, [rbp - 0x20]
call fcn.140008c90
mov rbx, qword [rbp - 0x20]
mov r10, qword [0x140071d28]
cmp r10, r12
je 0x1400064d5
test dword [r10 + 0x1c], 0x10000000
je 0x1400064d5
cmp byte [r10 + 0x19], 5
jb 0x1400064d5
mov r8d, dword [rbp - 0x48]
xorps xmm0, xmm0
cvtsi2ss xmm0, r8
mulss xmm0, dword [0x140061c18]
cvtps2pd xmm1, xmm0
mov rcx, qword [rbp - 0x18]
sub rcx, rbx
movabs rax, 0x7878787878787879
imul rcx
mov rcx, rdx
sar rcx, 3
mov r9, rcx
shr r9, 0x3f
add r9, rcx
mov edx, 0x78
mov dword [rsp + 0x28], r8d
movsd qword [rsp + 0x20], xmm1
mov rcx, qword [r10 + 0x10]
call fcn.140003440
lea rax, [rbp - 0x48]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rbx
xor r9d, r9d
xor r8d, r8d
lea rbx, str.Statistics
mov rdx, rbx
mov rcx, qword [rdi + 0x98]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
je 0x140006547
mov rcx, qword [0x140071d28]
cmp rcx, r12
je 0x140006687
test dword [rcx + 0x1c], 0x10000000
je 0x140006687
cmp byte [rcx + 0x19], 2
jb 0x140006687
mov edx, 0x79
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x28], rbx
mov rcx, qword [rcx + 0x10]
call fcn.140003790
jmp 0x140006687
lea rdx, [rdi + 0x88]
lea rcx, [rbp - 0x20]
call fcn.140008460
test eax, eax
je 0x14000659f
mov rcx, qword [0x140071d28]
cmp rcx, r12
je 0x140006687
test dword [rcx + 0x1c], 0x10000000
je 0x140006687
cmp byte [rcx + 0x19], 2
jb 0x140006687
mov edx, 0x7a
mov r9d, eax
lea r8, [0x1400614d0]
mov rcx, qword [rcx + 0x10]
call fcn.140001800
jmp 0x140006687
mov dword [rbp - 0x48], 4
lea rax, [rbp - 0x48]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdi
xor r9d, r9d
xor r8d, r8d
lea rbx, str.DeviceNotPresent
mov rdx, rbx
mov rcx, qword [rdi + 0x98]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
je 0x14000660f
mov rcx, qword [0x140071d28]
cmp rcx, r12
je 0x140006607
test dword [rcx + 0x1c], 0x10000000
je 0x140006607
cmp byte [rcx + 0x19], 2
jb 0x140006607
mov edx, 0x7b
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x28], rbx
mov rcx, qword [rcx + 0x10]
call fcn.140003790
mov dword [rdi], r15d
mov esi, 1
mov dword [rbp - 0x48], 4
lea r14, [rdi + 0xd4]
lea rax, [rbp - 0x48]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r14
xor r9d, r9d
xor r8d, r8d
lea r13, str.TotalRuns
mov rdx, r13
mov rcx, qword [rdi + 0x98]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov ebx, eax
test eax, eax
je 0x1400067c8
mov rcx, qword [0x140071d28]
cmp rcx, r12
je 0x140006684
test dword [rcx + 0x1c], 0x10000000
je 0x140006684
cmp byte [rcx + 0x19], 2
jb 0x140006684
mov edx, 0x7c
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x28], r13
mov rcx, qword [rcx + 0x10]
call fcn.140003790
mov dword [r14], r15d
lea rcx, [rdi + 0x88]
call fcn.140008b10
mov byte [rsp + 0x60], 0
mov qword [rsp + 0x61], 0
mov qword [rsp + 0x69], 0
mov dword [rsp + 0x78], r15d
movups xmm0, xmmword [rsp + 0x60]
movups xmmword [rsp + 0x7c], xmm0
movzx eax, byte [rsp + 0x70]
mov byte [rbp - 0x74], al
lea rdx, [rsp + 0x78]
lea rcx, [rdi + 0x88]
call fcn.14000ac90
lea r9, [rax + 0x1c]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x60]
lea rcx, [rdi + 0x88]
call fcn.14000ace0
mov rcx, qword [0x140071d28]
cmp rcx, r12
je 0x14000671c
test dword [rcx + 0x1c], 0x10000000
je 0x14000671c
cmp byte [rcx + 0x19], 5
jb 0x14000671c
mov edx, 0x7d
lea r8, [0x1400614d0]
mov rcx, qword [rcx + 0x10]
call fcn.1400017d0
lea rbx, [0x1400614b8]
mov esi, 2
nop dword [rax + rax]
mov byte [rsp + 0x78], 1
mov eax, dword [rbx]
mov dword [rsp + 0x79], eax
mov qword [rsp + 0x7d], 0
mov dword [rbp - 0x7b], r15d
mov dword [rbp - 0x70], eax
movups xmm0, xmmword [rsp + 0x78]
movups xmmword [rbp - 0x6c], xmm0
movzx eax, byte [rbp - 0x78]
mov byte [rbp - 0x5c], al
lea rdx, [rbp - 0x70]
lea rcx, [rdi + 0x88]
call fcn.14000ac90
lea r9, [rax + 0x1c]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x60]
lea rcx, [rdi + 0x88]
call fcn.14000ace0
mov rcx, qword [0x140071d28]
cmp rcx, r12
je 0x1400067b8
test dword [rcx + 0x1c], 0x10000000
je 0x1400067b8
cmp byte [rcx + 0x19], 5
jb 0x1400067b8
mov edx, 0x7e
mov r9d, dword [rbx]
lea r8, [0x1400614d0]
mov rcx, qword [rcx + 0x10]
call fcn.140001800
add rbx, 4
sub rsi, 1
jne 0x140006730
jmp 0x1400067cd
cmp esi, 1
jne 0x14000680e
mov rcx, rdi
call fcn.140008640
mov ebx, eax
test eax, eax
je 0x14000680e
mov rcx, qword [0x140071d28]
cmp rcx, r12
je 0x140006842
test dword [rcx + 0x1c], 0x10000000
je 0x140006815
cmp byte [rcx + 0x19], 2
jb 0x140006815
mov edx, 0x7f
mov r9d, eax
lea r8, [0x1400614d0]
mov rcx, qword [rcx + 0x10]
call fcn.140001800
mov rcx, qword [0x140071d28]
cmp rcx, r12
je 0x140006842
test dword [rcx + 0x1c], 0x10000000
je 0x140006842
cmp byte [rcx + 0x19], 5
jb 0x140006842
mov edx, 0x80
mov r9d, ebx
lea r8, [0x1400614d0]
mov rcx, qword [rcx + 0x10]
call fcn.140001800
nop
lea rcx, [rbp - 0x20]
call fcn.140009920
nop
xor r8d, r8d
mov dl, 1
lea rcx, [rbp - 0x40]
call fcn.14000dec0
nop
xor r8d, r8d
mov dl, 1
lea rcx, [rbp - 8]
call fcn.14000dec0
mov eax, ebx
mov rcx, qword [rbp + 0x18]
xor rcx, rsp
call fcn.140011f50
lea r11, [rsp + 0x120]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret