Function at 0x1400a6226
Capabilities:
Enumerate services

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push r15
mov rax, reloc.WS2_32.dll_recv
sub rsp, 8
mov qword [rsp], 0
dec rax
jne 0x1400a6235
sub rsp, 0x28
call fcn.140008080
movabs rdx, 0x140095028
lea rcx, [rsp + 0x68]
call fcn.1400081b0
movabs rdx, 0x140095028
lea rcx, [rsp + 0x70]
call fcn.1400081b0
movabs rdx, 0x140095028
lea rcx, [rsp + 0x78]
call fcn.1400081b0
sub rsp, 0x18
mov rdx, 1
lea rax, [rsp + 0xa8]
push rax
xor r9, r9
mov r8, 0x18
mov rcx, 1
sub rsp, 0x20
call fcn.1400078d0
add rsp, 0x40
mov qword [rsp + 0x90], rax
movabs rax, 0x80000004
push rax
push 0
push 0
pop rcx
pop rdx
pop r8
call sub.ADVAPI32.dll_OpenSCManagerW
mov qword [rsp + 0x28], rax
cmp qword [rsp + 0x28], 0
je 0x1400a6e61
mov dword [rsp + 0x38], 0
mov dword [rsp + 0x48], 0
mov dword [rsp + 0x50], 0
lea rax, [rsp + 0x38]
mov rax, rax
push rax
lea rax, [rsp + 0x58]
mov rax, rax
push rax
lea rax, [rsp + 0x58]
mov rax, rax
push rax
push 0
push 0
push 3
movsxd rax, dword [rsp + 0xf0]
mov rax, rax
push rax
push qword [rsp + 0x60]
pop rcx
pop rdx
pop r8
pop r9
sub rsp, 0x20
call sub.ADVAPI32.dll_EnumServicesStatusW
add rsp, 0x40
mov qword [rsp + 0x58], rax
movsxd r15, dword [rsp + 0x48]
and r15, r15
jle 0x1400a6e57
movsxd rax, dword [rsp + 0x48]
push rax
pop rax
mov dword [rsp + 0x40], eax
movsxd rax, dword [rsp + 0x40]
inc rax
lea rdx, [rsp + 0x90]
mov rcx, rax
call fcn.140007b34
push 0
movsxd rax, dword [rsp + 0x48]
mov rax, rax
push rax
mov rbp, qword [rsp + 0xa0]
lea rax, [rbp]
mov rax, rax
push rax
pop rcx
pop rdx
pop r8
call fcn.140007d10
mov dword [rsp + 0x38], 0
mov dword [rsp + 0x48], 0
mov dword [rsp + 0x50], 0
lea rax, [rsp + 0x38]
mov rax, rax
push rax
lea rax, [rsp + 0x58]
mov rax, rax
push rax
lea rax, [rsp + 0x58]
mov rax, rax
push rax
movsxd rax, dword [rsp + 0x58]
mov rax, rax
push rax
lea rax, [rbp]
mov rax, rax
push rax
push 3
movsxd rax, dword [rsp + 0xf0]
mov rax, rax
push rax
push qword [rsp + 0x60]
pop rcx
pop rdx
pop r8
pop r9
sub rsp, 0x20
call sub.ADVAPI32.dll_EnumServicesStatusW
add rsp, 0x40
mov qword [rsp + 0x58], rax
cmp qword [rsp + 0x58], 0
je 0x1400a6e57
movsxd r15, dword [rsp + 0x50]
and r15, r15
jle 0x1400a6e57
mov dword [rsp + 0x60], 0
mov rbp, qword [rsp + 0x90]
lea rax, [rbp]
mov qword [rsp + 0x30], rax
movsxd r15, dword [rsp + 0x60]
inc r15
mov rax, r15
push rax
pop rax
mov dword [rsp + 0x60], eax
mov rbp, qword [rsp + 0x30]
cmp qword [rbp], 0
je 0x1400a648c
mov rbp, qword [rsp + 0x30]
cmp qword [rbp + 8], 0
je 0x1400a648c
mov rax, 1
jmp 0x1400a648f
xor rax, rax
and rax, rax
je 0x1400a6e18
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 0x19
push 0xffffffffffffffff
mov rbp, qword [rsp + 0x68]
push qword [rbp]
pop rcx
pop rdx
pop r8
pop r9
sub rsp, 0x20
call fcn.140007e30
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 + 0x70]
pop rdx
call fcn.140007fb0
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 0x19
push 0xffffffffffffffff
mov rbp, qword [rsp + 0x68]
push qword [rbp + 8]
pop rcx
pop rdx
pop r8
pop r9
sub rsp, 0x20
call fcn.140007e30
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 + 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 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, 8
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
sub rsp, 8
push rcx
sub rsp, 0x28
call fcn.140008320
add rsp, 0x28
pop rcx
push rax
push 0x19
push 0xffffffffffffffff
mov rbp, qword [rsp + 0x88]
push qword [rbp]
pop rcx
pop rdx
pop r8
pop r9
sub rsp, 0x20
call fcn.140007e30
add rsp, 0x28
push rax
call fcn.1400082e0
mov rdx, rax
pop rax
add qword [rsp], rdx
pop rcx
sub rsp, 0x20
call fcn.1400b93c6
add rsp, 0x30
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 + 0x68]
movabs rcx, 0x140095028
pop rdx
call fcn.1400083b0
or rax, rax
jne 0x1400a66d0
push qword [rsp + 0x70]
movabs rcx, 0x140095028
pop rdx
call fcn.1400083b0
or rax, rax
jne 0x1400a66d0
mov rax, 1
jmp 0x1400a66d3
xor rax, rax
and rax, rax
je 0x1400a66fa
push qword [rsp + 0x78]
movabs rcx, 0x140095028
pop rdx
call fcn.1400083b0
or rax, rax
jne 0x1400a66fa
mov rax, 1
jmp 0x1400a66fd
xor rax, rax
and rax, rax
je 0x1400a67b9
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 qword [rsp + 0x88]
pop rcx
pop rdx
sub rsp, 0x20
call fcn.140002470
add rsp, 0x28
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
movabs rax, str.Shell_Hardware_Detection
push rax
pop rcx
pop rdx
sub rsp, 0x20
call fcn.140002470
add rsp, 0x20
pop rcx
sub rsp, 8
call fcn.140008380
add rsp, 8
mov rcx, rax
pop rdx
push rcx
mov rcx, rdx
sub rsp, 0x20
call fcn.140008380
add rsp, 0x20
pop rcx
mov rdx, rax
call fcn.1400083b0
or rax, rax
jne 0x1400a67b9
mov rax, 1
jmp 0x1400a67bc
xor rax, rax
and rax, rax
je 0x1400a6e18
movabs rax, 0x1400950d2
push rax
push qword [rsp + 0x78]
pop rcx
pop rdx
call fcn.140001850
mov r15, rax
cmp r15, 2
jl 0x1400a6e18
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
movabs rax, 0x1400950d2
push rax
push 1
push qword [rsp + 0xa8]
pop rcx
pop rdx
pop r8
pop r9
sub rsp, 0x20
call fcn.140002200
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 + 0x88]
pop rdx
call fcn.140007fb0
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
movabs rax, 0x1400950d2
push rax
push 2
push qword [rsp + 0xa8]
pop rcx
pop rdx
pop r8
pop r9
sub rsp, 0x20
call fcn.140002200
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 + 0x90]
pop rdx
call fcn.140007fb0
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
sub rsp, 8
push qword [rsp + 0xa0]
pop rcx
sub rsp, 0x20
call fcn.140001a30
add rsp, 0x28
mov r15, rax
sub rsp, 8
push qword [rsp + 0xb0]
pop rcx
sub rsp, 0x20
call fcn.140001a30
add rsp, 0x28
sub r15, rax
mov rax, r15
push rax
push qword [rsp + 0xb0]
pop rcx
sub rsp, 0x20
call fcn.140001a30
add rsp, 0x20
mov r15, rax
inc r15
mov rax, r15
push rax
push qword [rsp + 0xa8]
pop rcx
pop rdx
pop r8
pop r9
sub rsp, 0x20
call fcn.140001a50
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 + 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 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 1
push 1
push qword [rsp + 0xc0]
pop rcx
pop rdx
pop r8
pop r9
sub rsp, 0x20
call fcn.140001a50
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.140002470
add rsp, 0x28
lea rcx, [rsp + 0x88]
pop rdx
call fcn.140007fb0
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 qword [rsp + 0xa0]
pop rcx
pop rdx
sub rsp, 0x20
call fcn.140002470
add rsp, 0x28
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
movabs rax, 0x140096686
push rax
pop rcx
pop rdx
sub rsp, 0x20
call fcn.140002470
add rsp, 0x20
pop rcx
sub rsp, 8
call fcn.140008380
add rsp, 8
mov rcx, rax
pop rdx
push rcx
mov rcx, rdx
sub rsp, 0x20
call fcn.140008380
add rsp, 0x20
pop rcx
mov rdx, rax
call fcn.1400083b0
or rax, rax
jne 0x1400a6bef
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 qword [rsp + 0xa0]
pop rcx
pop rdx
sub rsp, 0x20
call fcn.140002470
add rsp, 0x28
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
movabs rax, 0x140095a2c
push rax
pop rcx
pop rdx
sub rsp, 0x20
call fcn.140002470
add rsp, 0x20
pop rcx
sub rsp, 8
call fcn.140008380
add rsp, 8
mov rcx, rax
pop rdx
push rcx
mov rcx, rdx
sub rsp, 0x20
call fcn.140008380
add rsp, 0x20
pop rcx
mov rdx, rax
call fcn.1400083b0
or rax, rax
jne 0x1400a6bef
mov rax, 1
jmp 0x1400a6bf2
xor rax, rax
and rax, rax
je 0x1400a6c85
push qword [rsp + 0x80]
pop rcx
call fcn.140001770
mov r15, rax
movabs rax, 0x14009519e
push rax
pop rcx
call fcn.140001770
cmp r15, rax
jl 0x1400a6c50
push qword [rsp + 0x80]
pop rcx
call fcn.140001770
mov r15, rax
movabs rax, str.Z
push rax
pop rcx
call fcn.140001770
cmp r15, rax
jg 0x1400a6c50
mov rax, 1
jmp 0x1400a6c53
xor rax, rax
and rax, rax
je 0x1400a6c74
push qword [rsp + 0x70]
pop rcx
call fcn.140001a30
mov r15, rax
cmp r15, 4
jle 0x1400a6c74
mov rax, 1
jmp 0x1400a6c77
xor rax, rax
and rax, rax
je 0x1400a6c85
mov rax, 1
jmp 0x1400a6c88
xor rax, rax
and rax, rax
je 0x1400a6e18
mov rcx, qword [rsp + 0x80]
push rcx
sub rsp, 0x28
call fcn.140008320
add rsp, 0x28
pop rcx
push rax
sub rsp, 0x28
call fcn.1400080d0
add rsp, 0x28
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
sub rsp, 8
push qword [rsp + 0x90]
pop rcx
sub rsp, 0x20
call fcn.140001a30
add rsp, 0x28
mov r15, rax
dec r15
mov rax, r15
push rax
push 2
push qword [rsp + 0x98]
pop rcx
pop rdx
pop r8
pop r9
sub rsp, 0x20
call fcn.140001a50
add rsp, 0x20
pop rax
lea rcx, [rsp + 0x78]
pop rdx
call fcn.140007fb0
mov rcx, qword [rsp + 0x68]
push rcx
sub rsp, 0x28
call fcn.140008320
add rsp, 0x28
pop rcx
push rax
sub rsp, 0x28
call fcn.1400080d0
add rsp, 0x28
movsxd r15, dword [0x140098bf4]
mov rbp, qword [0x1400990f8]
imul r15, r15, 0x18
add rbp, r15
lea rcx, [rbp]
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
movsxd r15, dword [0x140098bf4]
mov rbp, qword [0x1400990f8]
imul r15, r15, 0x18
add rbp, r15
lea rcx, [rbp + 8]
pop rdx
call fcn.140007fb0
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
movsxd r15, dword [0x140098bf4]
mov rbp, qword [0x1400990f8]
imul r15, r15, 0x18
add rbp, r15
lea rcx, [rbp + 0x10]
pop rdx
call fcn.140007fb0
movsxd r15, dword [0x140098bf4]
inc r15
mov rax, r15
push rax
pop rax
mov dword [0x140098bf4], eax
movsxd rax, dword [0x140098bf4]
inc rax
movabs rdx, 0x1400990f8
mov rcx, rax
call fcn.140007b34
mov r15, qword [rsp + 0x30]
add r15, 0x30
mov qword [rsp + 0x30], r15
movsxd r15, dword [rsp + 0x60]
cmp r15d, dword [rsp + 0x50]
jge 0x1400a6e42
movsxd r15, dword [rsp + 0x60]
cmp r15, 0x1f4
jg 0x1400a6e42
jmp 0x1400a6e4b
mov rax, 1
jmp 0x1400a6e4e
xor rax, rax
and rax, rax
je 0x1400a645a
push qword [rsp + 0x28]
pop rcx
call sub.ADVAPI32.dll_CloseServiceHandle
xor rax, rax
push rax
mov rcx, qword [rsp + 0x80]
sub rsp, 0x28
call fcn.140008260
add rsp, 0x28
mov rcx, qword [rsp + 0x88]
sub rsp, 0x28
call fcn.140008260
add rsp, 0x28
mov rcx, qword [rsp + 0x90]
sub rsp, 0x28
call fcn.140008260
add rsp, 0x28
mov rcx, qword [rsp + 0x70]
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 + 0x98]
sub rsp, 0x28
call fcn.140007abc
add rsp, 0x28
pop rax
add rsp, 0xa8
pop r15
pop rbp
ret