Function at 0x1000090c8
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 [0x100083218]
xor rax, rsp
mov qword [rsp + 0x8c0], rax
xor r14d, r14d
mov rbx, rcx
mov esi, 0x208
mov r15d, 1
cmp edx, r14d
jne 0x100018afc
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 [0x100084a68], r14
jne 0x100018bd0
cmp dword [rbx + 0x28], r14d
je 0x100012b6f
lea rsi, [rbx + 0x446]
jmp 0x10000915b
cmp rsi, r14
je 0x1000091bd
lea r12, [rbx + 0x446]
or rdi, 0xffffffffffffffff
cmp r12, r14
je 0x100012cb5
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 0x100012cb5
cmp r13d, r14d
jne 0x100012b82
cmp dword [rbx + 0x28], r14d
je 0x100012b82
mov rcx, qword [0x100084a68]
cmp rcx, r14
jne 0x100018c41
mov rcx, qword [rsp + 0x8c0]
xor rcx, rsp
call fcn.1000010c0
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 0x1000091bd
lea rsi, [rbx + 0x34]
jmp 0x10000915b
mov rcx, qword [rbx + 8]
mov eax, r14d
cmp ebp, r14d
setne al
lea rdx, [0x10007a800]
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 0x1000091ad
xor eax, eax
mov rcx, rdi
mov rdi, rsi
repne scasw ax, word [rdi]
lea rdx, [0x100078a60]
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 [0x100083210]
lea rax, [0x100083210]
cmp rcx, rax
je 0x100012d20
test byte [rcx + 0x1c], 2
jne 0x100018c16
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [0x10007a7e8]
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, [0x10007a7e0]
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 0x100018c34
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 0x100012dd9
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, [0x10007a7d0]
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.100012e38
nop
jmp 0x10000919a
lea rdi, [rcx + 0x446]
mov rcx, qword [rcx + 8]
lea rax, [rsp + 0x44]
mov qword [rsp + 0x28], rax
lea rdx, [0x100078a60]
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 0x100018b46
cmp word [rdi], r14w
je 0x100018b46
mov dword [rbx + 0x28], r15d
jmp 0x100009113
mov dword [rbx + 0x28], r14d
cmp dword [rbx + 0x2c], r14d
jne 0x100009113
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 0x100018bc7
lea r8, [0x10007e11c]
lea rcx, [rbx + 0x34]
mov rdx, rsi
call fcn.100005af0
lea r8, [rsp + 0x4b0]
lea rcx, [rbx + 0x34]
mov rdx, rsi
call fcn.100005af0
mov dword [rbx + 0x2c], r15d
jmp 0x100009113
mov dword [rbx + 0x2c], r14d
jmp 0x100009113
mov rcx, qword [rbx]
call fcn.10004646c
cmp eax, r14d
je 0x100009148
mov rcx, qword [rbx]
lea r8, [rsp + 0x48]
lea rdx, [rsp + 0xa0]
mov r13d, r15d
call fcn.10004690c
cmp eax, r14d
setge bpl
cmp ebp, r14d
je 0x100009148
lea rsi, [rsp + 0xa0]
jmp 0x100009160
mov rcx, qword [rcx + 0x10]
lea r8, [0x10007d1f0]
mov edx, 0xa
mov r9, rsi
call fcn.100036f5c
nop
jmp 0x100012d20
mov dword [rsp + 0x58], 4
jmp 0x100012dd9
mov rdx, qword [rbx]
xor r8d, r8d
call fcn.100046bdc
nop
jmp 0x1000091bd