Function at 0x140035d90
Capabilities:
Query or enumerate registry value

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
lea rbp, [rsp - 0x3f]
sub rsp, 0xd0
mov rax, qword [0x140186768]
xor rax, rsp
mov qword [rbp + 0x2f], rax
mov rdi, r9
mov rbx, r8
mov dword [rbp + 0x27], edx
mov rsi, qword [rbp + 0x7f]
cmp qword [r8 + 0x18], 0x10
jb 0x140035dc9
mov rbx, qword [r8]
lea r8, [rbp + 0x27]
lea rdx, [rbp - 0x41]
lea rcx, [0x14018f9e0]
call fcn.140035540
mov rcx, qword [rax]
lea rax, [rbp + 0x1f]
mov qword [rsp + 0x20], rax
mov r9d, 1
xor r8d, r8d
mov rdx, rbx
mov rcx, qword [rcx + 0x18]
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
lea ecx, [rax - 2]
cmp ecx, 1
jbe 0x140035fa0
test eax, eax
jne 0x140036004
mov rdx, rdi
cmp qword [rdi + 0x18], 0x10
jb 0x140035e20
mov rdx, qword [rdi]
lea rax, [rbp + 0x17]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 0
xor r9d, r9d
xor r8d, r8d
mov rcx, qword [rbp + 0x1f]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
mov ebx, eax
test eax, eax
je 0x140035e63
mov rcx, qword [rbp + 0x1f]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea ecx, [rbx - 2]
cmp ecx, 1
ja 0x140035fc7
jmp 0x140035fa0
mov ecx, dword [rbp + 0x17]
inc rcx
call fcn.1400ea110
mov rbx, rax
mov qword [rbp - 0x41], rax
cmp qword [rdi + 0x18], 0x10
jb 0x140035e7f
mov rdi, qword [rdi]
lea rax, [rbp + 0x17]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rbx
xor r9d, r9d
xor r8d, r8d
mov rdx, rdi
mov rcx, qword [rbp + 0x1f]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
mov edi, eax
mov rcx, qword [rbp + 0x1f]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea ecx, [rdi - 2]
cmp ecx, 1
jbe 0x140035f93
test edi, edi
jne 0x140036041
mov qword [rbp - 0x51], 0
mov qword [rbp - 0x49], 0xf
mov byte [rbp - 0x61], dil
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rbx + r8], 0
jne 0x140035ee0
mov rdx, rbx
lea rcx, [rbp - 0x61]
call fcn.140009b00
lea rax, [rbp - 0x61]
cmp rsi, rax
je 0x140035f4a
mov rdx, qword [rsi + 0x18]
cmp rdx, 0x10
jb 0x140035f39
mov rcx, qword [rsi]
inc rdx
cmp rdx, 0x1000
jb 0x140035f34
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140035fc1
mov rcx, r8
call fcn.1400e9ac4
movups xmm0, xmmword [rbp - 0x61]
movups xmmword [rsi], xmm0
movups xmm1, xmmword [rbp - 0x51]
movups xmmword [rsi + 0x10], xmm1
jmp 0x140035f82
mov rdx, qword [rbp - 0x49]
cmp rdx, 0x10
jb 0x140035f82
inc rdx
mov rcx, qword [rbp - 0x61]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140035f7c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140035fc1
call fcn.1400e9ac4
nop
test rbx, rbx
je 0x140035f8f
mov rcx, rbx
call fcn.1400e9ac4
mov al, 1
jmp 0x140035fa2
test rbx, rbx
je 0x140035fa0
mov rcx, rbx
call fcn.1400e9ac4
xor al, al
mov rcx, qword [rbp + 0x2f]
xor rcx, rsp
call fcn.1400e9aa0
mov rbx, qword [rsp + 0xf0]
add rsp, 0xd0
pop rdi
pop rsi
pop rbp
ret
call fcn.1400f88c4
nop
mov edx, ebx
lea rcx, [rbp - 0x29]
call fcn.14000ad50
nop
mov r8, rax
lea rdx, str.Registry_key_value_query_failed._Error_code:
lea rcx, [rbp - 0x61]
call fcn.140009d80
nop
mov rdx, rax
lea rcx, [rbp - 0x41]
call fcn.140033470
lea rdx, [0x140180ab8]
lea rcx, [rbp - 0x41]
call fcn.1400ebc9c
nop
mov edx, eax
lea rcx, [rbp - 0x61]
call fcn.14000ad50
nop
mov r8, rax
lea rdx, str.Error_opening_registry_key._Code:
lea rcx, [rbp - 0x29]
call fcn.140009d80
nop
mov rdx, rax
lea rcx, [rbp - 0x41]
call fcn.140033470
lea rdx, [0x140180ab8]
lea rcx, [rbp - 0x41]
call fcn.1400ebc9c
nop
mov edx, edi
lea rcx, [rbp - 0x29]
call fcn.14000ad50
nop
mov r8, rax
lea rdx, str.Registry_key_value_query_failed._Error_code:
lea rcx, [rbp - 9]
call fcn.140009d80
nop
mov rdx, rax
lea rcx, [rbp - 0x61]
call fcn.140033470
lea rdx, [0x140180ab8]
lea rcx, [rbp - 0x61]
call fcn.1400ebc9c
int3