Function at 0x14000c3c0
Capabilities:
Get common file path
Query or enumerate registry value

Disassembly:
mov rax, rsp
push rbp
lea rbp, [rax - 0x1f8]
sub rsp, 0x2f0
mov qword [rsp + 0x50], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r14
mov rax, qword [0x140036038]
xor rax, rsp
mov qword [rbp + 0x1e0], rax
xor r14d, r14d
mov dword [rsp + 0x30], r14d
mov dword [rsp + 0x34], 0x80
lea rax, [rsp + 0x40]
mov qword [rsp + 0x20], rax
lea r9d, [r14 + 1]
xor r8d, r8d
lea rdx, str.SOFTWAREWow6432NodeMicrosoftWindowsCurrentVersionUninstallHonorSuite
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
je 0x14000c448
lea rcx, str.error_get_hKey_error
call fcn.14000a500
xor eax, eax
jmp 0x14000ca7d
mov ecx, dword [rsp + 0x34]
call fcn.140011900
mov rbx, rax
test rax, rax
je 0x14000c441
lea rax, [rsp + 0x34]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rbx
xor r9d, r9d
xor r8d, r8d
lea rdx, str.DisplayIcon
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
mov edi, eax
mov edx, dword [rsp + 0x34]
inc edx
mov rcx, rbx
call fcn.140015150
mov rsi, rax
test rax, rax
jne 0x14000c4a7
mov rcx, rbx
call fcn.140011814
xor eax, eax
jmp 0x14000ca7d
test edi, edi
je 0x14000c4c6
mov rcx, rsi
call fcn.140011814
lea rcx, str.error_get_szAppNameReg_error
call fcn.14000a500
xor eax, eax
jmp 0x14000ca7d
mov dword [rsp + 0x38], 0x104
lea rax, [rsp + 0x38]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x40]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea rdx, str.UserdataDir
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
mov rdi, 0xffffffffffffffff
test eax, eax
jne 0x14000c54b
lea rax, [rbp - 0x40]
mov r8, rdi
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], r14b
jne 0x14000c510
lea rdx, [rbp - 0x40]
lea rbx, [0x140036e48]
mov rcx, rbx
call fcn.140004420
cmp qword [0x140036e60], 0x10
cmovae rbx, qword [0x140036e48]
mov rdx, rbx
lea rcx, str.userdataDir:_s
call fcn.14000a500
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov qword [rsp + 0x68], r14
mov r14d, 0xf
mov qword [rsp + 0x70], r14
mov byte [rsp + 0x58], 0
mov r8, rdi
nop
inc r8
cmp byte [rsi + r8], 0
jne 0x14000c570
mov rdx, rsi
lea rcx, [rsp + 0x58]
call fcn.140004420
nop
mov rcx, rsi
call fcn.140011814
lea rcx, [rsp + 0x58]
mov rsi, qword [rsp + 0x58]
cmp qword [rsp + 0x70], 0x10
cmovae rcx, rsi
mov qword [rsp + 0x20], 0xe
lea r9, str.HonorSuite.exe
mov rbx, qword [rsp + 0x68]
mov rdx, rbx
call fcn.140004bd0
mov rdx, rax
cmp rbx, rax
jb 0x14000caaf
mov rax, rbx
sub rax, rdx
cmp rax, 0xf
cmovb r14, rax
lea rcx, [rsp + 0x58]
cmp qword [rsp + 0x70], 0x10
cmovae rcx, rsi
add rcx, rdx
sub rbx, r14
mov qword [rsp + 0x68], rbx
sub rbx, rdx
lea r8, [rbx + 1]
lea rdx, [rcx + r14]
call fcn.14000f120
nop
movdqa xmm0, xmmword [0x140030c50]
movdqu xmmword [rbp - 0x78], xmm0
mov byte [rsp + 0x78], 0
mov dword [rsp + 0x30], 1
mov rdx, qword [rsp + 0x68]
add rdx, 0x17
lea rcx, [rsp + 0x78]
call fcn.1400070a0
lea rdx, [rsp + 0x58]
cmp qword [rsp + 0x70], 0x10
cmovae rdx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x68]
lea rcx, [rsp + 0x78]
call fcn.140004570
mov r8d, 0x17
lea rdx, str.hwtoolshwtransport.exe
lea rcx, [rsp + 0x78]
call fcn.140004570
lea rdx, [rsp + 0x78]
lea rbx, [0x140036e88]
mov rcx, rbx
call fcn.1400040f0
nop
mov rdx, qword [rbp - 0x70]
cmp rdx, 0x10
jb 0x14000c6bb
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000c6b6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000cab5
call fcn.14000d4b4
cmp qword [0x140036ea0], 0x10
cmovae rbx, qword [0x140036e88]
mov rdx, rbx
lea rcx, str.m_strSerPath___s
call fcn.14000a500
nop
movdqa xmm0, xmmword [0x140030c50]
movdqu xmmword [rbp - 0x78], xmm0
mov byte [rsp + 0x78], 0
mov dword [rsp + 0x30], 2
mov rdx, qword [rsp + 0x68]
add rdx, 0xa
lea rcx, [rsp + 0x78]
call fcn.1400070a0
lea rdx, [rsp + 0x58]
cmp qword [rsp + 0x70], 0x10
cmovae rdx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x68]
lea rcx, [rsp + 0x78]
call fcn.140004570
mov r8d, 0xa
lea rdx, str.CheckPort
lea rcx, [rsp + 0x78]
call fcn.140004570
lea rdx, [rsp + 0x78]
lea rbx, [0x140036ea8]
mov rcx, rbx
call fcn.1400040f0
nop
mov rdx, qword [rbp - 0x70]
cmp rdx, 0x10
jb 0x14000c790
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000c78b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000cabb
call fcn.14000d4b4
cmp qword [0x140036ec0], 0x10
cmovae rbx, qword [0x140036ea8]
mov rdx, rbx
lea rcx, str.g_strDllPath___s
call fcn.14000a500
nop
movdqa xmm0, xmmword [0x140030c50]
movdqu xmmword [rbp - 0x78], xmm0
mov byte [rsp + 0x78], 0
mov dword [rsp + 0x30], 4
mov rdx, qword [rsp + 0x68]
add rdx, 0x11
lea rcx, [rsp + 0x78]
call fcn.1400070a0
lea rdx, [rsp + 0x58]
cmp qword [rsp + 0x70], 0x10
cmovae rdx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x68]
lea rcx, [rsp + 0x78]
call fcn.140004570
mov r8d, 0x11
lea rdx, str.MiniPopWindow.exe
lea rcx, [rsp + 0x78]
call fcn.140004570
lea rdx, [rsp + 0x78]
lea rbx, [0x140036ec8]
mov rcx, rbx
call fcn.1400040f0
nop
mov rdx, qword [rbp - 0x70]
cmp rdx, 0x10
jb 0x14000c865
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000c860
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000cac1
call fcn.14000d4b4
cmp qword [0x140036ee0], 0x10
cmovae rbx, qword [0x140036ec8]
mov rdx, rbx
lea rcx, str.g_strMiniPopPath___s
call fcn.14000a500
nop
movdqa xmm0, xmmword [0x140030c50]
movdqu xmmword [rbp - 0x78], xmm0
mov byte [rsp + 0x78], 0
mov dword [rsp + 0x30], 8
mov rdx, qword [rsp + 0x68]
add rdx, 0xe
lea rcx, [rsp + 0x78]
call fcn.1400070a0
lea rdx, [rsp + 0x58]
cmp qword [rsp + 0x70], 0x10
cmovae rdx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x68]
lea rcx, [rsp + 0x78]
call fcn.140004570
mov r8d, 0xe
lea rdx, str.HonorSuite.exe
lea rcx, [rsp + 0x78]
call fcn.140004570
lea rdx, [rsp + 0x78]
lea rbx, [0x140036e68]
mov rcx, rbx
call fcn.1400040f0
nop
mov rdx, qword [rbp - 0x70]
cmp rdx, 0x10
jb 0x14000c93a
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000c935
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000cac7
call fcn.14000d4b4
mov rdx, rbx
cmp qword [0x140036e80], 0x10
cmovae rdx, qword [0x140036e68]
lea rcx, str.g_strHisuitePath___s
call fcn.14000a500
cmp qword [0x140036e80], 0x10
cmovae rbx, qword [0x140036e68]
mov rdx, rbx
lea rcx, str.Run_RunMiniPopW_g_strHisuitePath_s
call fcn.140006a20
movdqa xmm0, xmmword [0x140030c50]
movdqu xmmword [rbp - 0x58], xmm0
mov byte [rbp - 0x68], 0
lea r8, [rsp + 0x48]
mov edx, 0x1c
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetSpecialFolderLocation]
test eax, eax
js 0x14000c9f3
lea rdx, [rbp + 0xd0]
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.SHELL32.dll_SHGetPathFromIDListA]
test eax, eax
je 0x14000c9f3
lea rax, [rbp + 0xd0]
nop dword [rax]
inc rdi
cmp byte [rax + rdi], 0
jne 0x14000c9c0
mov r8, rdi
lea rdx, [rbp + 0xd0]
lea rcx, [rbp - 0x68]
call fcn.140004420
mov r8d, 0x21
lea rdx, str.HonorSuiteuserdataLocation.ini
lea rcx, [rbp - 0x68]
call fcn.140004570
nop
mov rdx, qword [rbp - 0x50]
cmp rdx, 0x10
jb 0x14000ca2e
inc rdx
mov rcx, qword [rbp - 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000ca29
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000cacd
call fcn.14000d4b4
movdqa xmm0, xmmword [0x140030c50]
movdqu xmmword [rbp - 0x58], xmm0
mov byte [rbp - 0x68], 0
mov rdx, qword [rsp + 0x70]
cmp rdx, 0x10
jb 0x14000ca78
inc rdx
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000ca73
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000caa9
call fcn.14000d4b4
mov eax, 1
mov rcx, qword [rbp + 0x1e0]
xor rcx, rsp
call fcn.14000d490
lea r11, [rsp + 0x2f0]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov r14, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret
call fcn.14001179c
nop
call fcn.1400046d0
nop
call fcn.14001179c
int3
call fcn.14001179c
int3
call fcn.14001179c
int3
call fcn.14001179c
int3
call fcn.14001179c
int3