Function at 0x7ff65c599090
Capabilities:
Query or enumerate registry value
Set registry value

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0x90
mov byte [rbp + 0x67], 1
xorps xmm0, xmm0
movups xmmword [rbp - 0x21], xmm0
xor r13d, r13d
mov qword [rbp - 0x11], r13
mov qword [rbp - 9], 0xf
mov byte [rbp - 0x21], r13b
mov dword [rbp + 0x6f], 0x14
lea rax, [rbp + 0x77]
mov qword [rsp + 0x20], rax
mov r9d, 0x20006
xor r8d, r8d
lea rdx, str.SYSTEMCurrentControlSetControlClass4D36E972_E325_11CE_BFC1_08002BE10318
mov rcx, 0xffffffff80000002
call qword [sym.imp.advapi32.dll_RegOpenKeyExA]
test eax, eax
jne 0x7ff65c59937e
nop
mov r8d, r13d
lea rdx, str._03d
lea rcx, [rbp - 0x39]
call fcn.7ff65c599560
lea rax, [rbp + 0x77]
mov qword [rsp + 0x20], rax
mov r9d, 0x20006
xor r8d, r8d
lea rdx, [rbp - 0x39]
mov rcx, qword [rbp + 0x77]
call qword [sym.imp.advapi32.dll_RegOpenKeyExA]
test eax, eax
jne 0x7ff65c59936c
mov dword [rbp + 0x6f], 0x14
lea rax, [rbp + 0x6f]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x39]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea rdx, str.DriverDesc
mov rcx, qword [rbp + 0x77]
call qword [sym.imp.advapi32.dll_RegQueryValueExA]
test eax, eax
jne 0x7ff65c599362
lea rax, [rbp - 0x39]
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rax + r8], 0
jne 0x7ff65c599180
lea rdx, [rbp - 0x39]
lea rcx, [rbp - 0x21]
call fcn.7ff65c4fae20
lea rdi, [rbp - 0x21]
mov r15, qword [rbp - 0x21]
mov r12, qword [rbp - 9]
cmp r12, 0xf
cmova rdi, r15
lea rsi, [rbp - 0x21]
cmova rsi, r15
mov r14, qword [rbp - 0x11]
add rsi, r14
lea rbx, [rbp - 0x21]
cmp r12, 0xf
cmova rbx, r15
cmp rbx, rsi
je 0x7ff65c5991f0
sub rdi, rbx
nop
movsx ecx, byte [rbx]
call qword [sym.imp.ucrtbase.dll_tolower]
mov byte [rdi + rbx], al
inc rbx
cmp rbx, rsi
jne 0x7ff65c5991d0
mov r12, qword [rbp - 9]
mov r14, qword [rbp - 0x11]
mov r15, qword [rbp - 0x21]
lea rbx, [rbp - 0x21]
cmp r12, 0xf
cmova rbx, r15
cmp r14, 8
jb 0x7ff65c599256
lea rdi, [r14 + rbx]
lea r8, [rdi - 7]
sub r8, rbx
mov edx, 0x65
mov rcx, rbx
call sub.vcruntime140.dll_memchr
test rax, rax
je 0x7ff65c599256
nop
movabs rcx, 0x74656e7265687465
cmp qword [rax], rcx
je 0x7ff65c59924d
inc rax
lea r8, [rdi - 7]
sub r8, rax
mov edx, 0x65
mov rcx, rax
call sub.vcruntime140.dll_memchr
test rax, rax
jne 0x7ff65c599220
jmp 0x7ff65c599256
sub rax, rbx
cmp rax, 0xffffffffffffffff
jne 0x7ff65c5992c6
lea rbx, [rbp - 0x21]
cmp r12, 0xf
cmova rbx, r15
cmp r14, 4
jb 0x7ff65c599362
lea rdi, [rbx + r14]
lea r8, [rdi - 3]
sub r8, rbx
mov edx, 0x77
mov rcx, rbx
call sub.vcruntime140.dll_memchr
test rax, rax
je 0x7ff65c599362
nop dword [rax]
cmp dword [rax], 0x69666977
je 0x7ff65c5992b9
inc rax
lea r8, [rdi - 3]
sub r8, rax
mov edx, 0x77
mov rcx, rax
call sub.vcruntime140.dll_memchr
test rax, rax
jne 0x7ff65c599290
jmp 0x7ff65c599362
sub rax, rbx
cmp rax, 0xffffffffffffffff
je 0x7ff65c599362
lea rax, [rbp + 0x6f]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x39]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea rdx, str.NetworkAddress
mov rcx, qword [rbp + 0x77]
call qword [sym.imp.advapi32.dll_RegQueryValueExA]
test eax, eax
jne 0x7ff65c59930f
lea rcx, [rbp - 0x39]
mov rax, 0xffffffffffffffff
nop
inc rax
cmp byte [rcx + rax], 0
jne 0x7ff65c599300
cmp rax, 0xc
je 0x7ff65c599362
lea rcx, [rbp - 1]
call fcn.7ff65c5970b0
cmp qword [rax + 0x18], 0xf
jbe 0x7ff65c599322
mov rax, qword [rax]
mov rdx, rax
lea rcx, [rbp - 0x39]
call fcn.7ff65c599560
lea rcx, [rbp - 1]
call fcn.7ff65c4f3490
mov dword [rsp + 0x28], 0xd
lea rax, [rbp - 0x39]
mov qword [rsp + 0x20], rax
mov r9d, 1
xor r8d, r8d
lea rdx, str.NetworkAddress
mov rcx, qword [rbp + 0x77]
call qword [sym.imp.advapi32.dll_RegSetValueExA]
mov rcx, qword [rbp + 0x77]
call qword [sym.imp.advapi32.dll_RegCloseKey]
inc r13d
cmp r13d, 0xff
jl 0x7ff65c599100
jmp 0x7ff65c599382
mov byte [rbp + 0x67], 0
lea rcx, [rbp - 0x21]
call fcn.7ff65c4f3490
movzx eax, byte [rbp + 0x67]
mov rbx, qword [rsp + 0xe8]
add rsp, 0x90
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret