Function at 0x18000fae0
Capabilities:
Resolve function by parsing pe exports
Set registry value

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x60]
sub rsp, 0x160
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
mov rax, qword [0x18017d2b8]
xor rax, rsp
mov qword [rbp - 0x20], rax
mov qword [rsp + 0x58], r8
mov qword [rsp + 0x70], rdx
mov r12d, ecx
mov dword [rsp + 0x38], ecx
xor r15d, r15d
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x68], 7
mov word [rbp - 0x80], r15w
lea eax, [rcx + 0x5e6]
mov dword [rsp + 0x3c], eax
cmp ecx, eax
jae 0x1800104cd
mov esi, 0x7565
lea ebx, [r15 + 0x2e]
lea edi, [rbx + 0x46]
movsd xmm9, qword [0x18015d548]
movsd xmm10, qword [0x180159cd8]
movsd xmm11, qword [0x18015cfb0]
movsd xmm12, qword [0x18015cd48]
movsd xmm8, qword [rsp + 0x58]
mov r13d, dword [rsp + 0x3c]
movsd xmm7, qword [rsp + 0x58]
mov r14d, 0x50
lea r10, [0x180000000]
movabs r9, 0x7ffffffffffffffe
lea r11d, [r14 + 0x14]
cmp r12d, 0x1e1
ja 0x1800104b4
je 0x1800103d2
mov eax, r12d
sub eax, 0x1c
je 0x180010248
sub eax, 0x97
je 0x18000fe58
sub eax, 0x37
je 0x18000fe40
sub eax, 0x60
je 0x18000fc21
cmp eax, 0x37
jne 0x18001052b
movaps xmm8, xmm7
mulsd xmm8, xmm9
mulsd xmm8, xmm10
jmp 0x18001052b
mov rsi, qword [rbp - 0x70]
mov rcx, qword [rbp - 0x68]
cmp rsi, rcx
jae 0x18000fc53
lea rax, [rsi + 1]
mov qword [rbp - 0x70], rax
lea rax, [rbp - 0x80]
cmp rcx, 8
cmovae rax, qword [rbp - 0x80]
mov dword [rax + rsi*2], 0x64
mov rdi, qword [rbp - 0x80]
jmp 0x18000fd37
mov rax, r9
sub rax, rsi
cmp rax, 1
jb 0x1800105bc
lea r15, [rsi + 1]
mov r14, qword [rbp - 0x68]
mov rbx, r15
or rbx, 7
cmp rbx, r9
jbe 0x18000fc7c
mov rbx, r9
jmp 0x18000fc9d
mov rcx, r14
shr rcx, 1
mov rax, r9
sub rax, rcx
cmp r14, rax
jbe 0x18000fc92
mov rbx, r9
jmp 0x18000fc9d
lea rax, [r14 + rcx]
cmp rbx, rax
cmovb rbx, rax
lea rdx, [rbx + 1]
lea rcx, [rbp - 0x80]
call fcn.1800266f0
mov rdi, rax
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x68], rbx
add rsi, rsi
mov r8, rsi
mov rcx, rax
cmp r14, 8
jb 0x18000fd11
mov rbx, qword [rbp - 0x80]
mov rdx, rbx
call sub.VCRUNTIME140.dll_memcpy
mov dword [rsi + rdi], 0x64
xor r15d, r15d
lea rdx, [r14*2 + 2]
cmp rdx, 0x1000
jb 0x18000fd07
add rdx, 0x27
mov rcx, qword [rbx - 8]
sub rbx, rcx
lea rax, [rbx - 8]
cmp rax, 0x1f
ja 0x18001055b
mov rbx, rcx
mov rcx, rbx
call fcn.18010ff50
jmp 0x18000fd24
lea rdx, [rbp - 0x80]
call sub.VCRUNTIME140.dll_memcpy
mov dword [rsi + rdi], 0x64
xor r15d, r15d
movabs r9, 0x7ffffffffffffffe
mov ebx, 0x2e
mov qword [rbp - 0x80], rdi
mov rsi, qword [rbp - 0x70]
mov r14, qword [rbp - 0x68]
cmp rsi, r14
jae 0x18000fd6e
lea rax, [rsi + 1]
mov qword [rbp - 0x70], rax
lea rax, [rbp - 0x80]
cmp r14, 8
cmovae rax, rdi
mov dword [rax + rsi*2], 0x61
mov esi, 0x7565
mov edi, 0x74
jmp 0x18001052b
mov rax, r9
sub rax, rsi
cmp rax, 1
jb 0x1800105bc
lea r15, [rsi + 1]
mov rbx, r15
or rbx, 7
cmp rbx, r9
jbe 0x18000fd93
mov rbx, r9
jmp 0x18000fdb4
mov rcx, r14
shr rcx, 1
mov rax, r9
sub rax, rcx
cmp r14, rax
jbe 0x18000fda9
mov rbx, r9
jmp 0x18000fdb4
lea rax, [r14 + rcx]
cmp rbx, rax
cmovb rbx, rax
lea rdx, [rbx + 1]
lea rcx, [rbp - 0x80]
call fcn.1800266f0
mov rdi, rax
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x68], rbx
add rsi, rsi
mov r8, rsi
mov rcx, rax
cmp r14, 8
jb 0x18000fe2b
mov rbx, qword [rbp - 0x80]
mov rdx, rbx
call sub.VCRUNTIME140.dll_memcpy
mov dword [rsi + rdi], 0x61
xor r15d, r15d
lea rdx, [r14*2 + 2]
cmp rdx, 0x1000
jb 0x18000fe1e
add rdx, 0x27
mov rcx, qword [rbx - 8]
sub rbx, rcx
lea rax, [rbx - 8]
cmp rax, 0x1f
ja 0x18001055b
mov rbx, rcx
mov rcx, rbx
call fcn.18010ff50
jmp 0x1800104a1
lea rdx, [rbp - 0x80]
call sub.VCRUNTIME140.dll_memcpy
mov dword [rsi + rdi], 0x61
jmp 0x18001049e
movsd xmm7, qword [rdx]
subsd xmm7, xmm11
addsd xmm7, qword [r8]
divsd xmm7, xmm12
jmp 0x18001052b
mov rdi, r15
mov qword [rsp + 0x50], r15
cmp qword [0x18017c1f8], 0
jbe 0x180010162
nop
mov ebx, 7
mov dword [rsp + 0x34], ebx
nop dword [rax]
cmp ebx, 7
ja case.default.0x18000fe96
mov eax, ebx
mov ecx, dword [r10 + rax*4 + 0x105c8]
add rcx, r10
jmp rcx
mov dword [rsp + 0x44], 0xf003f
jmp case.default.0x18000fe96
mov word [rbp - 0x5e], si
jmp case.default.0x18000fe96
mov word [rbp - 0x60], r14w
mov eax, 0x73
mov word [rbp - 0x5f], ax
jmp case.default.0x18000fe96
mov dword [rsp + 0x40], r15d
lea rcx, [rsp + 0x78]
call qword [sym.imp.SHELL32.dll_SHGetInstanceExplorer]
lea r10, [0x180000000]
mov r11d, 0x64
jmp case.default.0x18000fe96
mov word [rbp - 0x5c], r11w
mov dword [rbp - 0x5b], 0x45536f
mov eax, 0x4c
mov word [rbp - 0x58], ax
jmp case.default.0x18000fe96
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x20], eax
lea r9, [rsp + 0x60]
xor r8d, r8d
mov edx, dword [rsp + 0x44]
lea rcx, [rbp - 0x60]
call qword [sym.imp.SHLWAPI.dll_SHRegOpenUSKeyA]
test eax, eax
je 0x18000ff26
mov byte [rsp + 0x30], 0
jmp 0x18000ff9a
cmp byte [rsp + 0x30], 0
je 0x18000ff9a
mov ebx, 0x46
cmp ebx, 0x46
je 0x18000ff78
cmp ebx, 0x2f94
je 0x18000ff54
cmp ebx, 0x5ee2
jne 0x18000ff88
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.SHLWAPI.dll_SHRegCloseUSKey]
jmp 0x18000ff88
mov dword [rsp + 0x28], r13d
mov eax, dword [rsp + 0x4c]
mov dword [rsp + 0x20], eax
xor r9d, r9d
mov r8d, dword [rsp + 0x48]
xor edx, edx
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.SHLWAPI.dll_SHRegWriteUSValueA]
jmp 0x18000ff88
mov dword [rsp + 0x48], r15d
mov dword [rsp + 0x4c], r15d
mov r13d, 1
add ebx, 0x2f4e
cmp ebx, 0x8dea
jbe 0x18000ff32
mov ebx, dword [rsp + 0x34]
lea rax, [0x18017c1e8]
cmp qword [0x18017c200], 0x10
cmovae rax, qword [0x18017c1e8]
movsx r12d, byte [rax + rdi]
mov rsi, qword [rbp - 0x70]
mov r14, qword [rbp - 0x68]
cmp rsi, r14
jae 0x18000ffe8
lea rax, [rsi + 1]
mov qword [rbp - 0x70], rax
lea rax, [rbp - 0x80]
cmp r14, 8
cmovae rax, qword [rbp - 0x80]
mov word [rax + rsi*2], r12w
mov word [rax + rsi*2 + 2], r15w
jmp 0x1800100d4
movabs rdx, 0x7ffffffffffffffe
mov rax, rdx
sub rax, rsi
cmp rax, 1
jb 0x1800105c2
lea r15, [rsi + 1]
mov rbx, r15
or rbx, 7
cmp rbx, rdx
jbe 0x180010017
mov rbx, rdx
jmp 0x180010038
mov rcx, r14
shr rcx, 1
mov rax, rdx
sub rax, rcx
cmp r14, rax
jbe 0x18001002d
mov rbx, rdx
jmp 0x180010038
lea rax, [r14 + rcx]
cmp rbx, rax
cmovb rbx, rax
lea rdx, [rbx + 1]
lea rcx, [rbp - 0x80]
call fcn.1800266f0
mov rdi, rax
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x68], rbx
add rsi, rsi
mov r8, rsi
mov rcx, rax
cmp r14, 8
jb 0x1800100b0
mov rbx, qword [rbp - 0x80]
mov rdx, rbx
call sub.VCRUNTIME140.dll_memcpy
mov word [rdi + rsi], r12w
xor r15d, r15d
mov word [rdi + rsi + 2], r15w
lea rdx, [r14*2 + 2]
cmp rdx, 0x1000
jb 0x1800100a6
add rdx, 0x27
mov rcx, qword [rbx - 8]
sub rbx, rcx
lea rax, [rbx - 8]
cmp rax, 0x1f
ja 0x18001054d
mov rbx, rcx
mov rcx, rbx
call fcn.18010ff50
jmp 0x1800100c7
lea rdx, [rbp - 0x80]
call sub.VCRUNTIME140.dll_memcpy
mov word [rdi + rsi], r12w
xor r15d, r15d
mov word [rdi + rsi + 2], r15w
mov qword [rbp - 0x80], rdi
mov ebx, dword [rsp + 0x34]
mov rdi, qword [rsp + 0x50]
lea r10, [0x180000000]
mov esi, 0x7565
mov r11d, 0x64
lea r14d, [r11 - 0x14]
jmp case.default.0x18000fe96
mov eax, 0x54
mov word [rbp - 0x51], ax
mov eax, 0x535f
mov word [rbp - 0x50], ax
mov byte [rbp - 0x4e], 0
mov byte [rsp + 0x30], 1
jmp case.default.0x18000fe96
mov eax, 0x45
mov word [rbp - 0x57], ax
mov dword [rbp - 0x56], 0x465443
mov eax, 0x5f50
mov word [rbp - 0x53], ax
dec ebx
mov dword [rsp + 0x34], ebx
lea eax, [rbx + 0x88]
cmp eax, 0x87
ja 0x18000fe80
inc rdi
mov qword [rsp + 0x50], rdi
cmp rdi, qword [0x18017c1f8]
jb 0x18000fe70
mov r12d, dword [rsp + 0x38]
mov ebx, 0x2e
movabs r9, 0x7ffffffffffffffe
mov rsi, qword [rbp - 0x70]
mov rcx, qword [rbp - 0x68]
cmp rsi, rcx
jae 0x18001019a
lea rax, [rsi + 1]
mov qword [rbp - 0x70], rax
lea rax, [rbp - 0x80]
cmp rcx, 8
cmovae rax, qword [rbp - 0x80]
mov dword [rax + rsi*2], 0x2e
mov esi, 0x7565
mov edi, 0x74
jmp 0x18001052b
mov rax, r9
sub rax, rsi
cmp rax, 1
jb 0x1800105bc
lea r15, [rsi + 1]
mov r14, qword [rbp - 0x68]
mov rbx, r15
or rbx, 7
cmp rbx, r9
jbe 0x1800101c3
mov rbx, r9
jmp 0x1800101e4
mov rcx, r14
shr rcx, 1
mov rax, r9
sub rax, rcx
cmp r14, rax
jbe 0x1800101d9
mov rbx, r9
jmp 0x1800101e4
lea rax, [r14 + rcx]
cmp rbx, rax
cmovb rbx, rax
lea rdx, [rbx + 1]
lea rcx, [rbp - 0x80]
call fcn.1800266f0
mov rdi, rax
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x68], rbx
add rsi, rsi
mov r8, rsi
mov rcx, rax
cmp r14, 8
jb 0x180010223
mov rbx, qword [rbp - 0x80]
mov rdx, rbx
call sub.VCRUNTIME140.dll_memcpy
mov dword [rdi + rsi], 0x2e
jmp 0x18000fdee
lea rdx, [rbp - 0x80]
call sub.VCRUNTIME140.dll_memcpy
mov ebx, 0x2e
mov dword [rdi + rsi], ebx
xor r15d, r15d
mov qword [rbp - 0x80], rdi
mov esi, 0x7565
lea edi, [rbx + 0x46]
jmp 0x18001052b
mov rdi, qword [0x18017c1d8]
lea rbx, [0x18017c1c8]
cmp qword [0x18017c1e0], 8
cmovae rbx, qword [0x18017c1c8]
cmp rdi, 8
jae 0x18001027e
movups xmm0, xmmword [rbx]
movups xmmword [rbp - 0x60], xmm0
mov esi, 7
mov r15, qword [rbp - 0x60]
jmp 0x1800102bd
mov rsi, rdi
or rsi, 7
cmp rsi, r9
cmova rsi, r9
lea rdx, [rsi + 1]
lea rcx, [rbp - 0x60]
call fcn.1800266f0
mov r15, rax
mov qword [rbp - 0x60], rax
lea r8, [rdi*2 + 2]
mov rdx, rbx
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
movabs r9, 0x7ffffffffffffffe
mov qword [rbp - 0x48], rsi
mov qword [rbp - 0x50], rdi
lea r14, [rbp - 0x60]
cmp rsi, 8
cmovae r14, r15
cmp rdi, 8
jae 0x1800102e5
movups xmm6, xmmword [r14]
mov qword [rbp - 0x28], 7
jmp 0x18001031f
mov rbx, rdi
or rbx, 7
cmp rbx, r9
cmova rbx, r9
lea rdx, [rbx + 1]
lea rcx, [rbp - 0x40]
call fcn.1800266f0
mov qword [rbp - 0x40], rax
lea r8, [rdi*2 + 2]
mov rdx, r14
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
mov qword [rbp - 0x28], rbx
movups xmm6, xmmword [rbp - 0x40]
mov qword [rbp - 0x30], rdi
mov rcx, qword [rbp - 0x68]
cmp rcx, 8
jb 0x180010363
lea rdx, [rcx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001035e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180010554
call fcn.18010ff50
movups xmmword [rbp - 0x80], xmm6
movups xmm0, xmmword [rbp - 0x30]
movups xmmword [rbp - 0x70], xmm0
cmp rsi, 8
jb 0x1800103be
lea rdx, [rsi*2 + 2]
mov rax, r15
cmp rdx, 0x1000
jb 0x1800103a2
add rdx, 0x27
mov r15, qword [r15 - 8]
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001055b
mov rcx, r15
call fcn.18010ff50
xor r15d, r15d
mov esi, 0x7565
lea ebx, [r15 + 0x2e]
lea edi, [rbx + 0x46]
jmp 0x18001052b
xor r15d, r15d
lea ebx, [r15 + 0x2e]
mov esi, 0x7565
lea edi, [rbx + 0x46]
jmp 0x18001052b
mov rsi, qword [rbp - 0x70]
mov rcx, qword [rbp - 0x68]
cmp rsi, rcx
jae 0x180010405
lea rax, [rsi + 1]
mov qword [rbp - 0x70], rax
lea rax, [rbp - 0x80]
cmp rcx, 8
cmovae rax, qword [rbp - 0x80]
mov dword [rax + rsi*2], 0x74
mov esi, 0x7565
jmp 0x18001052b
mov rax, r9
sub rax, rsi
cmp rax, 1
jb 0x1800105bc
lea r15, [rsi + 1]
mov r14, qword [rbp - 0x68]
mov rbx, r15
or rbx, 7
cmp rbx, r9
jbe 0x18001042e
mov rbx, r9
jmp 0x18001044f
mov rcx, r14
shr rcx, 1
mov rax, r9
sub rax, rcx
cmp r14, rax
jbe 0x180010444
mov rbx, r9
jmp 0x18001044f
lea rax, [rcx + r14]
cmp rbx, rax
cmovb rbx, rax
lea rdx, [rbx + 1]
lea rcx, [rbp - 0x80]
call fcn.1800266f0
mov rdi, rax
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x68], rbx
add rsi, rsi
mov r8, rsi
mov rcx, rax
cmp r14, 8
jb 0x18001048e
mov rbx, qword [rbp - 0x80]
mov rdx, rbx
call sub.VCRUNTIME140.dll_memcpy
mov dword [rdi + rsi], 0x74
jmp 0x18000fdee
lea rdx, [rbp - 0x80]
call sub.VCRUNTIME140.dll_memcpy
mov dword [rdi + rsi], 0x74
xor r15d, r15d
mov qword [rbp - 0x80], rdi
mov ebx, 0x2e
mov esi, 0x7565
lea edi, [rbx + 0x46]
jmp 0x18001052b
mov eax, r12d
sub eax, 0x218
je 0x180010524
sub eax, 0x60
je 0x18001050f
sub eax, 0x37
je 0x1800104cd
cmp eax, 0x60
jne 0x18001052b
mov rcx, qword [rbp - 0x68]
cmp rcx, 8
jb 0x180010567
lea rdx, [rcx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180010562
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180010562
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov r8d, 0x100
lea rcx, [rbp - 0x80]
call fcn.1800fde00
mov byte [rsp + 0x68], al
jmp 0x18001052b
movsd qword [rsp + 0x68], xmm8
add r12d, 0x97
mov dword [rsp + 0x38], r12d
cmp r12d, dword [rsp + 0x3c]
jae 0x1800104cd
mov rdx, qword [rsp + 0x70]
mov r8, qword [rsp + 0x58]
jmp 0x18000fbb2
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call fcn.18010ff50
mov rax, qword [rsp + 0x68]
mov rcx, qword [rbp - 0x20]
xor rcx, rsp
call fcn.180110960
lea r11, [rsp + 0x160]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.180025da0
nop
call fcn.180025da0
int3