Function at 0x1400ad194
Capabilities:
Set registry value
Write file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xcb0
mov rax, qword [0x1402bcf00]
xor rax, rsp
mov qword [rsp + 0xca0], rax
mov r15, rdx
movsxd r14, ecx
mov dword [rsp + 0x68], r14d
lea eax, [r14 + 1]
mov dword [rsp + 0x50], eax
movsxd rdi, eax
shl rdi, 3
mov eax, 0xffffffff
cmp rdi, rax
jae 0x1400ad200
cmp rax, rdi
je 0x1400ad200
mov eax, 0xffffffe7
cmp rdi, rax
jae 0x1400ad200
lea rcx, [rdi + 0x18]
call fcn.1401cb03c
xor ebx, ebx
jmp 0x1400ad204
xor ebx, ebx
mov eax, ebx
xor r9d, r9d
xor r8d, r8d
mov rdx, rdi
mov rcx, rax
call fcn.14008f710
mov rdi, rax
mov qword [rsp + 0x78], rax
mov r13, r14
mov esi, 1
test r14d, r14d
jle 0x1400ad2ef
sub rax, r15
mov qword [rsp + 0x58], r14
or r12, 0xffffffffffffffff
mov r14d, 0xffffffe7
mov rdi, rax
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rbx
mov r9d, r12d
mov r8, qword [r15]
xor edx, edx
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov dword [rsp + 0x60], eax
movsxd r13, eax
mov eax, 0xffffffff
cmp r13, rax
jae 0x1400ad28f
cmp rax, r13
je 0x1400ad28f
cmp r13, r14
jae 0x1400ad28f
lea rcx, [r13 + 0x18]
call fcn.1401cb03c
jmp 0x1400ad292
mov rax, rbx
xor r9d, r9d
xor r8d, r8d
mov rdx, r13
mov rcx, rax
call fcn.14008f710
mov qword [rdi + r15], rax
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x30], rbx
mov ecx, dword [rsp + 0x60]
mov dword [rsp + 0x28], ecx
mov qword [rsp + 0x20], rax
mov r9d, r12d
mov r8, qword [r15]
xor edx, edx
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
add r15, 8
sub qword [rsp + 0x58], rsi
jne 0x1400ad243
mov rdi, qword [rsp + 0x78]
movsxd r14, dword [rsp + 0x68]
mov r13, r14
jmp 0x1400ad2f3
or r12, 0xffffffffffffffff
cmp r14d, esi
jle 0x1400ad3cd
lea rdx, str._finstall
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
je 0x1400ad388
lea rdx, str._funinstall
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
je 0x1400ad388
lea rdx, str._fulluninstall
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
je 0x1400ad388
lea rdx, str._fullinstall
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
je 0x1400ad388
lea rdx, str._install
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
je 0x1400ad388
lea rdx, str._uninstall
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
je 0x1400ad388
lea rdx, str._state
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
jne 0x1400ad3cd
mov rax, qword [rdi + 8]
mov qword [rdi + r13*8], rax
mov ecx, 0x1c
call fcn.1401cb03c
mov rcx, rax
xor r9d, r9d
xor r8d, r8d
lea r13d, [r9 + 4]
mov edx, r13d
call fcn.14008f710
mov qword [rdi + 8], rax
lea r8, [0x140252868]
mov rdx, qword [rax - 0x18]
mov rcx, rax
call fcn.140001138
mov r14d, dword [rsp + 0x50]
jmp 0x1400ad3d3
mov r13d, 4
cmp r14d, esi
jle 0x1400ad781
lea rdx, str._licenses
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
jne 0x1400ad6d8
lea r12, str._n
mov rcx, r12
call fcn.1400010e4
lea rcx, str._MeshCentral_MeshAgent:_Copyright_2006___2020_Intel_Corporation_n
call fcn.1400010e4
lea rcx, str.________________________https:__github.com_Ylianst_MeshAgent__n
call fcn.1400010e4
lea r15, str._________________________________________________________________________________________n
mov rcx, r15
call fcn.1400010e4
lea rcx, str.___Licensed_under_the_Apache_License__Version_2.0__the__License____n
call fcn.1400010e4
lea rcx, str.___you_may_not_use_this_file_except_in_compliance_with_the_License._n
call fcn.1400010e4
lea rcx, str.___You_may_obtain_a_copy_of_the_License_at_n
call fcn.1400010e4
lea r14, str.____n
mov rcx, r14
call fcn.1400010e4
lea rcx, str.___http:__www.apache.org_licenses_LICENSE_2.0_n
call fcn.1400010e4
mov rcx, r14
call fcn.1400010e4
lea rcx, str.___Unless_required_by_applicable_law_or_agreed_to_in_writing__software_n
call fcn.1400010e4
lea rcx, str.___distributed_under_the_License_is_distributed_on_an__AS_IS__BASIS__n
call fcn.1400010e4
lea rcx, str.___WITHOUT_WARRANTIES_OR_CONDITIONS_OF_ANY_KIND__either_express_or_implied._n
call fcn.1400010e4
lea rcx, str.___See_the_License_for_the_specific_language_governing_permissions_and_n
call fcn.1400010e4
lea rcx, str.___limitations_under_the_License._n_n
call fcn.1400010e4
mov rcx, r12
call fcn.1400010e4
lea rcx, str._Duktape_Javascript_Engine:_Copyright__c__2013_2019_by_Duktape_authors__see_AUTHORS.rst__n
call fcn.1400010e4
lea rcx, str.________________________https:__github.com_svaarala_duktape__n
call fcn.1400010e4
lea rcx, str.________________________http:__opensource.org_licenses_MIT__n
call fcn.1400010e4
mov rcx, r15
call fcn.1400010e4
lea rcx, str.___Permission_is_hereby_granted__free_of_charge__to_any_person_obtaining_a_copy_n
call fcn.1400010e4
lea rcx, str.___of_this_software_and_associated_documentation_files_the__Software____to_deal_n
call fcn.1400010e4
lea rcx, str.___in_the_Software_without_restriction__including_without_limitation_the_rights_n
call fcn.1400010e4
lea rcx, str.___to_use__copy__modify__merge__publish__distribute__sublicense__and___or_sell_n
call fcn.1400010e4
lea rcx, str.___copies_of_the_Software__and_to_permit_persons_to_whom_the_Software_is_n
call fcn.1400010e4
lea rcx, str.___furnished_to_do_so__subject_to_the_following_conditions_:_n
call fcn.1400010e4
mov rcx, r14
call fcn.1400010e4
lea rcx, str.___The_above_copyright_notice_and_this_permission_notice_shall_be_included_in_n
call fcn.1400010e4
lea rcx, str.___all_copies_or_substantial_portions_of_the_Software._n
call fcn.1400010e4
mov rcx, r14
call fcn.1400010e4
lea rcx, str.___THE_SOFTWARE_IS_PROVIDED__AS_IS___WITHOUT_WARRANTY_OF_ANY_KIND__EXPRESS_OR_n
call fcn.1400010e4
lea rcx, str.___IMPLIED__INCLUDING_BUT_NOT_LIMITED_TO_THE_WARRANTIES_OF_MERCHANTABILITY__n
call fcn.1400010e4
lea rcx, str.___FITNESS_FOR_A_PARTICULAR_PURPOSE_AND_NONINFRINGEMENT.IN_NO_EVENT_SHALL_THE_n
call fcn.1400010e4
lea rcx, str.___AUTHORS_OR_COPYRIGHT_HOLDERS_BE_LIABLE_FOR_ANY_CLAIM__DAMAGES_OR_OTHER_n
call fcn.1400010e4
lea rcx, str.___LIABILITY__WHETHER_IN_AN_ACTION_OF_CONTRACT__TORT_OR_OTHERWISE__ARISING_FROM__n
call fcn.1400010e4
lea rcx, str.___OUT_OF_OR_IN_CONNECTION_WITH_THE_SOFTWARE_OR_THE_USE_OR_OTHER_DEALINGS_IN_n
call fcn.1400010e4
lea rcx, str.___THE_SOFTWARE._n
call fcn.1400010e4
mov rcx, r12
call fcn.1400010e4
lea rcx, str.ZLIB_Data_Compression_Library:_Copyright__c__1995_2017_Jean_loup_Gailly_and_Mark_Adler_n
call fcn.1400010e4
lea rcx, str._______________________________http:__www.zlib.net__n
call fcn.1400010e4
mov rcx, r15
call fcn.1400010e4
lea rcx, str.___This_software_is_provided_as_is__without_any_express_or_implied_n
call fcn.1400010e4
lea rcx, str.___warranty.In_no_event_will_the_authors_be_held_liable_for_any_damages_n
call fcn.1400010e4
lea rcx, str.___arising_from_the_use_of_this_software._n
call fcn.1400010e4
lea r14, [0x140252028]
mov rcx, r14
call fcn.1400010e4
lea rcx, str.___Permission_is_granted_to_anyone_to_use_this_software_for_any_purpose__n
call fcn.1400010e4
lea rcx, str.___including_commercial_applications__and_to_alter_it_and_redistribute_it_n
call fcn.1400010e4
lea rcx, str.___freely__subject_to_the_following_restrictions_:_n
call fcn.1400010e4
mov rcx, r14
call fcn.1400010e4
lea rcx, str.___1._The_origin_of_this_software_must_not_be_misrepresented__you_must_not_n
call fcn.1400010e4
lea rcx, str.______claim_that_you_wrote_the_original_software.If_you_use_this_software_n
call fcn.1400010e4
lea rcx, str.______in_a_product__an_acknowledgment_in_the_product_documentation_would_be_n
call fcn.1400010e4
lea rcx, str.______appreciated_but_is_not_required._n
call fcn.1400010e4
lea rcx, str.___2._Altered_source_versions_must_be_plainly_marked_as_such__and_must_not_be_n
call fcn.1400010e4
lea rcx, str.______misrepresented_as_being_the_original_software._n
call fcn.1400010e4
lea rcx, str.___3._This_notice_may_not_be_removed_or_altered_from_any_source_distribution._n
call fcn.1400010e4
mov rcx, r14
call fcn.1400010e4
lea rcx, str.___Jean___loup_Gailly________Mark_Adler_n
call fcn.1400010e4
lea rcx, str.___jloup_gzip.org____________madler_alumni.caltech.edu_n
call fcn.1400010e4
mov rax, qword [rdi - 0x18]
shr rax, 3
test eax, eax
jle 0x1400ad6c9
mov r14, rdi
mov rcx, qword [r14]
call fcn.14008f7f8
add ebx, esi
lea r14, [r14 + 8]
mov rax, qword [rdi - 0x18]
shr rax, 3
cmp ebx, eax
jl 0x1400ad6af
mov rcx, rdi
call fcn.14008f7f8
xor eax, eax
jmp 0x1400ae9c9
cmp r14d, esi
jle 0x1400ad781
lea rdx, str._info
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
jne 0x1400ad781
lea r8, str.Jan_18_2021
lea rdx, str.13:24:17
lea rcx, str.Compiled_on:__s___s_n
call fcn.1400010e4
lea rdx, str.3e26a0996f1d28b8fe740250411e022fedd406f4
lea rcx, str.___Commit_Hash:__s_n
call fcn.1400010e4
lea rdx, str.2021_Jan_18_11:02:41_0800
lea rcx, str.___Commit_Date:__s_n
call fcn.1400010e4
xor ecx, ecx
call fcn.1400cb4d0
mov rdx, rax
lea rcx, str.Using__s_n
call fcn.1400010e4
mov rax, qword [rdi - 0x18]
shr rax, 3
test eax, eax
jle 0x1400ad6c9
mov r14, rdi
mov rcx, qword [r14]
call fcn.14008f7f8
add ebx, esi
lea r14, [r14 + 8]
mov rax, qword [rdi - 0x18]
shr rax, 3
cmp ebx, eax
jl 0x1400ad762
jmp 0x1400ad6c9
cmp r14d, 2
jle 0x1400ad89a
lea rdx, str._faddr
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
jne 0x1400ad80c
mov qword [rsp + 0x58], rbx
mov rcx, qword [rdi + 0x10]
add rcx, 2
lea r8, [rsp + 0x58]
lea rdx, str._016llx
call fcn.14000d010
mov r8, qword [rsp + 0x58]
call fcn.140091048
lea rdx, [0x1402c4b20]
lea rcx, [0x1402501fc]
call fcn.1400010e4
mov rax, qword [rdi - 0x18]
shr rax, 3
test eax, eax
jle 0x1400ad6c9
mov r14, rdi
mov rcx, qword [r14]
call fcn.14008f7f8
add ebx, esi
lea r14, [r14 + 8]
mov rax, qword [rdi - 0x18]
shr rax, 3
cmp ebx, eax
jl 0x1400ad7ed
jmp 0x1400ad6c9
cmp r14d, 2
jle 0x1400ad89a
lea rdx, str._fdelta
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
jne 0x1400ad89a
mov qword [rsp + 0x58], rbx
lea r8, [rsp + 0x58]
lea rdx, str._lld
mov rcx, qword [rdi + 0x10]
call fcn.14000d010
lea r8, [0x14008ffe0]
sub r8, qword [rsp + 0x58]
call fcn.140091048
lea rdx, [0x1402c4b20]
lea rcx, [0x1402501fc]
call fcn.1400010e4
mov rax, qword [rdi - 0x18]
shr rax, 3
test eax, eax
jle 0x1400ad6c9
mov r14, rdi
mov rcx, qword [r14]
call fcn.14008f7f8
add ebx, esi
lea r14, [r14 + 8]
mov rax, qword [rdi - 0x18]
shr rax, 3
cmp ebx, eax
jl 0x1400ad87b
jmp 0x1400ad6c9
mov r8d, 0x104
lea rdx, [rsp + 0x880]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x28], 0x208
lea rax, [rsp + 0xa90]
mov qword [rsp + 0x20], rax
mov r9d, r12d
lea r8, [rsp + 0x880]
xor edx, edx
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0xa90]
call fcn.1400800b0
cmp r14d, 2
jle 0x1400ad950
lea rdx, str._exec
mov rcx, qword [rdi + 8]
call fcn.1401d6760
test eax, eax
jne 0x1400ad950
mov r15d, dword [rsp + 0x60]
test r15d, r15d
jne 0x1400ad955
xor edx, edx
mov rcx, qword [rdi + 0x10]
call fcn.14009772c
mov qword [rsp + 0x50], rax
test rax, rax
jne 0x1400ad93c
mov r15d, ebx
jmp 0x1400ad955
mov edx, 0x1000
mov rcx, qword [rsp + 0x50]
call fcn.1401ca9a8
mov r15, rax
jmp 0x1400ad955
mov r15d, dword [rsp + 0x60]
cmp r14d, 2
jle 0x1400ad99f
lea rdx, str._b64exec
mov rcx, qword [rdi + 8]
call fcn.1401d6760
test eax, eax
jne 0x1400ad99f
test r15d, r15d
jne 0x1400ad99f
mov rcx, qword [rdi + 0x10]
test rcx, rcx
jne 0x1400ad982
mov rax, rbx
jmp 0x1400ad98c
mov edx, 0x10000
call fcn.1401ca9a8
lea r8, [rsp + 0x50]
mov edx, eax
mov rcx, qword [rdi + 0x10]
call fcn.140095bb8
mov r15d, eax
cmp r14d, esi
jle 0x1400adbfe
lea rdx, str._nodeid
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
jne 0x1400ada2d
movups xmm0, xmmword [str.console.log_require__agentNodeId_____process.exit___]
movups xmmword [rsp + 0x600], xmm0
movups xmm1, xmmword [0x14029b258]
movups xmmword [rsp + 0x610], xmm1
movups xmm0, xmmword [0x14029b268]
movups xmmword [rsp + 0x620], xmm0
mov eax, dword [0x14029b278]
mov dword [rsp + 0x630], eax
movzx eax, word [0x14029b27c]
mov word [rsp + 0x634], ax
mov al, byte [0x14029b27e]
mov byte [rsp + 0x636], al
mov r15d, gethostname
mov edx, r15d
lea rcx, [rsp + 0x600]
call fcn.14009772c
mov qword [rsp + 0x50], rax
cmp r14d, esi
jle 0x1400adbfe
lea rdx, str._name
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
jne 0x1400adabd
movaps xmm0, xmmword [str.console.log_require__agentNodeId_.serviceName____process.exit___]
movaps xmmword [rsp + 0x600], xmm0
movaps xmm1, xmmword [0x14029b2a0]
movaps xmmword [rsp + 0x610], xmm1
movaps xmm0, xmmword [0x14029b2b0]
movaps xmmword [rsp + 0x620], xmm0
movaps xmm1, xmmword [0x14029b2c0]
movaps xmmword [rsp + 0x630], xmm1
movzx eax, word [0x14029b2d0]
mov word [rsp + 0x640], ax
mov al, byte [0x14029b2d2]
mov byte [rsp + 0x642], al
mov r15d, 0x42
mov edx, r15d
lea rcx, [rsp + 0x600]
call fcn.14009772c
mov qword [rsp + 0x50], rax
cmp r14d, esi
jle 0x1400adbfe
lea rdx, str._agentHash
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
jne 0x1400adb69
test r15d, r15d
jne 0x1400adb69
movaps xmm0, xmmword [str.console.log_getSHA384FileHash_process.execPath_.toString_hex_.substring_0_16___process.exit___]
movaps xmmword [rsp + 0x600], xmm0
movaps xmm1, xmmword [0x14029b300]
movaps xmmword [rsp + 0x610], xmm1
movaps xmm0, xmmword [0x14029b310]
movaps xmmword [rsp + 0x620], xmm0
movaps xmm1, xmmword [0x14029b320]
movaps xmmword [rsp + 0x630], xmm1
movaps xmm0, xmmword [0x14029b330]
movaps xmmword [rsp + 0x640], xmm0
movaps xmm1, xmmword [0x14029b340]
movaps xmmword [rsp + 0x650], xmm1
mov al, byte [0x14029b350]
mov byte [rsp + 0x660], al
mov r15d, 0x60
mov edx, r15d
lea rcx, [rsp + 0x600]
call fcn.14009772c
mov qword [rsp + 0x50], rax
cmp r14d, esi
jle 0x1400adbfe
lea rdx, str._agentFullHash
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
jne 0x1400adbfe
test r15d, r15d
jne 0x1400adbfe
movaps xmm0, xmmword [str.console.log_getSHA384FileHash_process.execPath_.toString_hex___process.exit___]
movaps xmmword [rsp + 0x600], xmm0
movaps xmm1, xmmword [0x14029b380]
movaps xmmword [rsp + 0x610], xmm1
movaps xmm0, xmmword [0x14029b390]
movaps xmmword [rsp + 0x620], xmm0
movaps xmm1, xmmword [0x14029b3a0]
movaps xmmword [rsp + 0x630], xmm1
movaps xmm0, xmmword [0x14029b3b0]
movaps xmmword [rsp + 0x640], xmm0
mov al, byte [0x14029b3c0]
mov byte [rsp + 0x650], al
mov r15d, 0x50
mov edx, r15d
lea rcx, [rsp + 0x600]
call fcn.14009772c
mov qword [rsp + 0x50], rax
mov edx, 2
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitializeEx]
cmp r14d, esi
jle 0x1400adf04
lea rdx, str._updaterversion
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
jne 0x1400adc85
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rcx, rax
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x50]
mov r8d, 2
lea rdx, [0x14029b3d8]
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rax, qword [rdi - 0x18]
shr rax, 3
test eax, eax
jle 0x1400ad6c9
mov r14, rdi
mov rcx, qword [r14]
call fcn.14008f7f8
add ebx, esi
lea r14, [r14 + 8]
mov rax, qword [rdi - 0x18]
shr rax, 3
cmp ebx, eax
jl 0x1400adc66
jmp 0x1400ad6c9
cmp r14d, esi
jle 0x1400adf04
lea rdx, str._kvm0
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
jne 0x1400addc2
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea ecx, [rax + 0x20]
call fcn.14008f9f4
mov r12, rax
lea rax, [0x1400ad11c]
mov qword [r12], rax
mov dword [r12 + 0x10], ebx
cmp r14d, 2
jle 0x1400adce5
lea rdx, str._coredump
mov rcx, qword [rdi + 0x10]
call fcn.1401d6244
test eax, eax
mov eax, esi
je 0x1400adce7
mov eax, ebx
mov dword [r12 + 0x18], eax
cmp r14d, 2
jle 0x1400add06
lea rdx, str._remotecursor
mov rcx, qword [rdi + 0x10]
call fcn.1401d6244
test eax, eax
je 0x1400add20
cmp r14d, 3
jle 0x1400add26
lea rdx, str._remotecursor
mov rcx, qword [rdi + 0x18]
call fcn.1401d6244
test eax, eax
jne 0x1400add26
mov dword [0x1402c0450], esi
xor edx, edx
mov r8d, 0x800
lea rcx, str.Shcore.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryExA]
mov r14, rax
mov r15, rbx
test rax, rax
je 0x1400add6a
lea rdx, str.SetProcessDpiAwareness
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r15, rax
test rax, rax
jne 0x1400add6a
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov r14, rbx
test r15, r15
je 0x1400add82
mov ecx, 2
call r15
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
jmp 0x1400add88
call qword [sym.imp.USER32.dll_SetProcessDPIAware]
mov rcx, r12
call fcn.14000eb4c
mov rax, qword [rdi - 0x18]
shr rax, 3
test eax, eax
jle 0x1400ad6c9
mov r14, rdi
mov rcx, qword [r14]
call fcn.14008f7f8
add ebx, esi
lea r14, [r14 + 8]
mov rax, qword [rdi - 0x18]
shr rax, 3
cmp ebx, eax
jl 0x1400adda3
jmp 0x1400ad6c9
cmp r14d, esi
jle 0x1400adf04
lea rdx, str._kvm1
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
jne 0x1400adf04
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea ecx, [rax + 0x20]
call fcn.14008f9f4
mov r12, rax
lea rax, [0x1400ad11c]
mov qword [r12], rax
mov dword [r12 + 0x10], esi
cmp r14d, 2
jle 0x1400ade22
lea rdx, str._coredump
mov rcx, qword [rdi + 0x10]
call fcn.1401d6244
test eax, eax
mov eax, esi
je 0x1400ade24
mov eax, ebx
mov dword [r12 + 0x18], eax
cmp r14d, 2
jle 0x1400ade43
lea rdx, str._remotecursor
mov rcx, qword [rdi + 0x10]
call fcn.1401d6244
test eax, eax
je 0x1400ade5d
cmp r14d, 3
jle 0x1400ade63
lea rdx, str._remotecursor
mov rcx, qword [rdi + 0x18]
call fcn.1401d6244
test eax, eax
jne 0x1400ade63
mov dword [0x1402c0450], esi
xor edx, edx
mov r8d, 0x800
lea rcx, str.Shcore.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryExA]
mov r14, rax
mov r15, rbx
test rax, rax
je 0x1400adea7
lea rdx, str.SetProcessDpiAwareness
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r15, rax
test rax, rax
jne 0x1400adea7
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov r14, rbx
test r15, r15
je 0x1400adebf
mov ecx, 2
call r15
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
jmp 0x1400adec5
call qword [sym.imp.USER32.dll_SetProcessDPIAware]
mov rcx, r12
call fcn.14000eb4c
mov r15d, ebx
mov rax, qword [rdi - 0x18]
shr rax, 3
test eax, eax
jle 0x1400ae9af
mov r14, rdi
mov rcx, qword [r14]
call fcn.14008f7f8
add r15d, esi
lea r14, [r14 + 8]
mov rax, qword [rdi - 0x18]
shr rax, 3
cmp r15d, eax
jl 0x1400adee3
jmp 0x1400ae9af
cmp qword [rsp + 0x50], rbx
jne 0x1400ae8c2
test r14d, r14d
jle 0x1400adf2b
lea rdx, str.__slave
mov rcx, qword [rdi]
call fcn.1401d6244
test eax, eax
je 0x1400ae8c2
cmp r14d, esi
jle 0x1400ae3d2
lea rdx, [0x140252868]
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
je 0x1400ae8c2
lea rdx, str.connect
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
je 0x1400ae8c2
lea rdx, str.__slave
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
je 0x1400ae8c2
cmp r14d, esi
jle 0x1400ae3d2
lea rdx, str.state
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
jne 0x1400ae055
lea rcx, str.Mesh_Agent
call fcn.1400acefc
mov r14d, eax
cmp eax, esi
jne 0x1400adfb9
lea rcx, str.Stopped
jmp 0x1400ae01f
cmp r14d, 2
jne 0x1400adfc8
lea rcx, str.Start_Pending
jmp 0x1400ae01f
cmp r14d, 3
jne 0x1400adfd7
lea rcx, str.Stop_Pending
jmp 0x1400ae01f
cmp r14d, r13d
jne 0x1400adfe5
lea rcx, str.Running
jmp 0x1400ae01f
cmp r14d, 5
jne 0x1400adff4
lea rcx, str.Continue_Pending
jmp 0x1400ae01f
cmp r14d, 6
jne 0x1400ae003
lea rcx, str.Pause_Pending
jmp 0x1400ae01f
cmp r14d, 7
jne 0x1400ae012
lea rcx, str.Paused
jmp 0x1400ae01f
cmp r14d, 0x64
jne 0x1400ae024
lea rcx, str.Not_installed
call fcn.1400010e4
mov rax, qword [rdi - 0x18]
shr rax, 3
test eax, eax
jle 0x1400ae04d
mov r15, rdi
mov rcx, qword [r15]
call fcn.14008f7f8
add ebx, esi
lea r15, [r15 + 8]
mov rax, qword [rdi - 0x18]
shr rax, 3
cmp ebx, eax
jl 0x1400ae033
mov ebx, r14d
jmp 0x1400ae9af
cmp r14d, esi
jle 0x1400ae3d2
lea rdx, str.start
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
je 0x1400ae086
lea rdx, str._start
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
jne 0x1400ae0c0
call fcn.1400acf9c
test eax, eax
jne 0x1400ae09b
lea rcx, str.Failed_to_start_mesh_agent
jmp 0x1400ae7f4
cmp eax, esi
jne 0x1400ae0ab
lea rcx, str.Started_the_mesh_agent
jmp 0x1400ae7f4
cmp eax, 2
jne 0x1400ae88a
lea rcx, str.Mesh_agent_already_running
jmp 0x1400ae7f4
cmp r14d, esi
jle 0x1400ae3d2
lea rdx, str.stop
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
je 0x1400ae0f1
lea rdx, str._stop
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
jne 0x1400ae112
call fcn.1400ad058
cmp eax, esi
jne 0x1400ae106
lea rcx, str.Stopped_mesh_agent
jmp 0x1400ae7f4
lea rcx, str.Failed_to_stop_mesh_agent
jmp 0x1400ae7f4
cmp r14d, esi
jle 0x1400ae3d2
lea rdx, str.restart
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
je 0x1400ae143
lea rdx, str._restart
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
jne 0x1400ae182
call fcn.1400ad058
call fcn.1400acf9c
test eax, eax
jne 0x1400ae15d
lea rcx, str.Failed_to_restart_mesh_agent
jmp 0x1400ae7f4
cmp eax, esi
jne 0x1400ae16d
lea rcx, str.Restarted_the_mesh_agent
jmp 0x1400ae7f4
cmp eax, 2
jne 0x1400ae88a
lea rcx, str.Mesh_agent_failed_to_stop
jmp 0x1400ae7f4
cmp r14d, esi
jle 0x1400ae3d2
mov rax, qword [rdi + 8]
mov rcx, qword [rax]
cmp rcx, qword [str._update:]
jne 0x1400ae2df
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov r12d, 0x400
mov ecx, r12d
call fcn.14008f9f4
mov r15, rax
mov rcx, qword [rdi + 8]
cmp byte [rcx + 8], 0x2a
jne 0x1400ae204
cmp r14d, 2
jle 0x1400ae1ce
mov rax, qword [rdi + 0x10]
jmp 0x1400ae1d5
lea rax, str.null
lea r8, str.true
lea r9, str.false
cmp byte [rcx + 9], 0x53
cmove r9, r8
mov qword [rsp + 0x20], rax
lea r8, str.require_agent_installer_.update__s___s__
mov rdx, r12
mov rcx, r15
call fcn.140001138
jmp 0x1400ae25c
cmp r14d, 2
jle 0x1400ae24a
lea rdx, [0x140252868]
mov rcx, qword [rdi + 0x10]
call fcn.1401d6760
test eax, eax
je 0x1400ae232
lea rdx, str.connect
mov rcx, qword [rdi + 0x10]
call fcn.1401d6760
test eax, eax
jne 0x1400ae24a
mov r9, qword [rdi + 0x10]
lea r8, str.require_agent_installer_.update_false____s___
mov rdx, r12
mov rcx, r15
call fcn.140001138
jmp 0x1400ae25c
lea r8, str.require_agent_installer_.update_true__
mov rdx, r12
mov rcx, r15
call fcn.140001138
mov r12d, eax
xor ecx, ecx
call fcn.140008074
mov qword [0x1402c0650], rax
mov qword [rax + 0x20], r15
mov dword [rax + 0x28], r12d
mov r8, rdi
mov edx, r14d
call fcn.14000bbf8
mov rax, qword [0x1402c0650]
mov r15d, dword [rax + 0xba4]
mov dword [rsp + 0x74], r15d
call fcn.14000c300
mov qword [0x1402c0650], rbx
mov rax, qword [rdi - 0x18]
shr rax, 3
test eax, eax
jle 0x1400ae9ac
mov r14, rdi
mov rcx, qword [r14]
call fcn.14008f7f8
add ebx, esi
lea r14, [r14 + 8]
mov rax, qword [rdi - 0x18]
shr rax, 3
cmp ebx, eax
jl 0x1400ae2b2
jmp 0x1400ae9ac
cmp r14d, esi
jle 0x1400ae3d2
lea rdx, str._netinfo
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
jne 0x1400ae31d
lea rcx, [rsp + 0x78]
call fcn.140010854
test eax, eax
jle 0x1400ae88a
mov rcx, qword [rsp + 0x78]
call fcn.1400acb28
jmp 0x1400ae88a
cmp r14d, esi
jle 0x1400ae3d2
lea rdx, str._setfirewall
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
jne 0x1400ae381
mov r8d, 0x104
lea rdx, [rsp + 0x670]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
call fcn.1400acb7c
test eax, eax
jne 0x1400ae365
lea rcx, str.Must_run_as_administrator
jmp 0x1400ae7f4
lea rcx, [rsp + 0x670]
call fcn.1400ac8a4
lea rcx, [rsp + 0x670]
call fcn.1400ac418
jmp 0x1400ae3c6
cmp r14d, esi
jle 0x1400ae3d2
lea rdx, str._clearfirewall
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
jne 0x1400ae3d2
mov r8d, 0x104
lea rdx, [rsp + 0x670]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
call fcn.1400acb7c
test eax, eax
je 0x1400ae359
lea rcx, [rsp + 0x670]
call fcn.1400ac8a4
lea rcx, str.Done
jmp 0x1400ae7f4
cmp r14d, 2
jne 0x1400ae4aa
lea rdx, str._resetnodeid
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
jne 0x1400ae4aa
lea rax, [rsp + 0x58]
mov qword [rsp + 0x20], rax
mov r9d, 0x20006
xor r8d, r8d
lea rdx, [0x140252370]
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x1400ae467
mov dword [rsp + 0x6c], esi
mov dword [rsp + 0x28], r13d
lea rax, [rsp + 0x6c]
mov qword [rsp + 0x20], rax
mov r9d, r13d
xor r8d, r8d
lea rdx, str.ResetNodeId
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.ADVAPI32.dll_RegSetValueExA]
test eax, eax
jne 0x1400ae45a
lea rcx, str.NodeID_will_be_reset_next_time_the_Mesh_Agent_service_is_started.
call fcn.1400010e4
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x1400ae473
lea rcx, str.Error_writing_to_registry__try_running_as_administrator.
call fcn.1400010e4
mov r15d, ebx
mov rax, qword [rdi - 0x18]
shr rax, 3
test eax, eax
jle 0x1400ae9af
mov r14, rdi
mov rcx, qword [r14]
call fcn.14008f7f8
add r15d, esi
lea r14, [r14 + 8]
mov rax, qword [rdi - 0x18]
shr rax, 3
cmp r15d, eax
jl 0x1400ae489
jmp 0x1400ae9af
mov r15d, ebx
lea rax, str.Mesh_Agent_background_service
mov qword [rsp + 0x600], rax
lea rax, [0x1400acd70]
mov qword [rsp + 0x608], rax
mov qword [rsp + 0x610], rbx
mov qword [rsp + 0x618], rbx
mov dword [0x1402c08c0], r14d
mov qword [0x1402c08b8], rdi
lea rcx, [rsp + 0x600]
call qword [sym.imp.ADVAPI32.dll_StartServiceCtrlDispatcherA]
test eax, eax
jne 0x1400ae88a
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x427
jne 0x1400ae88a
cmp r14d, 2
jl 0x1400ae70c
mov dword [rsp + 0x20], esi
mov r9d, 3
lea r8, [0x140252b6c]
mov rdx, r12
mov rcx, qword [rdi + 8]
call fcn.140097370
test eax, eax
jne 0x1400ae559
mov dword [rsp + 0x20], esi
mov r9, r13
lea r8, str..zip
mov rdx, r12
mov rcx, qword [rdi + 8]
call fcn.140097370
test eax, eax
je 0x1400ae5a7
mov edx, esi
lea rcx, [0x1400ad160]
call qword [sym.imp.KERNEL32.dll_SetConsoleCtrlHandler]
nop
xor ecx, ecx
call fcn.140008074
mov qword [0x1402c0650], rax
mov dword [rax + 0xbdc], esi
mov r8, rdi
mov edx, r14d
call fcn.14000bbf8
call fcn.14000c300
mov qword [0x1402c0650], rbx
jmp 0x1400ae88a
cmp r14d, 2
jne 0x1400ae70c
lea rdx, [0x14029b724]
mov rcx, qword [rdi + 8]
call fcn.1401d6760
test eax, eax
jne 0x1400ae6a8
mov r8d, 0x104
lea rdx, [rsp + 0xa90]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov r9d, 0x104
lea r8, [rsp + 0x880]
mov edx, r12d
lea rcx, [rsp + 0xa90]
call fcn.14008f074
xor ecx, ecx
call fcn.14008fe48
mov r14, rax
mov rcx, rax
call fcn.140092adc
call fcn.140082a50
mov rcx, rax
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x38], rbx
lea rax, [rsp + 0x880]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbx
mov r9, r14
xor r8d, r8d
xor edx, edx
call fcn.140082b38
mov r15, rax
mov r9d, 0xe88
lea rdx, str.require_util_language_.current.toUpperCase__.split___.join____
mov rcx, rax
call fcn.140019864
test eax, eax
jne 0x1400ae683
xor r8d, r8d
mov edx, r12d
mov rcx, r15
call fcn.14001be04
mov rdx, rax
lea rcx, str.Current_Language:__s_n
call fcn.1400010e4
mov rcx, r15
call fcn.140060cdc
mov dword [r14], 2
mov rcx, r14
call fcn.14009006c
mov rcx, r14
call fcn.140092b90
mov r14d, esi
mov r15d, esi
cmp r14d, 2
jne 0x1400ae70c
mov rcx, qword [rdi + 8]
mov rax, r12
inc rax
cmp byte [rcx + rax], bl
jne 0x1400ae6b5
cmp rax, 6
jbe 0x1400ae70c
mov r8d, 6
lea rdx, str._lang
call fcn.1401c9e70
test eax, eax
jne 0x1400ae70c
mov rcx, qword [rdi + 8]
inc r12
cmp byte [rcx + r12], bl
jne 0x1400ae6dd
mov rdx, r12
mov r9, rsi
lea r8, [0x14025202c]
call fcn.140097434
movsxd rcx, eax
inc rcx
add rcx, qword [rdi + 8]
mov qword [0x1402c0660], rcx
mov r14d, esi
cmp r14d, esi
je 0x1400ae7fe
lea rcx, str.Mesh_Agent_available_switches:_r_n
call fcn.1400010e4
lea rcx, str.__run_______________Start_as_a_console_agent._r_n
call fcn.1400010e4
lea rcx, str.__connect___________Start_as_a_temporary_console_agent._r_n
call fcn.1400010e4
lea rcx, str.__start_____________Start_the_service._r_n
call fcn.1400010e4
lea rcx, str.__restart___________Restart_the_service._r_n
call fcn.1400010e4
lea rcx, str.__stop______________Stop_the_service._r_n
call fcn.1400010e4
lea rcx, str.__state_____________Display_the_running_state_of_the_service._r_n
call fcn.1400010e4
lea rcx, str.___signcheck________Perform_self___check._r_n
call fcn.1400010e4
lea rcx, str.___install__________Install_the_service_from_this_location._r_n
call fcn.1400010e4
lea rcx, str.___uninstall________Remove_the_service_from_this_location._r_n
call fcn.1400010e4
lea rcx, str.___nodeid_t_t_tReturn_the_current_agent_identifier._r_n
call fcn.1400010e4
lea rcx, str.___resetnodeid______Reset_the_NodeID_next_time_the_service_is_started._r_n
call fcn.1400010e4
lea rcx, str.___fulluninstall____Stop_agent_and_clean_up_the_program_files_location._r_n
call fcn.1400010e4
lea rcx, str.___fullinstall______Copy_agent_into_program_files__install_and_launch._r_n
call fcn.1400010e4
lea rcx, [0x14025f0cc]
call fcn.1400010e4
lea rcx, str.____________________The_following_switches_can_be_specified_after__fullinstall:_r_n
call fcn.1400010e4
lea rcx, [0x14025f0cc]
call fcn.1400010e4
lea rcx, str._______WebProxy_http:__proxyhost:port_______Specify_an_HTTPS_proxy._r_n
call fcn.1400010e4
lea rcx, str._______agentName_alternate_name_____________Specify_an_alternate_name_to_be_provided_by_the_agent._r_n
call fcn.1400010e4
jmp 0x1400ae88a
test r15d, r15d
jne 0x1400ae88a
call qword [sym.imp.KERNEL32.dll_FreeConsole]
xor edx, edx
mov r8d, 0x800
lea rcx, str.Shcore.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryExA]
mov r14, rax
mov r15, rbx
test rax, rax
je 0x1400ae851
lea rdx, str.SetProcessDpiAwareness
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r15, rax
test rax, rax
jne 0x1400ae851
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov r14, rbx
test r15, r15
je 0x1400ae869
mov ecx, 2
call r15
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
jmp 0x1400ae86f
call qword [sym.imp.USER32.dll_SetProcessDPIAware]
mov qword [rsp + 0x20], rbx
lea r9, [0x1400aeb5c]
xor r8d, r8d
lea edx, [r8 + 0x67]
xor ecx, ecx
call qword [sym.imp.USER32.dll_DialogBoxParamW]
call qword [sym.imp.ole32.dll_CoUninitialize]
mov rax, qword [rdi - 0x18]
shr rax, 3
test eax, eax
jle 0x1400ad6c9
mov r14, rdi
mov rcx, qword [r14]
call fcn.14008f7f8
add ebx, esi
lea r14, [r14 + 8]
mov rax, qword [rdi - 0x18]
shr rax, 3
cmp ebx, eax
jl 0x1400ae8a3
jmp 0x1400ad6c9
mov edx, esi
lea rcx, [0x1400ad160]
call qword [sym.imp.KERNEL32.dll_SetConsoleCtrlHandler]
nop
mov r12d, ebx
mov dword [rsp + 0x70], ebx
cmp r14d, esi
jle 0x1400ae8fe
lea rdx, str.connect
mov rcx, qword [rdi + 8]
call fcn.1401d6244
mov ecx, 0x20
test eax, eax
cmove r12d, ecx
mov dword [rsp + 0x70], r12d
mov ecx, r12d
call fcn.140008074
mov qword [0x1402c0650], rax
mov rcx, qword [rsp + 0x50]
mov qword [rax + 0x20], rcx
mov dword [rax + 0x28], r15d
test rcx, rcx
jne 0x1400ae953
cmp r14d, esi
jle 0x1400ae959
lea rdx, [0x140252868]
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
je 0x1400ae94c
lea rdx, str.connect
mov rcx, qword [rdi + 8]
call fcn.1401d6244
test eax, eax
jne 0x1400ae959
mov rax, qword [0x1402c0650]
mov dword [rax + 0xbdc], esi
mov r8, rdi
mov edx, r14d
call fcn.14000bbf8
mov rax, qword [0x1402c0650]
mov r15d, dword [rax + 0xba4]
mov dword [rsp + 0x74], r15d
call fcn.14000c300
mov qword [0x1402c0650], rbx
mov rax, qword [rdi - 0x18]
shr rax, 3
test eax, eax
jle 0x1400ae9ac
mov r14, rdi
mov rcx, qword [r14]
call fcn.14008f7f8
add ebx, esi
lea r14, [r14 + 8]
mov rax, qword [rdi - 0x18]
shr rax, 3
cmp ebx, eax
jl 0x1400ae992
mov ebx, r15d
mov rcx, rdi
call fcn.14008f7f8
mov eax, ebx
jmp 0x1400ae9c9
mov rcx, qword [rsp + 0xca0]
xor rcx, rsp
call fcn.1401c2260
lea r11, [rsp + 0xcb0]
mov rbx, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret