Function at 0x14001a8f0
Capabilities:
Query or enumerate registry value

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x50]
sub rsp, 0x150
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
mov rax, qword [0x140293028]
xor rax, rsp
mov qword [rbp + 0x20], rax
mov rdi, rdx
mov qword [rsp + 0x70], rcx
mov qword [rbp - 0x30], rdx
xor edx, edx
mov esi, edx
mov dword [rbp - 0x28], edx
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x20], xmm0
movdqa xmm7, xmmword [0x140259ca0]
movdqu xmmword [rbp - 8], xmm7
mov word [rbp - 0x18], dx
movups xmmword [rbp + 8], xmm0
mov qword [rbp + 8], rdx
mov dword [rbp + 0x10], edx
mov qword [rbp + 0x18], rdx
lea r14, [rcx + 0x10]
mov r13, qword [r14 + 0x10]
movabs rcx, 0x7ffffffffffffffe
mov rax, rcx
sub rax, r13
cmp rax, 8
jb 0x14001ad7f
cmp qword [r14 + 0x18], 8
jb 0x14001a98b
mov r14, qword [r14]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x48], rdx
lea r12, [r13 + 8]
mov ebx, 7
lea r15, [rsp + 0x30]
cmp r12, rbx
jbe 0x14001aa0a
mov rbx, r12
or rbx, 7
cmp rbx, rcx
jbe 0x14001a9be
mov rbx, rcx
jmp 0x14001a9ca
mov eax, 0xa
cmp rbx, rax
cmovb rbx, rax
mov rcx, rbx
add rcx, 1
mov rax, 0xffffffffffffffff
cmovb rcx, rax
movabs rax, 0x7fffffffffffffff
cmp rcx, rax
ja 0x14001ad85
lfence
add rcx, rcx
call fcn.140012d70
mov r15, rax
mov qword [rsp + 0x30], rax
movdqu xmm7, xmmword [rbp - 8]
mov esi, dword [rbp - 0x28]
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x48], rbx
lea rbx, [r13*2]
mov r8, rbx
mov rdx, r14
mov rcx, r15
call fcn.1401a9040
movups xmm0, xmmword [0x14020a5d0]
movups xmmword [rbx + r15], xmm0
xor r14d, r14d
mov word [r15 + r12*2], r14w
lea r8, [rsp + 0x30]
cmp qword [rsp + 0x48], 8
cmovae r8, qword [rsp + 0x30]
mov r9d, 0x20219
mov rdx, qword [rsp + 0x70]
mov rdx, qword [rdx + 8]
lea rcx, [rbp + 8]
call fcn.140018800
test eax, eax
setne bl
mov rdx, qword [rsp + 0x48]
cmp rdx, 8
jb 0x14001aaae
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001aaa9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001ad8b
call fcn.1401853a0
test bl, bl
je 0x14001aadb
mov dword [rdi], esi
mov qword [rdi + 8], r14
movups xmm0, xmmword [rbp - 0x18]
movups xmmword [rdi + 0x10], xmm0
movups xmmword [rdi + 0x20], xmm7
movdqa xmm0, xmmword [0x140259ca0]
movdqu xmmword [rbp - 8], xmm0
mov word [rbp - 0x18], r14w
jmp 0x14001ad2c
mov dword [rbp - 0x48], r14d
mov dword [rbp - 0x44], 4
lea rax, [rbp - 0x44]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x48]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x40]
xor r8d, r8d
lea rdx, str.EventStateLastError
mov rbx, qword [rbp + 8]
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x14001ab22
cmp dword [rbp - 0x40], 4
cmove esi, dword [rbp - 0x48]
mov dword [rbp - 0x28], esi
mov qword [rbp - 0x30], r14
mov dword [rbp - 0x3c], 8
lea rax, [rbp - 0x3c]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x30]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x38]
xor r8d, r8d
lea rdx, str.EventStateLastTime
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x14001ab6c
cmp dword [rbp - 0x38], 0xb
jne 0x14001ab6c
imul rax, qword [rbp - 0x30], 0x2710
mov qword [rbp - 0x20], rax
mov qword [rsp + 0x78], r14
mov qword [rbp - 0x78], r14
mov qword [rbp - 0x70], 7
mov word [rsp + 0x78], r14w
xor r8d, r8d
lea rdx, [0x14020a460]
lea rcx, [rsp + 0x78]
call fcn.14000b550
nop
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x60], r14
mov qword [rsp + 0x68], 7
mov word [rsp + 0x50], r14w
mov r8d, 0x16
lea rdx, str.EventStateLastDeviceId
lea rcx, [rsp + 0x50]
call fcn.14000b550
nop
lea r9, [rsp + 0x78]
lea r8, [rsp + 0x50]
lea rdx, [rbp + 8]
lea rcx, [rbp - 0x68]
call fcn.140022c50
mov rbx, rax
lea rax, [rbp - 0x18]
cmp rax, rbx
je 0x14001ac20
lea rcx, [rbp - 0x18]
call fcn.140010b20
movups xmm6, xmmword [rbx]
movups xmmword [rbp - 0x18], xmm6
movups xmm7, xmmword [rbx + 0x10]
mov qword [rbx + 0x10], r14
mov qword [rbx + 0x18], 7
mov word [rbx], r14w
mov esi, dword [rbp - 0x28]
jmp 0x14001ac24
movups xmm6, xmmword [rbp - 0x18]
mov rdx, qword [rbp - 0x50]
cmp rdx, 8
jb 0x14001ac64
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001ac5f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001ad91
call fcn.1401853a0
mov qword [rbp - 0x58], r14
mov qword [rbp - 0x50], 7
mov word [rbp - 0x68], r14w
mov rdx, qword [rsp + 0x68]
cmp rdx, 8
jb 0x14001acb7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001acb2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001ad97
call fcn.1401853a0
mov qword [rsp + 0x60], r14
mov qword [rsp + 0x68], 7
mov word [rsp + 0x50], r14w
mov rdx, qword [rbp - 0x70]
cmp rdx, 8
jb 0x14001ad08
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001ad03
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001ad79
call fcn.1401853a0
mov dword [rdi], esi
mov rax, qword [rbp - 0x20]
mov qword [rdi + 8], rax
movups xmmword [rdi + 0x10], xmm6
movups xmmword [rdi + 0x20], xmm7
movdqa xmm0, xmmword [0x140259ca0]
movdqu xmmword [rbp - 8], xmm0
mov word [rbp - 0x18], r14w
mov rcx, qword [rbp + 8]
test rcx, rcx
je 0x14001ad3c
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
nop
lea rcx, [rbp - 0x18]
call fcn.140010b20
mov rax, rdi
mov rcx, qword [rbp + 0x20]
xor rcx, rsp
call fcn.140185380
lea r11, [rsp + 0x150]
mov rbx, qword [r11 + 0x50]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.1401b3c00
nop
call fcn.140008810
int3
call fcn.140008770
int3
call fcn.1401b3c00
nop
call fcn.1401b3c00
nop
call fcn.1401b3c00
int3