Function at 0x1400011c0
Capabilities:
Query or enumerate registry value

Disassembly:
mov r11, rsp
push rdi
sub rsp, 0x2e0
mov qword [rsp + 0x60], 0xfffffffffffffffe
mov qword [r11 + 8], rbx
mov qword [r11 + 0x10], rbp
mov qword [r11 + 0x18], rsi
mov rax, qword [0x1400141f0]
xor rax, rsp
mov qword [rsp + 0x2d0], rax
lea rcx, [r11 - 0x258]
call fcn.140004040
nop
mov qword [rsp + 0x88], 7
xor esi, esi
mov qword [rsp + 0x80], rsi
mov word [rsp + 0x70], si
xor r8d, r8d
lea edx, [rsi + 0x1c]
lea rcx, [rsp + 0x68]
call fcn.140003be0
lea rcx, [rsp + 0x70]
mov rdx, qword [rsp + 0x88]
cmp rdx, 8
cmovae rcx, qword [rsp + 0x70]
add rdx, rdx
lea r9d, [rsi + 0x38]
lea r8, str.SYSTEMControlSet001Control
call fcn.1400055d0
mov qword [rsp + 0x80], 0x1c
lea rax, [rsp + 0x70]
cmp qword [rsp + 0x88], 8
cmovae rax, qword [rsp + 0x70]
mov word [rax + 0x38], si
mov qword [rsp + 0x58], 7
mov qword [rsp + 0x50], rsi
mov word [rsp + 0x40], si
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rsp + 0x68]
lea rcx, [rsp + 0x38]
call fcn.140002dc0
lea r8, [rsp + 0x38]
mov rdx, 0xffffffff80000002
lea rcx, [rsp + 0x90]
call fcn.140004770
test al, al
jne 0x14000130d
cmp qword [rsp + 0x88], 8
jb 0x1400012d3
mov rcx, qword [rsp + 0x70]
call fcn.1400056a0
mov qword [rsp + 0x88], 7
mov qword [rsp + 0x80], rsi
mov word [rsp + 0x70], 0
cmp qword [rsp + 0x2c8], 8
jb 0x140001306
mov rcx, qword [rsp + 0x2b0]
call fcn.1400056a0
xor al, al
jmp 0x140001637
mov dword [rsp + 0x30], esi
mov qword [rsp + 0x58], 7
mov qword [rsp + 0x50], rsi
mov word [rsp + 0x40], 0
mov r8d, 5
lea rdx, str.Tools
lea rcx, [rsp + 0x38]
call fcn.140003120
mov edx, dword [rsp + 0x30]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_IsBadWritePtr]
test eax, eax
je 0x140001361
cmp qword [rsp + 0x58], 8
jb 0x1400013d1
mov rcx, qword [rsp + 0x40]
call fcn.1400056a0
jmp 0x1400013d1
mov dword [rsp + 0x34], 3
lea rdx, [rsp + 0x40]
cmp qword [rsp + 0x58], 8
cmovae rdx, qword [rsp + 0x40]
lea rax, [rsp + 0x30]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rsi
lea r9, [rsp + 0x34]
xor r8d, r8d
mov rcx, qword [rsp + 0x90]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
je 0x1400013bf
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_SetLastError]
cmp qword [rsp + 0x58], 8
jb 0x1400013d1
mov rcx, qword [rsp + 0x40]
call fcn.1400056a0
jmp 0x1400013d1
cmp qword [rsp + 0x58], 8
jb 0x1400013d1
mov rcx, qword [rsp + 0x40]
call fcn.1400056a0
mov ecx, dword [rsp + 0x30]
call fcn.140005910
mov rbx, rax
test rax, rax
jne 0x1400013ed
lea ecx, [rax + 1]
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x1400013d1
mov qword [rsp + 0x58], 7
mov qword [rsp + 0x50], rsi
mov word [rsp + 0x40], 0
mov r8d, 5
lea rdx, str.Tools
lea rcx, [rsp + 0x38]
call fcn.140003120
mov edx, dword [rsp + 0x30]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_IsBadWritePtr]
test eax, eax
je 0x14000143e
cmp qword [rsp + 0x58], 8
jb 0x14000149e
mov rcx, qword [rsp + 0x40]
call fcn.1400056a0
jmp 0x14000149e
mov dword [rsp + 0x34], 3
lea rdx, [rsp + 0x40]
cmp qword [rsp + 0x58], 8
cmovae rdx, qword [rsp + 0x40]
lea rax, [rsp + 0x30]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x34]
xor r8d, r8d
mov rcx, qword [rsp + 0x90]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
je 0x140001539
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_SetLastError]
cmp qword [rsp + 0x58], 8
jb 0x14000149e
mov rcx, qword [rsp + 0x40]
call fcn.1400056a0
cmp byte [rsp + 0x2a0], 0
je 0x1400014cf
lea r8, [rsp + 0xa0]
mov edx, 4
mov rcx, qword [rsp + 0x90]
call qword [sym.imp.ADVAPI32.dll_RegSetKeySecurity]
test eax, eax
je 0x1400014cf
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rcx, qword [rsp + 0x90]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
test eax, eax
je 0x1400014ea
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_SetLastError]
nop
cmp qword [rsp + 0x88], 8
jb 0x1400014ff
mov rcx, qword [rsp + 0x70]
call fcn.1400056a0
mov qword [rsp + 0x88], 7
mov qword [rsp + 0x80], rsi
mov word [rsp + 0x70], 0
cmp qword [rsp + 0x2c8], 8
jb 0x140001532
mov rcx, qword [rsp + 0x2b0]
call fcn.1400056a0
xor al, al
jmp 0x140001637
cmp qword [rsp + 0x58], 8
jb 0x14000154b
mov rcx, qword [rsp + 0x40]
call fcn.1400056a0
cmp byte [rsp + 0x2a0], 0
je 0x14000157c
lea r8, [rsp + 0xa0]
mov edx, 4
mov rcx, qword [rsp + 0x90]
call qword [sym.imp.ADVAPI32.dll_RegSetKeySecurity]
test eax, eax
je 0x14000157c
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rcx, qword [rsp + 0x90]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
test eax, eax
je 0x140001596
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rdi, rsi
mov ecx, dword [rsp + 0x30]
movabs rbp, 0xcccccccccccccccd
mov rax, rbp
mul rcx
shr rdx, 0xa
je 0x1400015ed
nop
nop
nop
nop
mov rdx, rbx
lea rcx, [0x140016100]
call fcn.140002920
add rdi, 1
add rbx, 0x500
mov ecx, dword [rsp + 0x30]
mov rax, rbp
mul rcx
shr rdx, 0xa
cmp rdi, rdx
jb 0x1400015c0
cmp qword [rsp + 0x88], 8
jb 0x140001602
mov rcx, qword [rsp + 0x70]
call fcn.1400056a0
mov qword [rsp + 0x88], 7
mov qword [rsp + 0x80], rsi
mov word [rsp + 0x70], 0
cmp qword [rsp + 0x2c8], 8
jb 0x140001635
mov rcx, qword [rsp + 0x2b0]
call fcn.1400056a0
mov al, 1
mov rcx, qword [rsp + 0x2d0]
xor rcx, rsp
call fcn.1400056c0
lea r11, [rsp + 0x2e0]
mov rbx, qword [r11 + 0x10]
mov rbp, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rsp, r11
pop rdi
ret