Function at 0x14002cbe0
Capabilities:
Enumerate services

Disassembly:
mov rax, rsp
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x158]
sub rsp, 0x218
movaps xmmword [rax - 0x58], xmm6
movaps xmmword [rax - 0x68], xmm7
movaps xmmword [rax - 0x78], xmm8
movaps xmmword [rax - 0x88], xmm9
movaps xmmword [rax - 0x98], xmm10
mov rax, qword [0x1401f3030]
xor rax, rsp
mov qword [rbp + 0xb0], rax
mov edi, r9d
mov ebx, r8d
mov r13, rdx
mov qword [rbp + 0x50], rdx
mov r15, rcx
mov qword [rbp - 0x58], rcx
mov qword [rbp + 0x68], rdx
xor r12d, r12d
mov dword [rsp + 0x78], r12d
xorps xmm0, xmm0
movups xmmword [rdx], xmm0
mov qword [rdx], r12
mov qword [rdx + 8], r12
mov ecx, 0x98
call fcn.140149158
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [r13], rax
mov dword [rsp + 0x78], 1
mov rcx, qword [r15 + 8]
test rcx, rcx
je 0x14002d302
mov dword [rbp + 0x74], r12d
mov dword [rbp + 0x70], r12d
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x98], xmm1
mov eax, r12d
mov qword [rbp - 0x50], rax
mov qword [rbp + 0xa8], rax
mov qword [rsp + 0x48], r12
mov qword [rsp + 0x40], r12
lea rax, [rbp + 0x70]
mov qword [rsp + 0x38], rax
lea rax, [rbp + 0x74]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x20], r12
mov r9d, ebx
mov r8d, edi
xor edx, edx
call qword [sym.imp.ADVAPI32.dll_EnumServicesStatusExW]
test eax, eax
jne 0x14002d2c3
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xea
jne 0x14002d2c3
mov edx, dword [rbp + 0x74]
test rdx, rdx
je 0x14002cd14
lea r8, [rsp + 0x50]
lea rcx, [rbp + 0x98]
call fcn.14002deb0
mov rax, qword [rbp + 0xa8]
mov qword [rbp - 0x50], rax
mov rax, qword [rbp + 0xa0]
mov r14, qword [rbp + 0x98]
sub rax, r14
mov qword [rsp + 0x48], r12
mov qword [rsp + 0x40], r12
lea rcx, [rbp + 0x70]
mov qword [rsp + 0x38], rcx
lea rcx, [rbp + 0x74]
mov qword [rsp + 0x30], rcx
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], r14
mov r9d, ebx
mov r8d, edi
xor edx, edx
mov rcx, qword [r15 + 8]
call qword [sym.imp.ADVAPI32.dll_EnumServicesStatusExW]
test eax, eax
je 0x14002d2ca
mov rdi, r14
mov qword [rbp + 0x78], r12
mov qword [rbp + 0x88], r12
mov esi, 7
mov qword [rbp + 0x90], rsi
mov word [rbp + 0x78], r12w
mov eax, r12d
mov dword [rsp + 0x54], eax
cmp dword [rbp + 0x70], r12d
mov r12, qword [rbp + 0x78]
jbe 0x14002d285
nop dword [rax + rax]
test rdi, rdi
je 0x14002d26b
mov rdx, qword [rdi]
xor r13d, r13d
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x68], r13
mov qword [rsp + 0x70], 7
mov word [rsp + 0x58], r13w
mov r8, 0xffffffffffffffff
nop
inc r8
cmp word [rdx + r8*2], r13w
jne 0x14002cdd0
lea rcx, [rsp + 0x58]
call fcn.140020fa0
nop
lea r8, [rsp + 0x58]
lea rdx, [rbp - 0x78]
mov rcx, r15
call fcn.14002ba40
mov rbx, rax
lea rax, [rbp + 0x78]
cmp rax, rbx
je 0x14002ce64
cmp rsi, 8
jb 0x14002ce3e
lea rdx, [rsi*2 + 2]
mov rax, r12
cmp rdx, 0x1000
jb 0x14002ce36
add rdx, 0x27
mov r12, qword [r12 - 8]
sub rax, r12
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002d351
mov rcx, r12
call fcn.140149194
movups xmm0, xmmword [rbx]
movups xmmword [rbp + 0x78], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp + 0x88], xmm1
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], 7
mov word [rbx], r13w
mov r12, qword [rbp + 0x78]
mov rdx, qword [rbp - 0x60]
cmp rdx, 8
jb 0x14002cea4
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002ce9f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002d351
call fcn.140149194
mov qword [rbp - 0x68], r13
mov qword [rbp - 0x60], 7
mov word [rbp - 0x78], r13w
mov rdx, qword [rsp + 0x70]
cmp rdx, 8
jb 0x14002cef7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002cef2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002d357
call fcn.140149194
movups xmm9, xmmword [rdi + 0x10]
movups xmm10, xmmword [rdi + 0x20]
mov eax, dword [rdi + 0x30]
mov dword [rbp - 0x80], eax
mov rdx, qword [rdi + 8]
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x68], r13
mov qword [rsp + 0x70], 7
mov word [rsp + 0x58], r13w
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp word [rdx + r8*2], 0
jne 0x14002cf30
lea rcx, [rsp + 0x58]
call fcn.140020fa0
nop
mov rdx, qword [rdi]
mov qword [rbp - 0x78], r13
mov qword [rbp - 0x68], r13
mov qword [rbp - 0x60], 7
mov word [rbp - 0x78], r13w
mov r8, 0xffffffffffffffff
inc r8
cmp word [rdx + r8*2], 0
jne 0x14002cf65
lea rcx, [rbp - 0x78]
call fcn.140020fa0
nop
lea r15, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
setae byte [rsp + 0x51]
mov r14, qword [rbp - 0x78]
cmovae r15, r14
mov rsi, qword [rbp - 0x68]
cmp rsi, 8
jae 0x14002cfad
movups xmm8, xmmword [r15]
movaps xmmword [rbp - 0x40], xmm8
mov qword [rbp - 0x28], 7
jmp 0x14002cff2
mov rbx, rsi
or rbx, 7
movabs rax, 0x7ffffffffffffffe
cmp rbx, rax
cmova rbx, rax
lea rdx, [rbx + 1]
lea rcx, [rbp - 0x40]
call fcn.1400213c0
mov qword [rbp - 0x40], rax
lea r8, [rsi*2 + 2]
mov rdx, r15
mov rcx, rax
call fcn.14014b350
mov qword [rbp - 0x28], rbx
movaps xmm8, xmmword [rbp - 0x40]
mov qword [rbp - 0x30], rsi
mov qword [rbp - 0x20], r13
mov qword [rbp - 0x10], r13
mov qword [rbp - 8], r13
lea r13, [rsp + 0x58]
cmp qword [rsp + 0x70], 8
setae byte [rsp + 0x50]
mov rsi, qword [rsp + 0x58]
cmovae r13, rsi
mov r15, qword [rsp + 0x68]
cmp r15, 8
jae 0x14002d039
movups xmm7, xmmword [r13]
movaps xmmword [rbp - 0x20], xmm7
mov qword [rbp - 8], 7
jmp 0x14002d07d
mov rbx, r15
or rbx, 7
movabs rax, 0x7ffffffffffffffe
cmp rbx, rax
cmova rbx, rax
lea rdx, [rbx + 1]
lea rcx, [rbp - 0x20]
call fcn.1400213c0
mov qword [rbp - 0x20], rax
lea r8, [r15*2 + 2]
mov rdx, r13
mov rcx, rax
call fcn.14014b350
mov qword [rbp - 8], rbx
movaps xmm7, xmmword [rbp - 0x20]
mov qword [rbp - 0x10], r15
xor eax, eax
mov qword [rbp], rax
mov qword [rbp + 0x10], rax
mov qword [rbp + 0x18], rax
lea r15, [rbp + 0x78]
cmp qword [rbp + 0x90], 8
cmovae r15, r12
mov r13, qword [rbp + 0x88]
cmp r13, 8
jae 0x14002d0be
movups xmm6, xmmword [r15]
movaps xmmword [rbp], xmm6
mov qword [rbp + 0x18], 7
jmp 0x14002d104
mov rbx, r13
or rbx, 7
movabs rax, 0x7ffffffffffffffe
cmp rbx, rax
cmova rbx, rax
lea rdx, [rbx + 1]
lea rcx, [rbp]
call fcn.1400213c0
mov qword [rbp], rax
lea r8, [r13*2 + 2]
mov rdx, r15
mov rcx, rax
call fcn.14014b350
mov qword [rbp + 0x18], rbx
movaps xmm6, xmmword [rbp]
xor eax, eax
mov qword [rbp + 0x10], r13
movaps xmmword [rbp + 0x20], xmm9
movaps xmmword [rbp + 0x30], xmm10
mov r15d, dword [rbp - 0x80]
mov dword [rbp + 0x40], r15d
mov r13, qword [rbp + 0x50]
mov rbx, qword [r13]
movabs rcx, 0x1af286bca1af286
cmp qword [r13 + 8], rcx
je 0x14002d369
mov qword [rbp + 0x58], r13
mov qword [rbp + 0x60], rax
mov ecx, 0x98
call fcn.140149158
mov rcx, rax
xor edx, edx
movups xmmword [rax + 0x10], xmm8
movaps xmm0, xmmword [rbp - 0x30]
movups xmmword [rax + 0x20], xmm0
mov qword [rbp - 0x30], rdx
mov qword [rbp - 0x28], 7
mov word [rbp - 0x40], dx
movups xmmword [rax + 0x30], xmm7
movaps xmm0, xmmword [rbp - 0x10]
movups xmmword [rax + 0x40], xmm0
mov qword [rbp - 0x10], rdx
mov qword [rbp - 8], 7
mov word [rbp - 0x20], dx
movups xmmword [rax + 0x50], xmm6
movaps xmm0, xmmword [rbp + 0x10]
movups xmmword [rax + 0x60], xmm0
mov qword [rbp + 0x10], rdx
mov qword [rbp + 0x18], 7
mov word [rbp], dx
movups xmmword [rax + 0x70], xmm9
movups xmmword [rax + 0x80], xmm10
mov dword [rax + 0x90], r15d
inc qword [r13 + 8]
mov rax, qword [rbx + 8]
mov qword [rcx], rbx
mov qword [rcx + 8], rax
mov qword [rbp + 0x60], rdx
mov qword [rbx + 8], rcx
mov qword [rax], rcx
lea rcx, [rbp - 0x40]
call fcn.14002d380
nop
cmp byte [rsp + 0x51], 0
je 0x14002d21b
mov rdx, qword [rbp - 0x60]
lea rdx, [rdx*2 + 2]
mov rax, r14
cmp rdx, 0x1000
jb 0x14002d212
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002d35d
mov rcx, r14
call fcn.140149194
nop
cmp byte [rsp + 0x50], 0
je 0x14002d25c
mov rdx, qword [rsp + 0x70]
lea rdx, [rdx*2 + 2]
mov rax, rsi
cmp rdx, 0x1000
jb 0x14002d254
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002d363
mov rcx, rsi
call fcn.140149194
mov r15, qword [rbp - 0x58]
mov eax, dword [rsp + 0x54]
mov rsi, qword [rbp + 0x90]
add rdi, 0x38
inc eax
mov dword [rsp + 0x54], eax
cmp eax, dword [rbp + 0x70]
jb 0x14002cda0
mov r14, qword [rbp + 0x98]
cmp rsi, 8
jb 0x14002d2ca
lea rdx, [rsi*2 + 2]
mov rax, r12
cmp rdx, 0x1000
jb 0x14002d2b9
add rdx, 0x27
mov r12, qword [r12 - 8]
sub rax, r12
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002d34b
mov rcx, r12
call fcn.140149194
jmp 0x14002d2ca
mov r14, qword [rbp + 0x98]
test r14, r14
je 0x14002d302
mov rcx, qword [rbp - 0x50]
sub rcx, r14
mov rax, r14
cmp rcx, 0x1000
jb 0x14002d2f7
add rcx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002d345
mov rdx, rcx
mov rcx, r14
call fcn.140149194
mov rax, r13
mov rcx, qword [rbp + 0xb0]
xor rcx, rsp
call fcn.140149500
lea r11, [rsp + 0x218]
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm8, xmmword [r11 - 0x38]
movaps xmm9, xmmword [r11 - 0x48]
movaps xmm10, xmmword [r11 - 0x58]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.1401501d4
nop
call fcn.1401501d4
nop
call fcn.1401501d4
nop
call fcn.1401501d4
nop
call fcn.1401501d4
nop
call fcn.1401501d4
nop
lea rcx, str.list_too_long
call fcn.140120f84
int3