Function at 0x1400672f0
Capabilities:
Modify service

Disassembly:
push rbp
push rsi
push rdi
lea rbp, [rsp - 0x47]
sub rsp, 0xf0
mov qword [rbp + 7], 0xfffffffffffffffe
mov qword [rsp + 0x120], rbx
mov rax, qword [0x1404680d8]
xor rax, rsp
mov qword [rbp + 0x3f], rax
mov edi, edx
mov rbx, rcx
xor esi, esi
mov dword [rbp - 0x49], esi
mov qword [rbp + 0x17], rsi
xor edx, edx
mov r8d, 0xf003f
xor ecx, ecx
call qword [sym.imp.ADVAPI32.dll_OpenSCManagerW]
mov qword [rbp + 0x17], rax
test rax, rax
jne 0x1400673fb
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, [rbp - 0x21]
call fcn.14004c3c0
nop
lea r9d, [rsi + 0x2f]
lea r8, str.Could_not_open_Service_Control_Manager__Error:
xor edx, edx
mov rcx, rax
call fcn.14003fa50
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x31], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x41], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x31], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 7
mov word [rax], si
mov ebx, 1
mov dword [rbp - 0x49], ebx
lea r8, [0x1403c461c]
lea rdx, [rbp - 0x41]
lea rcx, [rbp + 0x1f]
call fcn.1400440a0
nop
and ebx, 0xfffffffe
mov dword [rbp - 0x49], ebx
lea rcx, [rbp - 0x41]
call fcn.14000c340
nop
lea rcx, [rbp - 0x21]
call fcn.14000c340
lea rax, [rbp - 0x21]
mov qword [rbp + 0xf], rax
lea rdx, [rbp + 0x1f]
lea rcx, [rbp - 0x21]
call fcn.1400256d0
nop
mov rcx, rax
call fcn.14004c770
nop
lea rcx, [rbp + 0x1f]
call fcn.14000c340
xor bl, bl
jmp 0x1400675d9
mov qword [rbp + 0xf], rsi
cmp qword [rbx + 0x18], 8
jb 0x140067409
mov rbx, qword [rbx]
mov r8d, 3
mov rdx, rbx
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_OpenServiceW]
mov qword [rbp + 0xf], rax
test rax, rax
jne 0x1400674dc
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, [rbp - 0x21]
call fcn.14004c3c0
nop
mov r9d, 0x1f
lea r8, str.Could_not_open_service__Error:
xor edx, edx
mov rcx, rax
call fcn.14003fa50
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x31], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x41], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x31], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 7
mov word [rax], si
mov ebx, 4
mov dword [rbp - 0x49], ebx
lea r8, [0x1403c461c]
lea rdx, [rbp - 0x41]
lea rcx, [rbp + 0x1f]
call fcn.1400440a0
nop
and ebx, 0xfffffffb
mov dword [rbp - 0x49], ebx
lea rcx, [rbp - 0x41]
call fcn.14000c340
nop
lea rcx, [rbp - 0x21]
call fcn.14000c340
lea rax, [rbp - 0x21]
mov qword [rbp - 1], rax
lea rdx, [rbp + 0x1f]
lea rcx, [rbp - 0x21]
call fcn.1400256d0
nop
mov rcx, rax
call fcn.14004c770
nop
lea rcx, [rbp + 0x1f]
call fcn.14000c340
xor bl, bl
jmp 0x1400675cf
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rsi
mov r9d, 0xffffffff
mov r8d, edi
mov edx, r9d
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_ChangeServiceConfigA]
test eax, eax
jne 0x1400675cd
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, [rbp - 0x21]
call fcn.14004c3c0
nop
mov r9d, 7
lea r8, str.Error:
xor edx, edx
mov rcx, rax
call fcn.14003fa50
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x31], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x41], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x31], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 7
mov word [rax], si
mov ebx, reloc.WS2_32.dll_recv
mov dword [rbp - 0x49], ebx
lea r8, str._calling_ChangeServiceConfig
lea rdx, [rbp - 0x41]
lea rcx, [rbp + 0x1f]
call fcn.1400440a0
nop
and ebx, 0xffffffef
mov dword [rbp - 0x49], ebx
lea rcx, [rbp - 0x41]
call fcn.14000c340
nop
lea rcx, [rbp - 0x21]
call fcn.14000c340
lea rax, [rbp - 0x21]
mov qword [rbp - 1], rax
lea rdx, [rbp + 0x1f]
lea rcx, [rbp - 0x21]
call fcn.1400256d0
nop
mov rcx, rax
call fcn.14004c770
nop
lea rcx, [rbp + 0x1f]
call fcn.14000c340
xor bl, bl
jmp 0x1400675cf
mov bl, 1
lea rcx, [rbp + 0xf]
call fcn.1400baff0
nop
lea rcx, [rbp + 0x17]
call fcn.1400baff0
movzx eax, bl
mov rcx, qword [rbp + 0x3f]
xor rcx, rsp
call fcn.140282c10
mov rbx, qword [rsp + 0x120]
add rsp, 0xf0
pop rdi
pop rsi
pop rbp
ret