Function at 0x140055a70
Capabilities:
Query or enumerate registry value

Disassembly:
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xc0
mov rax, qword [0x1400d0128]
xor rax, rsp
mov qword [rsp + 0xb0], rax
mov rax, r9
mov qword [rsp + 0x50], rax
mov r13, r8
mov r12, rdx
mov rbx, rcx
mov qword [rsp + 0x48], rcx
mov rsi, qword [rsp + 0x120]
mov qword [rsp + 0x58], rsi
lea rcx, [rsp + 0x44]
mov qword [rsp + 0x30], rcx
xor edi, edi
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rdi
lea r9d, [rdi + 2]
mov r8, rax
mov rdx, r13
mov rcx, qword [r12]
call qword [sym.imp.ADVAPI32.dll_RegGetValueW]
lea r15, section..data
lea r14, [0x1400d0020]
test eax, eax
je 0x140055b0d
mov dword [rsp + 0x60], eax
mov qword [rsp + 0x68], r15
movups xmm0, xmmword [rsp + 0x60]
movups xmmword [rsi], xmm0
mov edx, edi
mov rcx, qword [rsi + 8]
jmp 0x140055b1a
mov dword [rsi], edi
mov qword [rsi + 8], r14
mov edx, dword [rsp + 0x44]
mov rcx, r14
mov rax, qword [0x1400d0028]
cmp qword [rcx + 8], rax
jne 0x140055e9c
cmp dword [rsi], edi
jne 0x140055e9c
test rdx, rdx
je 0x140055e9c
mov qword [rsp + 0x90], rdi
mov qword [rsp + 0xa0], rdi
mov qword [rsp + 0xa8], 7
mov word [rsp + 0x90], di
shr rdx, 1
jne 0x140055b77
mov qword [rsp + 0xa0], rdx
mov word [rsp + rdx*2 + 0x90], di
jmp 0x140055bbd
cmp rdx, 7
ja 0x140055ba2
mov qword [rsp + 0xa0], rdx
movzx eax, di
lea rdi, [rsp + 0x90]
mov rcx, rdx
rep stosw word [rdi], ax
xor edi, edi
mov word [rsp + rdx*2 + 0x90], di
jmp 0x140055bbd
lfence
mov word [rsp + 0x20], di
mov r9, rdx
xor r8d, r8d
lea rcx, [rsp + 0x90]
call fcn.1400025e0
lea rcx, [rsp + 0x90]
cmp qword [rsp + 0xa8], 8
cmovae rcx, qword [rsp + 0x90]
mov rax, qword [rsp + 0xa0]
add rax, rax
mov dword [rsp + 0x40], eax
lea rax, [rsp + 0x40]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rdi
mov r9d, 2
mov r8, qword [rsp + 0x50]
mov rdx, r13
mov rcx, qword [r12]
call qword [sym.imp.ADVAPI32.dll_RegGetValueW]
test eax, eax
je 0x140055c30
mov dword [rsp + 0x70], eax
mov qword [rsp + 0x78], r15
movups xmm0, xmmword [rsp + 0x70]
movups xmmword [rsi], xmm0
mov rdx, rdi
mov r14, qword [rsi + 8]
jmp 0x140055c3a
mov dword [rsi], edi
mov qword [rsi + 8], r14
mov edx, dword [rsp + 0x40]
mov rax, qword [0x1400d0028]
cmp qword [r14 + 8], rax
jne 0x140055dcc
cmp dword [rsi], 0
jne 0x140055dcc
xor r8d, r8d
shr rdx, 1
dec rdx
lea rcx, [rsp + 0x90]
call fcn.140035ae0
mov rax, qword [rsp + 0xa8]
cmp rax, 8
jb 0x140055db0
mov rdi, qword [rsp + 0xa0]
cmp rdi, 8
jae 0x140055cf8
mov rsi, qword [rsp + 0x90]
lea r8, [rdi*2 + 2]
mov rdx, rsi
lea rcx, [rsp + 0x90]
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [rsp + 0xa8]
lea rdx, [rax*2 + 2]
cmp rdx, 0x1000
jb 0x140055cdf
add rdx, 0x27
mov rcx, qword [rsi - 8]
sub rsi, rcx
lea rax, [rsi - 8]
cmp rax, 0x1f
ja 0x140055d94
mov rsi, rcx
mov rcx, rsi
call fcn.14006a280
mov qword [rsp + 0xa8], 7
jmp 0x140055db0
or rdi, 7
movabs rcx, 0x7ffffffffffffffe
cmp rdi, rcx
cmova rdi, rcx
cmp rdi, rax
jae 0x140055db0
lea rcx, [rdi + 1]
movabs rax, 0x7fffffffffffffff
cmp rcx, rax
ja 0x140055ed4
lfence
add rcx, rcx
call fcn.140002100
mov rsi, rax
mov r8, qword [rsp + 0xa0]
lea r8, [r8*2 + 2]
mov rdx, qword [rsp + 0x90]
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [rsp + 0xa8]
lea rdx, [rcx*2 + 2]
mov rcx, qword [rsp + 0x90]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140055d9b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140055d9b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14006a280
mov qword [rsp + 0x90], rsi
mov qword [rsp + 0xa8], rdi
movups xmm0, xmmword [rsp + 0x90]
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rsp + 0xa0]
movups xmmword [rbx + 0x10], xmm1
jmp 0x140055eae
mov qword [rbx], rdi
mov qword [rbx + 0x10], rdi
mov qword [rbx + 0x18], 7
mov word [rbx], di
mov rdx, qword [rsp + 0xa8]
cmp rdx, 8
jb 0x140055e29
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x90]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140055e24
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140055e24
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14006a280
mov qword [rsp + 0xa0], rdi
mov qword [rsp + 0xa8], 7
mov word [rsp + 0x90], di
mov rax, rbx
jmp 0x140055eb1
mov qword [rbx], rdi
mov qword [rbx + 0x10], rdi
mov qword [rbx + 0x18], 7
mov word [rbx], di
mov rax, rbx
mov rcx, qword [rsp + 0xb0]
xor rcx, rsp
call fcn.14006a600
add rsp, 0xc0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
call fcn.140004320
int3