Function at 0x1400c8111
Capabilities:
Create service
Modify service
Persist via windows service
Start service

Disassembly:
push rbp
push r15
mov rax, reloc.WS2_32.dll_recv
sub rsp, 8
mov qword [rsp], 0
dec rax
jne 0x1400c811b
sub rsp, 0x28
call fcn.140008080
movsxd r15, dword [rsp + 0x50]
movsxd rax, dword [rsp + 0x50]
imul r15, rax
mov rax, r15
push rax
pop rax
mov dword [rsp + 0x50], eax
mov rax, gethostbyname
mov rax, rax
push rax
pop rcx
call fcn.1400a6226
movsxd r15, dword [0x140098bf4]
cmp r15, 2
jle 0x1400c820e
push 1
movsxd rax, dword [0x140098bf4]
mov rax, rax
push rax
pop rcx
pop rdx
call fcn.140003380
mov rax, rax
push rax
pop rax
mov dword [rsp + 0x28], eax
movsxd r15, dword [rsp + 0x28]
mov rbp, qword [0x1400990f8]
imul r15, r15, 0x18
add rbp, r15
mov rcx, qword [rbp + 8]
push rcx
sub rsp, 0x28
call fcn.140008320
add rsp, 0x28
pop rcx
push rax
sub rsp, 0x28
call fcn.1400080d0
add rsp, 0x28
lea rcx, [rsp + 0x40]
pop rdx
call fcn.140007fb0
movsxd r15, dword [rsp + 0x28]
mov rbp, qword [0x1400990f8]
imul r15, r15, 0x18
add rbp, r15
mov rcx, qword [rbp + 0x10]
push rcx
sub rsp, 0x28
call fcn.140008320
add rsp, 0x28
pop rcx
push rax
sub rsp, 0x28
call fcn.1400080d0
add rsp, 0x28
lea rcx, [rsp + 0x48]
pop rdx
call fcn.140007fb0
jmp 0x1400c8236
movabs rdx, str.Health_Key_Authentication_Protocol
lea rcx, [rsp + 0x38]
call fcn.1400081b0
movabs rdx, 0x14009564c
lea rcx, [rsp + 0x40]
call fcn.1400081b0
push rcx
sub rsp, 0x28
call fcn.140008320
add rsp, 0x28
pop rcx
push rax
sub rsp, 8
push rcx
sub rsp, 0x28
call fcn.140008320
add rsp, 0x28
pop rcx
push rax
push rcx
sub rsp, 0x20
call fcn.140008320
add rsp, 0x20
pop rcx
push rax
push rcx
sub rsp, 0x28
call fcn.140008320
add rsp, 0x28
pop rcx
push rax
push rcx
sub rsp, 0x20
call fcn.140008320
add rsp, 0x20
pop rcx
push rax
push rcx
sub rsp, 0x28
call fcn.140008320
add rsp, 0x28
pop rcx
push rax
pop rcx
sub rsp, 0x20
call fcn.1400028b0
add rsp, 0x20
push rax
call fcn.1400082e0
mov rdx, rax
pop rax
add qword [rsp], rdx
pop rcx
pop rdx
sub rsp, 0x20
call fcn.1400019a0
add rsp, 0x20
push rax
call fcn.1400082e0
mov rdx, rax
pop rax
add qword [rsp], rdx
pop rcx
pop rdx
sub rsp, 0x20
call fcn.140002380
add rsp, 0x28
lea rcx, [rsp + 0x80]
pop rdx
call fcn.140007fb0
push qword [rsp + 0x78]
movabs rcx, 0x140095028
pop rdx
call fcn.1400083b0
or rax, rax
jne 0x1400c8371
mov rcx, qword [rsp + 0x78]
push rcx
sub rsp, 0x28
call fcn.140008320
add rsp, 0x28
pop rcx
push rax
sub rsp, 0x28
call fcn.1400080d0
add rsp, 0x28
lea rcx, [0x140098b68]
pop rdx
call fcn.140007fb0
mov rax, qword [0x140098b68]
mov rax, rax
push rax
lea rbp, [rsp + 0x60]
pop rax
mov qword [rbp], rax
lea rax, [0x1400cee1d]
mov rax, rax
push rax
pop rax
mov qword [rbp + 8], rax
lea rax, [rsp + 0x58]
mov rax, rax
push rax
pop rcx
call sub.ADVAPI32.dll_StartServiceCtrlDispatcherW
jmp 0x1400c89bc
call fcn.1400ba039
mov dword [rsp + 0x48], 0
push rcx
sub rsp, 0x28
call fcn.140008320
add rsp, 0x28
pop rcx
push rax
push rcx
sub rsp, 0x20
call fcn.140008320
add rsp, 0x20
pop rcx
push rax
sub rsp, 0x20
call fcn.1400c8cea
add rsp, 0x28
push rcx
sub rsp, 0x20
call fcn.140008320
add rsp, 0x20
pop rcx
push rax
sub rsp, 8
push rcx
sub rsp, 0x20
call fcn.140008320
add rsp, 0x20
pop rcx
push rax
sub rsp, 0x20
call fcn.1400a4f47
add rsp, 0x30
pop rax
lea rcx, [rsp + 0x78]
pop rdx
call fcn.140007fb0
push rcx
sub rsp, 0x28
call fcn.140008320
add rsp, 0x28
pop rcx
push rax
sub rsp, 8
push qword [rsp + 0x80]
push rcx
sub rsp, 0x20
call fcn.140008320
add rsp, 0x20
pop rcx
push rax
push rcx
sub rsp, 0x28
call fcn.140008320
add rsp, 0x28
pop rcx
push rax
pop rcx
sub rsp, 0x20
call fcn.1400026b4
add rsp, 0x20
push rax
call fcn.1400082e0
mov rdx, rax
pop rax
add qword [rsp], rdx
pop rcx
pop rdx
sub rsp, 0x20
call fcn.140005340
add rsp, 0x28
pop rcx
push rax
sub rsp, 0x28
call fcn.1400d2d60
add rsp, 0x28
pop rax
and rax, rax
je 0x1400c8465
jmp 0x1400c848e
movsxd r15, dword [rsp + 0x48]
inc r15
mov rax, r15
push rax
pop rax
mov dword [rsp + 0x48], eax
movsxd r15, dword [rsp + 0x48]
cmp r15, 0xc8
jle 0x1400c8489
jmp 0x1400a24c9
jmp 0x1400c837e
push qword [rsp + 0x70]
pop rcx
call fcn.1400b92d1
push rcx
sub rsp, 0x28
call fcn.140008320
add rsp, 0x28
pop rcx
push rax
sub rsp, 8
push 0
push rcx
sub rsp, 0x20
call fcn.140008320
add rsp, 0x20
pop rcx
push rax
sub rsp, 8
push rcx
sub rsp, 0x20
call fcn.140008320
add rsp, 0x20
pop rcx
push rax
sub rsp, 0x20
call fcn.1400c8cea
add rsp, 0x30
movabs rcx, str.ntdll.dll
sub rsp, 0x20
call fcn.1400080d0
add rsp, 0x20
push rax
call fcn.1400082e0
mov rdx, rax
pop rax
add qword [rsp], rdx
pop rcx
pop rdx
sub rsp, 0x20
call fcn.140005c9c
add rsp, 0x28
pop rcx
push rax
sub rsp, 0x28
call fcn.1400d2d60
add rsp, 0x28
pop rax
mov qword [rsp + 0x80], rax
mov r15, qword [rsp + 0x80]
and r15, r15
jne 0x1400c8560
movabs rax, 0x140095c80
push rax
movabs rax, str._yyyy__mm__dd__hh:_ii:_ss
push rax
pop rcx
pop rdx
call fcn.140006d24
mov qword [rsp + 0x80], rax
push qword [rsp + 0x80]
push 0
push qword [rsp + 0x80]
pop rcx
pop rdx
pop r8
call fcn.140005f20
push qword [rsp + 0x80]
push 1
push qword [rsp + 0x80]
pop rcx
pop rdx
pop r8
call fcn.140005f20
push qword [rsp + 0x80]
push 2
push qword [rsp + 0x80]
pop rcx
pop rdx
pop r8
call fcn.140005f20
push rcx
sub rsp, 0x28
call fcn.140008320
add rsp, 0x28
pop rcx
push rax
push rcx
sub rsp, 0x20
call fcn.140008320
add rsp, 0x20
pop rcx
push rax
sub rsp, 0x20
call fcn.1400ce011
add rsp, 0x28
lea rcx, [0x140098b68]
pop rdx
call fcn.140007fb0
mov rcx, qword [rsp + 0x70]
push rcx
sub rsp, 0x28
call fcn.140008320
add rsp, 0x28
pop rcx
push rax
sub rsp, 0x28
call fcn.1400080d0
add rsp, 0x28
movabs rcx, 0x1400950d2
sub rsp, 0x28
call fcn.1400080d0
add rsp, 0x28
mov rcx, qword [0x140098b68]
sub rsp, 0x28
call fcn.1400080d0
add rsp, 0x28
lea rcx, [rsp + 0x78]
pop rdx
call fcn.140007fb0
push 2
push 0
push 0
pop rcx
pop rdx
pop r8
call sub.ADVAPI32.dll_OpenSCManagerW
mov qword [rsp + 0x88], rax
cmp qword [rsp + 0x88], 0
je 0x1400c8741
sub rsp, 8
push 0
push 0
push 0
push 0
push 0
mov rax, qword [rsp + 0xa0]
mov rax, rax
push rax
push 1
push 2
push reloc.WS2_32.dll_recv
push 0xf01ff
mov rax, qword [rsp + 0x90]
mov rax, rax
push rax
mov rax, qword [0x140098b68]
mov rax, rax
push rax
push qword [rsp + 0xf0]
pop rcx
pop rdx
pop r8
pop r9
sub rsp, 0x20
call sub.ADVAPI32.dll_CreateServiceW
add rsp, 0x70
mov qword [rsp + 0x90], rax
cmp qword [rsp + 0x90], 0
je 0x1400c8734
mov rax, qword [rsp + 0x40]
mov rax, rax
push rax
lea rbp, [rsp + 0x70]
pop rax
mov qword [rbp], rax
lea rax, [rsp + 0x68]
mov rax, rax
push rax
push 1
push qword [rsp + 0xa0]
pop rcx
pop rdx
pop r8
call sub.ADVAPI32.dll_ChangeServiceConfig2W
push qword [rsp + 0x90]
pop rcx
call sub.ADVAPI32.dll_CloseServiceHandle
push qword [rsp + 0x88]
pop rcx
call sub.ADVAPI32.dll_CloseServiceHandle
push 2
push 0
push 0
pop rcx
pop rdx
pop r8
call sub.ADVAPI32.dll_OpenSCManagerW
mov qword [rsp + 0x88], rax
cmp qword [rsp + 0x88], 0
je 0x1400c87d3
push 0xf01ff
mov rax, qword [0x140098b68]
mov rax, rax
push rax
push qword [rsp + 0x98]
pop rcx
pop rdx
pop r8
call sub.ADVAPI32.dll_OpenServiceW
mov qword [rsp + 0x90], rax
cmp qword [rsp + 0x90], 0
je 0x1400c87c6
push 0
push 0
push qword [rsp + 0xa0]
pop rcx
pop rdx
pop r8
call sub.ADVAPI32.dll_StartServiceW
push qword [rsp + 0x90]
pop rcx
call sub.ADVAPI32.dll_CloseServiceHandle
push qword [rsp + 0x88]
pop rcx
call sub.ADVAPI32.dll_CloseServiceHandle
push rcx
sub rsp, 0x28
call fcn.140008320
add rsp, 0x28
pop rcx
push rax
push rcx
sub rsp, 0x20
call fcn.140008320
add rsp, 0x20
pop rcx
push rax
sub rsp, 0x20
call fcn.1400c8cea
add rsp, 0x28
movabs rcx, str.wostmp_
sub rsp, 0x28
call fcn.1400080d0
add rsp, 0x28
lea rcx, [rsp + 0xa0]
pop rdx
call fcn.140007fb0
push qword [rsp + 0x98]
pop rcx
call fcn.140005364
push qword [rsp + 0x98]
pop rcx
call fcn.1400b0fe8
push rcx
sub rsp, 0x28
call fcn.140008320
add rsp, 0x28
pop rcx
push rax
sub rsp, 8
mov rcx, qword [rsp + 0xa8]
push rcx
sub rsp, 0x28
call fcn.140008320
add rsp, 0x28
pop rcx
push rax
sub rsp, 0x28
call fcn.1400080d0
add rsp, 0x28
movabs rcx, 0x140095196
sub rsp, 0x28
call fcn.1400080d0
add rsp, 0x28
sub rsp, 8
push 1
push 0x7fffffff
pop rcx
pop rdx
sub rsp, 0x20
call fcn.140003380
add rsp, 0x28
mov rax, rax
push rax
pop rcx
push rcx
sub rsp, 0x28
call fcn.140008320
add rsp, 0x28
pop rcx
push rax
push rcx
sub rsp, 0x20
call fcn.140008320
add rsp, 0x20
pop rcx
push rax
pop rdx
sub rsp, 0x20
call fcn.140002010
add rsp, 0x20
pop rax
movabs rcx, 0x140095196
sub rsp, 0x28
call fcn.1400080d0
add rsp, 0x28
sub rsp, 8
push 1
push 0x7fffffff
pop rcx
pop rdx
sub rsp, 0x20
call fcn.140003380
add rsp, 0x28
mov rax, rax
push rax
pop rcx
push rcx
sub rsp, 0x28
call fcn.140008320
add rsp, 0x28
pop rcx
push rax
push rcx
sub rsp, 0x20
call fcn.140008320
add rsp, 0x20
pop rcx
push rax
pop rdx
sub rsp, 0x20
call fcn.140002010
add rsp, 0x20
pop rax
call fcn.140008360
push rcx
sub rsp, 0x20
call fcn.140008320
add rsp, 0x20
pop rcx
push rax
push rcx
sub rsp, 0x28
call fcn.140008320
add rsp, 0x28
pop rcx
push rax
pop rcx
sub rsp, 0x20
call fcn.1400026b4
add rsp, 0x20
push rax
call fcn.1400082e0
mov rdx, rax
pop rax
add qword [rsp], rdx
push rax
call fcn.1400082e0
mov rdx, rax
pop rax
add qword [rsp + 8], rdx
pop rcx
pop rdx
sub rsp, 0x20
call fcn.140005f00
add rsp, 0x28
pop rcx
push rax
sub rsp, 0x28
call fcn.1400d2d60
add rsp, 0x28
pop rax
jmp 0x1400a24c9
xor rax, rax
push rax
mov rcx, qword [rsp + 0x80]
sub rsp, 0x28
call fcn.140008260
add rsp, 0x28
mov rcx, qword [rsp + 0xa0]
sub rsp, 0x28
call fcn.140008260
add rsp, 0x28
mov rcx, qword [rsp + 0x78]
sub rsp, 0x28
call fcn.140008260
add rsp, 0x28
mov rcx, qword [rsp + 0x40]
sub rsp, 0x28
call fcn.140008260
add rsp, 0x28
mov rcx, qword [rsp + 0x48]
sub rsp, 0x28
call fcn.140008260
add rsp, 0x28
pop rax
add rsp, 0xa8
pop r15
pop rbp
ret