Function at 0x14003b070
Capabilities:
Query or enumerate registry value

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x330]
sub rsp, 0x430
mov qword [rbp - 0x58], 0xfffffffffffffffe
mov qword [rsp + 0x488], rbx
mov rax, qword [0x1402f8c60]
xor rax, rsp
mov qword [rbp + 0x320], rax
mov r15, r8
mov r13, rdx
mov rbx, rcx
mov qword [rsp + 0x70], rcx
lea r8, str.GetDefaultRegValue
mov qword [rsp + 0x78], r8
lea r14, str.c:users_scddocumentsmyworkproject__dynabooksystemdriverdsd_fordnbk0001_dev_bcmcentennial_rs5dynabookecoservice_tpowersaverstaticlib_tpowersaver.cpp
mov qword [rbp - 0x80], r14
mov dword [rbp - 0x78], 0x439
lea rsi, str.__GetDefaultRegValue_
mov qword [rbp - 0x70], rsi
lea r12, [0x1402a214c]
mov qword [rbp - 0x68], r12
mov dword [rbp - 0x60], 3
lea rdx, str.ENTER__s
lea rcx, [rbp - 0x80]
call fcn.140008d50
nop
test rbx, rbx
jne 0x14003b131
mov dword [rbp - 0x48], 0x43c
mov edi, 0x80004003
mov qword [rbp - 0x50], r14
mov qword [rbp - 0x40], rsi
mov qword [rbp - 0x38], r12
xor esi, esi
mov dword [rbp - 0x30], esi
lea rcx, [rbp - 0x50]
jmp 0x14003b473
test r13, r13
jne 0x14003b13f
mov dword [rbp - 0x48], 0x43d
jmp 0x14003b112
test r15, r15
jne 0x14003b14d
mov dword [rbp - 0x48], 0x43e
jmp 0x14003b112
xor esi, esi
mov dword [rsp + 0x30], esi
lea rax, [0x14023e520]
mov qword [rbp - 0x50], rax
lea rax, [0x14023e4c0]
mov qword [rbp - 0x48], rax
lea rax, [0x14023e450]
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x28], r15
lea rax, [r15 + 8]
mov qword [rbp - 0x20], rax
lea rax, [r15 + 0x10]
mov qword [rbp - 0x18], rax
lea r12, [r15 + 4]
mov qword [rbp - 0x10], r12
lea rax, [r15 + 0xc]
mov qword [rbp - 8], rax
lea rax, [r15 + 0x14]
mov qword [rbp], rax
mov qword [rsp + 0x60], rsi
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x110]
call fcn.1401f5d40
lea rcx, [rsp + 0x30]
call fcn.14003f540
cmp dword [rsp + 0x30], 3
jne 0x14003b1ff
mov rax, r13
lea r8, str.9C517964_0DEF_4C9E_B245_63E57DD1E1A6
sub r8, r13
nop word [rax + rax]
movzx edx, word [rax]
movzx ecx, word [rax + r8]
sub edx, ecx
jne 0x14003b1f4
add rax, 2
test ecx, ecx
jne 0x14003b1e0
test edx, edx
lea r8, str.DefaultValue2
je 0x14003b206
lea r8, str.DefaultValue
lea rdx, [0x1402a85d4]
lea rcx, [rbp + 0x110]
call fcn.14003ec20
mov qword [rsp + 0x38], r14
mov dword [rsp + 0x40], 0x466
lea rax, str.__GetDefaultRegValue_
mov qword [rsp + 0x48], rax
lea rax, [0x1402a214c]
mov qword [rsp + 0x50], rax
mov dword [rsp + 0x58], 3
lea r8, [rbp + 0x110]
lea rdx, str.szDefaultKeyReg:__s
lea rcx, [rsp + 0x38]
call fcn.140008d50
mov r14d, esi
mov rbx, rsi
nop dword [rax]
nop dword [rax + rax]
xor eax, eax
mov qword [rbp + 0x10], rax
mov qword [rbp + 0x18], rax
mov qword [rbp + 0x20], rax
mov qword [rbp + 0x28], rax
mov qword [rbp + 0x30], rax
mov qword [rbp + 0x38], rax
mov qword [rbp + 0x40], rax
mov qword [rbp + 0x48], rax
mov qword [rbp + 0x50], rax
mov word [rbp + 0x58], ax
lea rdx, [rbp + 0x10]
mov rcx, qword [rbp + rbx - 0x50]
call fcn.14003af40
mov edi, eax
test eax, eax
js 0x14003b43e
xor edx, edx
mov r8d, 0xae
lea rcx, [rbp + 0x60]
call fcn.1401f5d40
lea rax, [rbp + 0x10]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x110]
mov r8, r13
lea rdx, str._s_s_s
lea rcx, [rbp + 0x60]
call qword [sym.imp.USER32.dll_wsprintfW]
lea rax, str.c:users_scddocumentsmyworkproject__dynabooksystemdriverdsd_fordnbk0001_dev_bcmcentennial_rs5dynabookecoservice_tpowersaverstaticlib_tpowersaver.cpp
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x40], 0x46f
lea rax, str.__GetDefaultRegValue_
mov qword [rsp + 0x48], rax
lea rax, [0x1402a214c]
mov qword [rsp + 0x50], rax
mov dword [rsp + 0x58], 3
lea r8, [rbp + 0x60]
lea rdx, str.szDefaultKey:__s
lea rcx, [rsp + 0x38]
call fcn.140008d50
mov qword [rsp + 0x60], rsi
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
lea rdx, [rbp + 0x60]
mov rcx, qword [rsp + 0x70]
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
je 0x14003b384
test r14d, r14d
je 0x14003b411
lea eax, [r14 - 1]
cmp eax, 1
ja 0x14003b384
mov rcx, qword [rbp + rbx - 0x28]
mov eax, dword [r15]
mov dword [rcx], eax
mov rcx, qword [rbp + rbx - 0x10]
mov eax, dword [r12]
mov dword [rcx], eax
jmp 0x14003b3fc
mov dword [rsp + 0x30], esi
mov dword [rsp + 0x68], 4
mov dword [rsp + 0x6c], 4
lea rax, [rsp + 0x68]
mov qword [rsp + 0x28], rax
mov rax, qword [rbp + rbx - 0x28]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x30]
xor r8d, r8d
lea rdx, str.ACSettingIndex
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x14003b42f
lea rax, [rsp + 0x6c]
mov qword [rsp + 0x28], rax
mov rax, qword [rbp + rbx - 0x10]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x30]
xor r8d, r8d
lea rdx, str.DCSettingIndex
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x14003b420
inc r14d
add rbx, 8
cmp r14d, 3
jl 0x14003b270
mov edi, esi
jmp 0x14003b482
mov edi, 0x80004005
mov dword [rsp + 0x40], 0x479
jmp 0x14003b446
mov edi, 0x80004005
mov dword [rsp + 0x40], 0x486
jmp 0x14003b446
mov edi, 0x80004005
mov dword [rsp + 0x40], 0x485
jmp 0x14003b446
mov dword [rsp + 0x40], 0x46b
lea rax, str.c:users_scddocumentsmyworkproject__dynabooksystemdriverdsd_fordnbk0001_dev_bcmcentennial_rs5dynabookecoservice_tpowersaverstaticlib_tpowersaver.cpp
mov qword [rsp + 0x38], rax
lea rax, str.__GetDefaultRegValue_
mov qword [rsp + 0x48], rax
lea rax, [0x1402a214c]
lea rcx, [rsp + 0x38]
mov dword [rsp + 0x58], esi
mov qword [rsp + 0x50], rax
mov r8d, edi
lea rdx, str.Error_Code:_0x_x
call fcn.140008d50
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je 0x14003b493
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
nop
mov r8, qword [rsp + 0x78]
lea rdx, str.LEAVE__s
lea rcx, [rbp - 0x80]
call fcn.140008d50
mov eax, edi
mov rcx, qword [rbp + 0x320]
xor rcx, rsp
call fcn.140072680
mov rbx, qword [rsp + 0x488]
add rsp, 0x430
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret