Function at 0x100009180
Capabilities:
Query or enumerate registry value
Set registry value

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x8d0
mov rax, qword [0x10007f258]
xor rax, rsp
mov qword [rsp + 0x8c0], rax
xor r14d, r14d
mov rbx, rcx
mov esi, 0x208
mov r15d, 1
cmp edx, r14d
jne 0x100018843
lea rcx, [rsp + 0xa2]
xor edx, edx
mov r8d, 0x40e
mov word [rsp + 0xa0], r14w
call sub.msvcrt.dll_memset
mov dword [rsp + 0x48], esi
mov r13d, r14d
mov ebp, r14d
cmp qword [0x100080ab8], r14
jne 0x100018917
cmp dword [rbx + 0x28], r14d
je 0x100012d2f
lea rsi, [rbx + 0x446]
jmp 0x100009213
cmp rsi, r14
je 0x100009275
lea r12, [rbx + 0x446]
or rdi, 0xffffffffffffffff
cmp r12, r14
je 0x100012e75
mov r9d, edi
mov r8, r12
mov edx, r15d
mov ecx, 0x7f
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_CompareStringW]
cmp eax, 2
jne 0x100012e75
cmp r13d, r14d
jne 0x100012d42
cmp dword [rbx + 0x28], r14d
je 0x100012d42
mov rcx, qword [0x100080ab8]
cmp rcx, r14
jne 0x100018988
mov rcx, qword [rsp + 0x8c0]
xor rcx, rsp
call fcn.1000010b0
lea r11, [rsp + 0x8d0]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
cmp dword [rbx + 0x2c], r14d
je 0x100009275
lea rsi, [rbx + 0x34]
jmp 0x100009213
mov rcx, qword [rbx + 8]
mov eax, r14d
cmp ebp, r14d
setne al
lea rdx, [0x100077620]
mov r9d, 4
mov dword [rsp + 0x40], eax
lea rax, [rsp + 0x40]
xor r8d, r8d
mov dword [rsp + 0x28], 4
mov qword [rsp + 0x20], rax
call qword [sym.imp.API_MS_Win_Core_LocalRegistry_L1_1_0.dll_RegSetValueExW]
nop
jmp 0x100009265
xor eax, eax
mov rcx, rdi
mov rdi, rsi
repne scasw ax, word [rdi]
lea rdx, [0x100075890]
mov r9d, r15d
not rcx
xor r8d, r8d
sub rcx, r15
lea eax, [rcx + rcx + 2]
mov rcx, qword [rbx + 8]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rsi
call qword [sym.imp.API_MS_Win_Core_LocalRegistry_L1_1_0.dll_RegSetValueExW]
xor r8d, r8d
lea r9, str.windows
mov ecx, 0xffff
lea edx, [r8 + 0x1a]
call qword [sym.imp.USER32.dll_SendNotifyMessageW]
mov rcx, qword [0x10007f250]
lea rax, [0x10007f250]
cmp rcx, rax
je 0x100012ee0
test byte [rcx + 0x1c], 2
jne 0x10001895d
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [0x100077608]
mov qword [rsp + 0x60], rdi
repne scasw ax, word [rdi]
mov dword [rsp + 0x6c], r15d
not rcx
sub rcx, r15
lea eax, [rcx + rcx + 2]
mov dword [rsp + 0x68], eax
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp rsi, r14
mov dword [rsp + 0x80], eax
lea rdx, [0x100077600]
mov rdi, rsi
mov rax, rdx
mov dword [rsp + 0x88], 4
mov dword [rsp + 0x8c], r14d
cmovne rax, rsi
or r8, 0xffffffffffffffff
mov dword [rsp + 0x9c], r15d
mov qword [rsp + 0x90], rax
xor eax, eax
mov rcx, r8
repne scasw ax, word [rdi]
not rcx
sub rcx, r15
cmp r12, r14
cmovne rdx, r12
lea eax, [rcx + rcx + 2]
mov dword [rsp + 0x98], eax
mov qword [rsp + 0x50], rdx
cmp r12, r14
je 0x10001897b
xor eax, eax
mov rcx, r8
mov rdi, r12
repne scasw ax, word [rdi]
not rcx
sub rcx, r15
lea eax, [rcx + rcx + 2]
mov dword [rsp + 0x58], eax
jmp 0x100012f99
lea rax, [rsp + 0x60]
mov qword [rsp + 0x30], r14
lea r9, [rsp + 0x90]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x80]
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x70]
lea rcx, [0x1000775f0]
mov dword [rsp + 0x5c], r15d
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x70], r15d
mov dword [rsp + 0x78], 4
mov dword [rsp + 0x7c], r14d
call fcn.100013000
nop
jmp 0x100009252
lea rdi, [rcx + 0x446]
mov rcx, qword [rcx + 8]
lea rax, [rsp + 0x44]
mov qword [rsp + 0x28], rax
lea rdx, [0x100075890]
mov ebp, 0x410
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x20], rdi
mov dword [rsp + 0x44], ebp
call qword [sym.imp.API_MS_Win_Core_LocalRegistry_L1_1_0.dll_RegQueryValueExW]
cmp eax, r14d
jne 0x10001888d
cmp word [rdi], r14w
je 0x10001888d
mov dword [rbx + 0x28], r15d
jmp 0x1000091cb
mov dword [rbx + 0x28], r14d
cmp dword [rbx + 0x2c], r14d
jne 0x1000091cb
mov rcx, qword [rbx + 0x10]
lea rax, [rsp + 0x40]
lea r9, [rsp + 0x44]
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x4b0]
lea r8, [rbx + 0x34]
mov qword [rsp + 0x30], rax
xor edx, edx
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], r14
mov dword [rsp + 0x40], ebp
mov dword [rsp + 0x44], esi
call qword [sym.imp.API_MS_Win_Core_LocalRegistry_L1_1_0.dll_RegEnumValueW]
cmp eax, r14d
jne 0x10001890e
lea r8, [0x10007aa7c]
lea rcx, [rbx + 0x34]
mov rdx, rsi
call fcn.100005bbc
lea r8, [rsp + 0x4b0]
lea rcx, [rbx + 0x34]
mov rdx, rsi
call fcn.100005bbc
mov dword [rbx + 0x2c], r15d
jmp 0x1000091cb
mov dword [rbx + 0x2c], r14d
jmp 0x1000091cb
mov rcx, qword [rbx]
call fcn.10004380c
cmp eax, r14d
je 0x100009200
mov rcx, qword [rbx]
lea r8, [rsp + 0x48]
lea rdx, [rsp + 0xa0]
mov r13d, r15d
call fcn.100043cac
cmp eax, r14d
setge bpl
cmp ebp, r14d
je 0x100009200
lea rsi, [rsp + 0xa0]
jmp 0x100009218
mov rcx, qword [rcx + 0x10]
lea r8, [0x100079c80]
mov edx, 0xa
mov r9, rsi
call fcn.100034584
nop
jmp 0x100012ee0
mov dword [rsp + 0x58], 4
jmp 0x100012f99
mov rdx, qword [rbx]
xor r8d, r8d
call fcn.100043f7c
nop
jmp 0x100009275