Function at 0x100009188
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 0x100012d43
lea rsi, [rbx + 0x446]
jmp 0x10000921b
cmp rsi, r14
je 0x10000927d
lea r12, [rbx + 0x446]
or rdi, 0xffffffffffffffff
cmp r12, r14
je 0x100012e89
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 0x100012e89
cmp r13d, r14d
jne 0x100012d56
cmp dword [rbx + 0x28], r14d
je 0x100012d56
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 0x10000927d
lea rsi, [rbx + 0x34]
jmp 0x10000921b
mov rcx, qword [rbx + 8]
mov eax, r14d
cmp ebp, r14d
setne al
lea rdx, [0x100077610]
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 0x10000926d
xor eax, eax
mov rcx, rdi
mov rdi, rsi
repne scasw ax, word [rdi]
lea rdx, [0x100075880]
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 0x100012ef4
test byte [rcx + 0x1c], 2
jne 0x10001895d
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [0x1000775f8]
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, [0x1000775f0]
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 0x100012fad
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, [0x1000775e0]
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.100013010
nop
jmp 0x10000925a
lea rdi, [rcx + 0x446]
mov rcx, qword [rcx + 8]
lea rax, [rsp + 0x44]
mov qword [rsp + 0x28], rax
lea rdx, [0x100075880]
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 0x1000091d3
mov dword [rbx + 0x28], r14d
cmp dword [rbx + 0x2c], r14d
jne 0x1000091d3
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, [0x10007aa8c]
lea rcx, [rbx + 0x34]
mov rdx, rsi
call fcn.100005bcc
lea r8, [rsp + 0x4b0]
lea rcx, [rbx + 0x34]
mov rdx, rsi
call fcn.100005bcc
mov dword [rbx + 0x2c], r15d
jmp 0x1000091d3
mov dword [rbx + 0x2c], r14d
jmp 0x1000091d3
mov rcx, qword [rbx]
call fcn.100043820
cmp eax, r14d
je 0x100009208
mov rcx, qword [rbx]
lea r8, [rsp + 0x48]
lea rdx, [rsp + 0xa0]
mov r13d, r15d
call fcn.100043cc0
cmp eax, r14d
setge bpl
cmp ebp, r14d
je 0x100009208
lea rsi, [rsp + 0xa0]
jmp 0x100009220
mov rcx, qword [rcx + 0x10]
lea r8, [0x100079c70]
mov edx, 0xa
mov r9, rsi
call fcn.1000345b4
nop
jmp 0x100012ef4
mov dword [rsp + 0x58], 4
jmp 0x100012fad
mov rdx, qword [rbx]
xor r8d, r8d
call fcn.100043f90
nop
jmp 0x10000927d