Function at 0x140032110
Capabilities:
Query or enumerate registry value

Disassembly:
push rbp
sub rsp, 0x360
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x2d8], 0xfffffffffffffffe
mov qword [rbp + 0x60], rdx
mov qword [rbp + 0x68], rcx
mov qword [rbp + 0x70], rcx
mov byte [rbp + 0x2c5], 0
lea rdx, str.SOFTWAREMicrosoftWindows_NTCurrentVersionProductNameEditionIDWindows_11
lea rcx, [rbp + 0x88]
mov qword [rbp + 0x78], rcx
mov r8d, 0x2c
call fcn.140032910
mov rcx, qword [rbp + 0x78]
mov qword [rbp + 0xa0], 0
call fcn.140030a50
mov qword [rbp + 0x80], rax
jmp 0x140032178
mov rdx, qword [rbp + 0x80]
mov rcx, 0xffffffff80000002
xor r8d, r8d
mov r9d, 0x20019
lea rax, [rbp + 0xa0]
mov qword [rsp + 0x20], rax
call qword [sym.imp.advapi32.dll_RegOpenKeyExW]
cmp eax, 0
jne 0x1400321b0
cmp qword [rbp + 0xa0], 0
jne 0x1400321d6
mov qword [rbp + 0xa8], 1
lea rdx, [0x14008ca90]
lea rcx, [rbp + 0xa8]
call fcn.14002f990
mov byte [rbp + 0x5f], al
jmp 0x140032732
mov rax, qword [rbp + 0x60]
cmp dword [rax + 4], 0xa
jne 0x1400321f8
mov rax, qword [rbp + 0x60]
cmp dword [rax + 0xc], 0x55f0
setae al
and al, 1
mov byte [rbp + 0x117], al
jmp 0x1400321ff
mov byte [rbp + 0x117], 0
test byte [rbp + 0x117], 1
jne 0x140032223
lea rax, [0x14008ca5a]
mov qword [rbp + 0x130], rax
mov qword [rbp + 0x138], 0xb
jmp 0x14003223c
lea rax, [0x14008ca65]
mov qword [rbp + 0x130], rax
mov qword [rbp + 0x138], 9
mov rdx, qword [rbp + 0x130]
mov r8, qword [rbp + 0x138]
lea rcx, [rbp + 0x118]
call fcn.140032910
jmp 0x140032258
mov dword [rbp + 0x140], 0
mov dword [rbp + 0x144], 0
mov rax, qword [rbp + 0xa0]
mov qword [rbp + 0x48], rax
lea rcx, [rbp + 0x118]
call fcn.140030a50
mov qword [rbp + 0x50], rax
jmp 0x140032289
mov rdx, qword [rbp + 0x50]
mov rcx, qword [rbp + 0x48]
xor eax, eax
mov r8d, eax
lea r9, [rbp + 0x140]
lea rax, [rbp + 0x144]
mov qword [rsp + 0x20], 0
mov qword [rsp + 0x28], rax
call qword [sym.imp.advapi32.dll_RegQueryValueExW]
cmp eax, 0
jne 0x1400322c6
cmp dword [rbp + 0x140], 1
je 0x1400322ec
mov qword [rbp + 0x148], 1
lea rdx, [0x14008ca90]
lea rcx, [rbp + 0x148]
call fcn.14002f990
mov byte [rbp + 0x47], al
jmp 0x14003263c
cmp dword [rbp + 0x144], 0
je 0x1400322c6
mov eax, dword [rbp + 0x144]
and eax, 1
cmp eax, 0
jne 0x1400322c6
mov eax, dword [rbp + 0x144]
shr eax, 1
mov r8d, eax
xor eax, eax
mov dx, ax
lea rcx, [rbp + 0x1b0]
call fcn.140030aa0
jmp 0x140032321
mov rax, qword [rbp + 0xa0]
mov qword [rbp + 0x30], rax
lea rcx, [rbp + 0x118]
call fcn.140030a50
mov qword [rbp + 0x38], rax
jmp 0x14003233e
lea rcx, [rbp + 0x1b0]
call fcn.140030830
mov qword [rbp + 0x28], rax
jmp 0x140032350
mov r10, qword [rbp + 0x28]
mov rdx, qword [rbp + 0x38]
mov rcx, qword [rbp + 0x30]
xor eax, eax
mov r9d, eax
lea rax, [rbp + 0x144]
mov r8, r9
mov qword [rsp + 0x20], r10
mov qword [rsp + 0x28], rax
call qword [sym.imp.advapi32.dll_RegQueryValueExW]
cmp eax, 0
jne 0x14003239c
mov eax, dword [rbp + 0x144]
mov qword [rbp + 0x18], rax
lea rcx, [rbp + 0x1b0]
call fcn.1400309d0
mov qword [rbp + 0x20], rax
jmp 0x1400323be
mov rax, qword [rbp + 0x68]
movabs rcx, 0x8000000000000000
mov qword [rax], rcx
lea rcx, [rbp + 0x1b0]
call fcn.14002d7c0
jmp 0x14003262b
mov rax, qword [rbp + 0x18]
mov rcx, qword [rbp + 0x20]
shl rcx, 1
cmp rax, rcx
jne 0x14003239c
lea rcx, [rbp + 0x1b0]
call fcn.140030a70
mov qword [rbp + 8], rdx
mov qword [rbp + 0x10], rax
jmp 0x1400323e4
mov rdx, qword [rbp + 8]
mov rcx, qword [rbp + 0x10]
call fcn.14002ffc0
mov qword [rbp], rax
jmp 0x1400323f7
mov rax, qword [rbp]
mov qword [rbp + 0x1c8], rax
mov rdx, qword [rbp + 0x1c8]
mov eax, 1
xor ecx, ecx
cmp rdx, 0
cmove rax, rcx
cmp rax, 1
jne 0x14003242b
mov rax, qword [rbp + 0x1c8]
cmp word [rax], 0
je 0x140032441
lea rcx, [rbp + 0x1b0]
call fcn.140030a60
mov qword [rbp - 0x10], rdx
mov qword [rbp - 8], rax
jmp 0x140032451
lea rcx, [rbp + 0x1b0]
call fcn.1400309e0
jmp 0x14003244f
jmp 0x14003242b
mov r8, qword [rbp - 0x10]
mov rdx, qword [rbp - 8]
lea rcx, [rbp + 0x200]
call fcn.1400453a0
jmp 0x140032467
lea rcx, [rbp + 0x200]
call fcn.1400329b0
mov qword [rbp - 0x20], rdx
mov qword [rbp - 0x18], rax
jmp 0x14003247d
mov r8, qword [rbp - 0x20]
mov rdx, qword [rbp - 0x18]
lea rcx, [rbp + 0x1e8]
call fcn.1400329c0
jmp 0x140032493
lea rcx, [rbp + 0x1d0]
lea rdx, [rbp + 0x1e8]
call fcn.140030c50
jmp 0x1400324a8
mov byte [rbp + 0x2c5], 1
lea rcx, [rbp + 0x200]
call fcn.14002fd50
jmp 0x1400324bd
test byte [rbp + 0x117], 1
jne 0x14003251d
mov rax, qword [rbp + 0x68]
mov byte [rbp + 0x2c5], 0
mov rcx, qword [rbp + 0x1d0]
mov qword [rbp + 0x2a8], rcx
mov rcx, qword [rbp + 0x1d8]
mov qword [rbp + 0x2b0], rcx
mov rcx, qword [rbp + 0x1e0]
mov qword [rbp + 0x2b8], rcx
mov rcx, qword [rbp + 0x2a8]
mov qword [rax], rcx
mov rcx, qword [rbp + 0x2b0]
mov qword [rax + 8], rcx
mov rcx, qword [rbp + 0x2b8]
mov qword [rax + 0x10], rcx
jmp 0x140032571
lea rax, [rbp + 0x1d0]
mov qword [rbp + 0x2c8], rax
lea rax, [fcn.14002f950]
mov qword [rbp + 0x2d0], rax
movups xmm0, xmmword [rbp + 0x2c8]
movaps xmmword [rbp + 0x290], xmm0
movaps xmm0, xmmword [rbp + 0x290]
movaps xmmword [rbp + 0x280], xmm0
lea rdx, [0x14008ca80]
lea rcx, [rbp + 0x250]
lea r8, [rbp + 0x280]
call fcn.14002fac0
jmp 0x14003257c
test byte [rbp + 0x2c5], 1
jne 0x1400325f6
jmp 0x1400325e1
lea rcx, [rbp + 0x238]
lea rdx, [rbp + 0x250]
call fcn.1400313a0
jmp 0x140032591
mov rax, qword [rbp + 0x68]
mov rcx, qword [rbp + 0x238]
mov qword [rbp + 0x220], rcx
mov rcx, qword [rbp + 0x240]
mov qword [rbp + 0x228], rcx
mov rcx, qword [rbp + 0x248]
mov qword [rbp + 0x230], rcx
mov rcx, qword [rbp + 0x220]
mov qword [rax], rcx
mov rcx, qword [rbp + 0x228]
mov qword [rax + 8], rcx
mov rcx, qword [rbp + 0x230]
mov qword [rax + 0x10], rcx
jmp 0x140032571
mov byte [rbp + 0x2c5], 0
lea rcx, [rbp + 0x1b0]
call fcn.14002d7c0
jmp 0x140032604
lea rcx, [rbp + 0x1d0]
call fcn.14002fcb0
jmp 0x1400325e1
lea rcx, [rbp + 0x118]
call fcn.14002d7c0
jmp 0x140032612
lea rcx, [rbp + 0x88]
call fcn.14002d7c0
mov rax, qword [rbp + 0x70]
add rsp, 0x360
pop rbp
ret
lea rcx, [rbp + 0x118]
call fcn.14002d7c0
jmp 0x140032721
mov al, byte [rbp + 0x47]
test al, 1
jne 0x140032658
jmp 0x140032645
mov rax, qword [rbp + 0x68]
movabs rcx, 0x8000000000000000
mov qword [rax], rcx
jmp 0x14003262b
mov byte [rbp + 0x2c7], 0
mov dl, byte [rbp + 0x2c7]
lea rcx, [0x14009a1d0]
call fcn.1400319c0
mov qword [rbp - 0x28], rax
jmp 0x140032677
mov rax, qword [rbp - 0x28]
mov qword [rbp + 0x150], rax
lea rcx, [rbp + 0x148]
lea rdx, [rbp + 0x150]
call fcn.14002f990
mov byte [rbp - 0x29], al
jmp 0x14003269a
mov al, byte [rbp - 0x29]
test al, 1
jne 0x1400326a3
jmp 0x140032645
lea rdx, str.RegQueryValueExW_failed
lea rcx, [rbp + 0x158]
call fcn.140025390
jmp 0x1400326b8
lea rcx, str.C:Usersuser.cargo_registry_srcindex.crates.io_6f17d22bba15001fos_info_3.8.2_srcwindowswinapi.rsx86_64ia64armaarch64i386ntdll
call fcn.140025f30
mov qword [rbp - 0x38], rax
jmp 0x1400326ca
mov rax, qword [rbp - 0x38]
lea rcx, str.os_info::imp::winapi
mov qword [rbp + 0x188], rcx
mov qword [rbp + 0x190], 0x14
mov qword [rbp + 0x198], rcx
mov qword [rbp + 0x1a0], 0x14
mov qword [rbp + 0x1a8], rax
mov rdx, qword [rbp + 0x148]
lea rcx, [rbp + 0x158]
lea r8, [rbp + 0x188]
call fcn.14002ef00
jmp 0x14003271c
jmp 0x140032645
lea rcx, [rbp + 0x88]
call fcn.14002d7c0
jmp 0x14003261e
mov al, byte [rbp + 0x5f]
test al, 1
jne 0x14003274e
jmp 0x14003273b
mov rax, qword [rbp + 0x68]
movabs rcx, 0x8000000000000000
mov qword [rax], rcx
jmp 0x140032721
mov byte [rbp + 0x2c6], 0
mov dl, byte [rbp + 0x2c6]
lea rcx, [0x14009a1d0]
call fcn.1400319c0
mov qword [rbp - 0x40], rax
jmp 0x14003276d
mov rax, qword [rbp - 0x40]
mov qword [rbp + 0xb0], rax
lea rcx, [rbp + 0xa8]
lea rdx, [rbp + 0xb0]
call fcn.14002f990
mov byte [rbp - 0x41], al
jmp 0x140032790
mov al, byte [rbp - 0x41]
test al, 1
jne 0x140032799
jmp 0x14003273b
lea rdx, str.RegOpenKeyExW_HKEY_LOCAL_MACHINE__...__failed
lea rcx, [rbp + 0xb8]
call fcn.140025390
jmp 0x1400327ae
lea rcx, str.C:Usersuser.cargo_registry_srcindex.crates.io_6f17d22bba15001fos_info_3.8.2_srcwindowswinapi.rsx86_64ia64armaarch64i386ntdll
call fcn.140025f30
mov qword [rbp - 0x50], rax
jmp 0x1400327c0
mov rax, qword [rbp - 0x50]
lea rcx, str.os_info::imp::winapi
mov qword [rbp + 0xe8], rcx
mov qword [rbp + 0xf0], 0x14
mov qword [rbp + 0xf8], rcx
mov qword [rbp + 0x100], 0x14
mov qword [rbp + 0x108], rax
mov rdx, qword [rbp + 0xa8]
lea rcx, [rbp + 0xb8]
lea r8, [rbp + 0xe8]
call fcn.14002ef00
jmp 0x140032812
jmp 0x14003273b