Function at 0x14001b390
Capabilities:
Accept command line arguments
Print debug messages

Disassembly:
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rsi
push rdi
sub rsp, 0x668
mov rax, qword [0x1400311e8]
xor rax, rsp
mov qword [rsp + 0x658], rax
mov dword [rsp + 0xb8], 0
call qword [sym.imp.KERNEL32.dll_GetCommandLineA]
mov qword [rsp + 0x690], rax
lea rdi, [rsp + 0x490]
lea rsi, [0x14002919c]
mov ecx, 3
rep movsb byte [rdi], byte [rsi]
mov qword [rsp + 0x58], 0
mov qword [rsp + 0xa0], 0
call qword [sym.imp.KERNEL32.dll_GetCommandLineW]
lea rdx, [rsp + 0x50]
mov rcx, rax
call qword [sym.imp.SHELL32.dll_CommandLineToArgvW]
mov qword [rsp + 0xa0], rax
cmp qword [rsp + 0xa0], 0
je 0x14001b438
mov rcx, qword [rsp + 0xa0]
call qword [sym.imp.KERNEL32.dll_LocalFree]
cmp dword [rsp + 0x50], 1
jle 0x14001b459
lea rdx, [rsp + 0x490]
mov rcx, qword [rsp + 0x690]
call fcn.14001aef0
mov qword [rsp + 0x58], rax
mov rdx, qword [rsp + 0x690]
lea rcx, [rsp + 0x28]
call fcn.1400047b0
lea rcx, [rsp + 0xc0]
call fcn.14001dd80
mov dword [rsp + 0xa8], 0
mov dword [rsp + 0xac], 0
mov dword [rsp + 0xb0], 0
mov dword [rsp + 0x98], 0
cmp qword [rsp + 0x58], 0
je 0x14001b546
mov r8d, 0x104
lea rdx, [rsp + 0x4a0]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea rcx, [rsp + 0x4a0]
call fcn.14000a060
mov r8, rax
add r8, 3
mov r9, qword [0x14002b5b8]
lea rdx, [rsp + 0x5c8]
lea rcx, [rsp + 0x28]
call fcn.140004a60
mov rdx, rax
lea rcx, [rsp + 0x28]
call fcn.140004880
lea rcx, [rsp + 0x5c8]
call fcn.140004860
lea rax, [rsp + 0x5f0]
mov qword [rsp + 0x618], rax
lea rdx, [rsp + 0x28]
mov rcx, qword [rsp + 0x618]
call fcn.140004810
lea rdx, [rsp + 0xa8]
mov rcx, rax
call fcn.14001af90
mov dword [rsp + 0x98], eax
cmp qword [rsp + 0x58], 0
je 0x14001b55c
cmp dword [rsp + 0x98], 1
jne 0x14001b621
cmp dword [rsp + 0x98], 1
jne 0x14001b5d9
cmp dword [rsp + 0xac], 0
je 0x14001b588
xor r8d, r8d
lea rdx, str.Datacard_setup
lea rcx, [0x1400337a0]
call fcn.140022260
jmp 0x14001b5a2
lea r8, [0x140029f28]
lea rdx, [0x140029f30]
lea rcx, [0x1400337a0]
call fcn.140022260
cmp dword [rsp + 0xb0], 0
je 0x14001b5d7
lea rcx, [rsp + 0xc0]
call fcn.140020e10
test eax, eax
je 0x14001b5cb
lea rcx, str.Set_reg_info_SUS
call fcn.140021de0
jmp 0x14001b5d7
lea rcx, str.Set_reg_into_Failed
call fcn.140021d50
jmp 0x14001b5f3
lea r8, str.temp
lea rdx, str.E220AutoRunLog.tmp
lea rcx, [0x1400337a0]
call fcn.140022260
mov dword [rsp + 0x620], 0
lea rcx, [rsp + 0xc0]
call fcn.14001dc50
lea rcx, [rsp + 0x28]
call fcn.140004860
mov eax, dword [rsp + 0x620]
jmp 0x14001bba7
xor r8d, r8d
lea rdx, str.DCSHost
lea rcx, [0x1400337a0]
call fcn.140022260
movzx eax, al
test eax, eax
jne 0x14001b678
lea rcx, str.initialize_DCService.exe_LOG_fail
call fcn.140021d50
mov dword [rsp + 0x624], 0xffffffff
lea rcx, [rsp + 0xc0]
call fcn.14001dc50
lea rcx, [rsp + 0x28]
call fcn.140004860
mov eax, dword [rsp + 0x624]
jmp 0x14001bba7
mov rdx, qword [rsp + 0x690]
lea rcx, str.parma:___s_
call fcn.140021de0
lea rcx, [rsp + 0x60]
call fcn.140018530
lea rdx, str.HuaweiHiSuiteService64.exe
lea rcx, [rsp + 0x60]
call fcn.1400193f0
movzx eax, al
test eax, eax
jne 0x14001b6f2
lea rcx, str.Initialize_ServiceMgr_fail.
call fcn.140021d50
mov dword [rsp + 0x628], 0xffffffff
lea rcx, [rsp + 0x60]
call fcn.140019500
lea rcx, [rsp + 0xc0]
call fcn.14001dc50
lea rcx, [rsp + 0x28]
call fcn.140004860
mov eax, dword [rsp + 0x628]
jmp 0x14001bba7
cmp qword [rsp + 0x58], 0
je 0x14001bb71
lea rdx, str.remove
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
jne 0x14001b7e5
lea rcx, [0x14002a020]
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
lea rcx, str.UninstallService_Start
call fcn.140021de0
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetLastError]
lea rcx, [rsp + 0x60]
call fcn.140019090
movzx eax, al
test eax, eax
jne 0x14001b7ad
mov dword [rsp + 0x5b0], 0
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x5b0], eax
mov edx, dword [rsp + 0x5b0]
lea rcx, [0x14002a050]
call fcn.140021d50
mov dword [rsp + 0x62c], 0xffffffff
lea rcx, [rsp + 0x60]
call fcn.140019500
lea rcx, [rsp + 0xc0]
call fcn.14001dc50
lea rcx, [rsp + 0x28]
call fcn.140004860
mov eax, dword [rsp + 0x62c]
jmp 0x14001bba7
mov dword [rsp + 0x630], 0
lea rcx, [rsp + 0x60]
call fcn.140019500
lea rcx, [rsp + 0xc0]
call fcn.14001dc50
lea rcx, [rsp + 0x28]
call fcn.140004860
mov eax, dword [rsp + 0x630]
jmp 0x14001bba7
lea rdx, str.install
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
jne 0x14001b8c4
lea rcx, [0x14002a080]
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
lea rcx, str.InstallService_Start
call fcn.140021de0
lea rcx, [rsp + 0x60]
call fcn.140019f20
movzx eax, al
test eax, eax
jne 0x14001b88c
mov dword [rsp + 0x5b4], 0
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x5b4], eax
mov edx, dword [rsp + 0x5b4]
lea rcx, [0x14002a0b0]
call fcn.140021d50
mov dword [rsp + 0x634], 0xffffffff
lea rcx, [rsp + 0x60]
call fcn.140019500
lea rcx, [rsp + 0xc0]
call fcn.14001dc50
lea rcx, [rsp + 0x28]
call fcn.140004860
mov eax, dword [rsp + 0x634]
jmp 0x14001bba7
mov dword [rsp + 0x638], 0
lea rcx, [rsp + 0x60]
call fcn.140019500
lea rcx, [rsp + 0xc0]
call fcn.14001dc50
lea rcx, [rsp + 0x28]
call fcn.140004860
mov eax, dword [rsp + 0x638]
jmp 0x14001bba7
lea rdx, str.installcount
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
jne 0x14001b9bb
lea rcx, [0x14002a0e8]
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
lea rcx, str.Install_Service_and_count_the_times__Start...
call fcn.140021de0
lea rcx, [rsp + 0x60]
call fcn.140019f20
movzx eax, al
test eax, eax
jne 0x14001b96b
mov dword [rsp + 0x5bc], 0
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x5bc], eax
mov edx, dword [rsp + 0x5bc]
lea rcx, str.install_Service_Error.Error_Code:_d.
call fcn.140021d50
mov dword [rsp + 0x63c], 0xffffffff
lea rcx, [rsp + 0x60]
call fcn.140019500
lea rcx, [rsp + 0xc0]
call fcn.14001dc50
lea rcx, [rsp + 0x28]
call fcn.140004860
mov eax, dword [rsp + 0x63c]
jmp 0x14001bba7
mov r8d, 1
lea rdx, [rsp + 0x5b8]
lea rcx, [rsp + 0x60]
call fcn.140018260
mov dword [rsp + 0x640], 0
lea rcx, [rsp + 0x60]
call fcn.140019500
lea rcx, [rsp + 0xc0]
call fcn.14001dc50
lea rcx, [rsp + 0x28]
call fcn.140004860
mov eax, dword [rsp + 0x640]
jmp 0x14001bba7
lea rdx, str.removecount
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
jne 0x14001bafd
lea rcx, [0x14002a180]
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
lea rcx, str.Uninstall_Service_and_count_the_times__Start...
call fcn.140021de0
xor r8d, r8d
lea rdx, [rsp + 0x5c0]
lea rcx, [rsp + 0x60]
call fcn.140018260
test eax, eax
je 0x14001ba49
cmp dword [rsp + 0x5c0], 0
jbe 0x14001ba49
mov dword [rsp + 0x644], 0
lea rcx, [rsp + 0x60]
call fcn.140019500
lea rcx, [rsp + 0xc0]
call fcn.14001dc50
lea rcx, [rsp + 0x28]
call fcn.140004860
mov eax, dword [rsp + 0x644]
jmp 0x14001bba7
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetLastError]
lea rcx, [rsp + 0x60]
call fcn.140019090
movzx eax, al
test eax, eax
jne 0x14001bac5
mov dword [rsp + 0x5c4], 0
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x5c4], eax
mov edx, dword [rsp + 0x5c4]
lea rcx, str.unInstall_Service_Error.Error_Code:_d.
call fcn.140021d50
mov dword [rsp + 0x648], 0xffffffff
lea rcx, [rsp + 0x60]
call fcn.140019500
lea rcx, [rsp + 0xc0]
call fcn.14001dc50
lea rcx, [rsp + 0x28]
call fcn.140004860
mov eax, dword [rsp + 0x648]
jmp 0x14001bba7
mov dword [rsp + 0x64c], 0
lea rcx, [rsp + 0x60]
call fcn.140019500
lea rcx, [rsp + 0xc0]
call fcn.14001dc50
lea rcx, [rsp + 0x28]
call fcn.140004860
mov eax, dword [rsp + 0x64c]
jmp 0x14001bba7
lea rdx, str.service
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
jne 0x14001bb55
lea rcx, [rsp + 0x60]
call fcn.14001a2d0
mov eax, dword [rsp + 0xb8]
mov dword [rsp + 0x650], eax
lea rcx, [rsp + 0x60]
call fcn.140019500
lea rcx, [rsp + 0xc0]
call fcn.14001dc50
lea rcx, [rsp + 0x28]
call fcn.140004860
mov eax, dword [rsp + 0x650]
jmp 0x14001bba7
lea rdx, [rsp + 0x490]
mov rcx, qword [rsp + 0x58]
call fcn.14001aef0
mov qword [rsp + 0x58], rax
jmp 0x14001b6f2
mov eax, dword [rsp + 0xb8]
mov dword [rsp + 0x654], eax
lea rcx, [rsp + 0x60]
call fcn.140019500
lea rcx, [rsp + 0xc0]
call fcn.14001dc50
lea rcx, [rsp + 0x28]
call fcn.140004860
mov eax, dword [rsp + 0x654]
mov rcx, qword [rsp + 0x658]
xor rcx, rsp
call fcn.140009950
add rsp, 0x668
pop rdi
pop rsi
ret