Function at 0x1400ec390
Capabilities:
Create service
Persist via windows service

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x20], rbp
push rsi
push rdi
push r12
push r13
push r14
sub rsp, 0x6f0
mov rax, qword [0x14020cc08]
xor rax, rsp
mov qword [rsp + 0x6e0], rax
mov edi, ecx
xor ecx, ecx
mov r12, r8
mov r13, rdx
call fcn.1400ec080
lea rcx, str.install_service..._n
mov ebp, 0x1e
call fcn.1400b3e90
lea r8d, [rbp - 0x1c]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.ADVAPI32.dll_OpenSCManagerW]
test rax, rax
mov rsi, rax
je 0x1400ec659
xor r14d, r14d
nop
nop
lea rcx, [rsp + 0x2b0]
call fcn.1400012c0
lea rcx, [rsp + 0x70]
mov ebx, r14d
call fcn.1400012c0
lea rcx, [rsp + 0x190]
call fcn.1400012c0
lea rcx, [rsp + 0x190]
xor edx, edx
call fcn.1400d9a90
mov r8, qword [rsp + 0x198]
lea rdx, str.__s___svc
lea rcx, [rsp + 0x70]
call fcn.140178c40
test r13, r13
je 0x1400ec468
lea rdx, str.__svc_pipe_name___s_
lea rcx, [rsp + 0x70]
mov r8, r13
call fcn.140178e90
test r12, r12
je 0x1400ec481
lea rdx, str.__svc_security_descriptor___s_
lea rcx, [rsp + 0x70]
mov r8, r12
call fcn.140178e90
call fcn.1400ce2b0
test rax, rax
je 0x1400ec4a4
call fcn.1400ce2b0
lea rdx, str.__instance___s_
lea rcx, [rsp + 0x70]
mov r8, rax
call fcn.140178e90
lea rcx, [rsp + 0x190]
call fcn.140177510
mov rdx, qword [rsp + 0x78]
lea rcx, [rsp + 0x2b0]
call fcn.14017d970
lea rcx, [rsp + 0x70]
call fcn.140177510
lea rcx, [rsp + 0x70]
call fcn.1400012c0
lea rdx, [0x1401b4900]
lea rcx, [rsp + 0x70]
call fcn.140178250
call fcn.1400ce2b0
test rax, rax
je 0x1400ec50b
call fcn.1400ce2b0
lea rdx, str.___s_
lea rcx, [rsp + 0x70]
mov r8, rax
call fcn.140178e90
mov r8, qword [rsp + 0x78]
cmp byte [r8], bl
je 0x1400ec533
movzx eax, byte [r8]
cmp al, 0x5c
je 0x1400ec521
cmp al, 0x2f
jne 0x1400ec525
mov byte [r8], 0x20
add r8, 1
cmp byte [r8], bl
jne 0x1400ec515
mov r8, qword [rsp + 0x78]
lea rcx, [rsp + 0x4d0]
mov edx, 0x101
call fcn.14017c8b0
lea rcx, [rsp + 0x70]
call fcn.140177510
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x60], r14
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], r14d
lea r8, [rsp + 0x4d0]
lea rdx, [rsp + 0x4d0]
mov r9d, 2
mov rcx, rsi
mov dword [rsp + 0x28], 2
mov dword [rsp + 0x20], reloc.WS2_32.dll_recv
call qword [sym.imp.ADVAPI32.dll_CreateServiceW]
test rax, rax
je 0x1400ec5c0
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov ecx, edi
call fcn.1400ebbb0
jmp 0x1400ec614
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x431
jne 0x1400ec5d6
mov ecx, edi
call fcn.1400ebbb0
jmp 0x1400ec614
test ebp, ebp
je 0x1400ec5ef
cmp eax, 0x430
jne 0x1400ec5ef
lea ecx, [rax - 0x48]
sub ebp, 1
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x1400ec619
test edi, edi
je 0x1400ec614
mov r8, qword [0x1402006b8]
mov edx, reloc.WS2_32.dll_recv
xor ecx, ecx
mov r9, qword [r8 + 0x2080]
mov r8, qword [r8]
mov dword [rsp + 0x20], eax
call fcn.1400d5ce0
mov ebx, 1
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
lea rcx, [rsp + 0x2b0]
call fcn.140177510
test ebx, ebx
jne 0x1400ec684
lea rcx, str.install_service..._n
call fcn.1400b3e90
lea r8d, [rbx + 2]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.ADVAPI32.dll_OpenSCManagerW]
test rax, rax
mov rsi, rax
jne 0x1400ec400
test edi, edi
je 0x1400ec684
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8, qword [0x1402006b8]
mov edx, reloc.WS2_32.dll_recv
mov r9, qword [r8 + 0x2088]
mov r8, qword [r8]
xor ecx, ecx
mov dword [rsp + 0x20], eax
call fcn.1400d5ce0
lea rcx, str.InstallService
mov edx, 1
call fcn.140146450
mov rcx, qword [rsp + 0x6e0]
xor rcx, rsp
call fcn.1401a8fd0
lea r11, [rsp + 0x6f0]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x48]
mov rsp, r11
pop r14
pop r13
pop r12
pop rdi
pop rsi
ret