Function at 0x140007730
Capabilities:
Check os version
Query or enumerate registry value
Set registry value

Disassembly:
mov rax, rsp
push rbp
push r14
push r15
lea rbp, [rax - 0x368]
sub rsp, 0x450
mov qword [rbp - 0x78], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov rax, qword [0x1400372d0]
xor rax, rsp
mov qword [rbp + 0x340], rax
mov r14, rcx
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x68], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x78], xmm1
xor r15d, r15d
mov edi, r15d
mov qword [rbp - 0x58], r15
mov word [rbp + 0x130], r15w
xor edx, edx
mov r8d, 0x206
lea rcx, [rbp + 0x132]
call fcn.140012a20
mov qword [rbp - 0x70], r15
mov r8, r14
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400118d8
lea r8, [rbp - 0x58]
lea rdx, [0x14002849c]
lea rcx, [rbp + 0x130]
call fcn.140011c0c
test rax, rax
je 0x140007807
mov ebx, r15d
nop dword [rax]
cmp rbx, 4
jge 0x140007807
mov qword [rsp + rbx*8 + 0x68], rax
inc edi
inc rbx
lea r8, [rbp - 0x58]
lea rdx, [0x14002849c]
xor ecx, ecx
call fcn.140011c0c
test rax, rax
jne 0x1400077e0
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitialize]
mov qword [rbp - 0x30], r15
test eax, eax
js 0x140007876
lea rax, [rbp - 0x68]
mov qword [rsp + 0x20], rax
lea r9, [0x140026810]
xor edx, edx
lea r8d, [rdx + 0x17]
lea rcx, [0x1400267f0]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x140007872
mov rcx, qword [rbp - 0x68]
call qword [sym.imp.ole32.dll_OleRun]
mov ebx, eax
test eax, eax
js 0x140007864
mov rcx, qword [rbp - 0x68]
mov rax, qword [rcx]
lea r8, [rbp - 0x30]
lea rdx, [0x140026a80]
call qword [rax]
mov ebx, eax
mov rcx, qword [rbp - 0x68]
mov rax, qword [rcx]
call qword [rax + 0x10]
test ebx, ebx
jns 0x140007876
mov qword [rbp - 0x30], r15
mov esi, r15d
mov ebx, r15d
mov byte [rbp + 0x110], bl
xor eax, eax
mov qword [rbp + 0x111], rax
mov qword [rbp + 0x119], rax
mov qword [rbp + 0x121], rax
mov byte [rbp + 0x129], al
lea rcx, [rbp - 0x20]
call fcn.140011fec
lea r8, [rbp - 0x20]
mov edx, 0x1a
lea rcx, [rbp + 0x110]
call fcn.140011f48
lea r8, [0x1400284a4]
lea rdx, str.C:IntelLogsIntelProfileLog.txt
lea rcx, [rbp - 0x70]
call fcn.140011ed0
movsxd rdi, edi
lea rdx, str._import
mov rcx, r14
call fcn.140011a10
test rax, rax
je 0x140007a00
mov r8, r15
test rdi, rdi
jle 0x140007938
lea r9, str.import
nop
mov rcx, r15
mov rdx, qword [rsp + r8*8 + 0x68]
nop dword [rax + rax]
movzx eax, word [rdx + rcx*2]
inc rcx
cmp ax, word [r9 + rcx*2 - 2]
jne 0x140007927
cmp rcx, 7
je 0x140007933
jmp 0x140007910
inc ebx
inc r8
cmp r8, rdi
jge 0x140007938
jmp 0x140007900
mov esi, 1
mov rcx, qword [rbp - 0x30]
test rcx, rcx
sete al
test al, al
jne 0x140007a00
cmp esi, 1
jne 0x140007a00
test rcx, rcx
jne 0x140007963
mov ecx, 0x80004003
call fcn.140010c70
int3
mov rax, qword [rcx]
movsxd rdx, ebx
mov dword [rsp + 0x38], 4
lea r8, [rbp - 0x28]
mov qword [rsp + 0x30], r8
lea r8, [rbp - 0x50]
mov qword [rsp + 0x28], r8
lea r8, [rbp - 0x38]
mov qword [rsp + 0x20], r8
lea r9, [rbp - 0x48]
lea r8, [rbp - 0x40]
mov rdx, qword [rsp + rdx*8 + 0x70]
call qword [rax + 0x3a0]
mov rcx, qword [rbp - 0x70]
test rcx, rcx
je 0x140007a00
lea r8, [rbp + 0x110]
lea rdx, [0x1400284e0]
call fcn.140011f24
mov ecx, dword [rbp - 0x28]
test ecx, ecx
je 0x1400079e9
dec ecx
je 0x1400079e0
dec ecx
je 0x1400079d7
dec ecx
jne 0x140007a00
lea r8, str.Import_operation_is_SUCCEESS
jmp 0x1400079f0
lea r8, str.Import_operation_is_failed_with_FAIL_INVALID_FILE_FORMAT
jmp 0x1400079f0
lea r8, str.Import_operation_is_failed_with_FAIL_MAXIMUM_PROFILE_LIMIT_EXCEEDDED
jmp 0x1400079f0
lea r8, str.Import_operation_is_failed_with_UNKONWN_RESULT
lea rdx, str._s__n
mov rcx, qword [rbp - 0x70]
call fcn.140011ccc
lea rdx, str._profile
mov rcx, r14
call fcn.140011a10
test rax, rax
je 0x140007cf3
mov r9d, r15d
mov esi, r15d
mov r8, r15
test rdi, rdi
jle 0x140007a69
lea r10, str.profile
nop dword [rax]
mov rcx, r15
mov rdx, qword [rsp + r8*8 + 0x68]
nop dword [rax + rax]
movzx eax, word [rdx + rcx*2]
inc rcx
cmp ax, word [r10 + rcx*2 - 2]
jne 0x140007a57
cmp rcx, 8
je 0x140007a63
jmp 0x140007a40
inc esi
inc r8
cmp r8, rdi
jge 0x140007a69
jmp 0x140007a30
mov r9d, 1
cmp qword [rbp - 0x30], 0
sete al
test al, al
jne 0x140007cf3
cmp r9d, 1
jne 0x140007cf3
xor eax, eax
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], rax
mov rbx, r15
mov qword [rsp + 0x50], rbx
mov dword [rsp + 0x58], r15d
mov qword [rsp + 0x60], r15
mov dword [rbp - 0x28], r15d
mov qword [rbp - 0x68], r15
lea rax, [rbp - 0x60]
mov qword [rsp + 0x40], rax
lea rax, [rbp - 0x68]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], 0x20019
mov dword [rsp + 0x20], r15d
xor r9d, r9d
xor r8d, r8d
lea rdx, str.SOFTWAREIntelDisplayigfxcui_
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
test eax, eax
jne 0x140007b44
mov rbx, qword [rbp - 0x68]
mov qword [rsp + 0x50], rbx
mov dword [rbp - 0x60], 4
lea rax, [rbp - 0x60]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x28]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x68]
xor r8d, r8d
lea rdx, str.Inst
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test rbx, rbx
je 0x140007b3f
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rbx, r15
mov qword [rsp + 0x50], rbx
mov dword [rsp + 0x58], r15d
xor edx, edx
mov r8d, VarUI4FromDisp
lea rcx, [rbp - 0xc]
call fcn.140012a20
mov dword [rbp - 0x10], VarUI4FromDisp
lea rcx, [rbp - 0x10]
call qword [sym.imp.KERNEL32.dll_GetVersionExW]
mov ecx, dword [rbp - 0x28]
cmp eax, 1
jne 0x140007b81
cmp dword [rbp - 0xc], 6
jne 0x140007b81
cmp dword [rbp - 8], eax
jne 0x140007b81
cmp ecx, 2
mov edi, r15d
jne 0x140007b86
mov edi, 1
cmp ecx, 1
jne 0x140007b96
mov ecx, 0x7d0
call qword [sym.imp.KERNEL32.dll_Sleep]
xor ecx, ecx
call fcn.140008220
test al, al
je 0x140007c27
test edi, edi
je 0x140007c27
mov rcx, qword [rbp - 0x30]
test rcx, rcx
jne 0x140007bbd
mov ecx, 0x80004003
call fcn.140010c70
int3
mov rax, qword [rcx]
movsxd rdx, esi
mov r8d, 1
mov rdx, qword [rsp + rdx*8 + 0x70]
call qword [rax + 0x3c0]
mov edi, eax
mov rcx, qword [rbp - 0x70]
test rcx, rcx
je 0x140007ce5
lea r8, [rbp + 0x110]
lea rdx, [0x1400284e0]
call fcn.140011f24
lea rdx, str._s__n
mov rcx, qword [rbp - 0x70]
test edi, edi
jne 0x140007c16
lea r8, str.Profile_Apply_operation_is_SUCCEESS
call fcn.140011ccc
jmp 0x140007ce5
lea r8, str.Profile_Apply_operation_is_FAILED
call fcn.140011ccc
jmp 0x140007ce5
mov qword [rbp - 0x60], r15
lea rax, [rbp - 0x68]
mov qword [rsp + 0x40], rax
lea rax, [rbp - 0x60]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], 0x2001f
mov dword [rsp + 0x20], r15d
xor r9d, r9d
xor r8d, r8d
lea rdx, str.SoftwareIntelDisplayigfxcuiHotKeys
mov rcx, 0xffffffff80000001
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
test eax, eax
jne 0x140007ce5
mov eax, r15d
test rbx, rbx
je 0x140007c7e
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rbx, qword [rbp - 0x60]
test eax, eax
jne 0x140007ce5
movsxd rax, esi
mov rcx, qword [rsp + rax*8 + 0x70]
mov eax, r15d
test rcx, rcx
setne al
test eax, eax
je 0x140007cd4
or rax, 0xffffffffffffffff
nop
lea rax, [rax + 1]
cmp word [rcx + rax*2], 0
jne 0x140007ca0
lea eax, [rax*2 + 2]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rcx
mov r9d, 1
xor r8d, r8d
lea rdx, str.ProfileCMDLineArgs
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
test rbx, rbx
je 0x140007ce5
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rbx, r15
test rbx, rbx
je 0x140007cf3
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rcx, qword [rbp - 0x70]
test rcx, rcx
je 0x140007d01
call fcn.140011d90
cmp qword [rbp - 0x30], 0
jne 0x140007d13
mov ecx, 0x80004003
call fcn.140010c70
int3
mov rcx, qword [rbp - 0x30]
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [rbp - 0x30], r15
call qword [sym.imp.ole32.dll_CoUninitialize]
nop
mov rcx, qword [rbp - 0x30]
test rcx, rcx
je 0x140007d37
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [rbp + 0x340]
xor rcx, rsp
call fcn.140012910
lea r11, [rsp + 0x450]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret