Function at 0x1400b90d0
Capabilities:
Modify service

Disassembly:
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x1c0
mov r14, rdx
mov rbx, rcx
mov rax, qword [0x140274038]
xor rax, rsp
mov qword [rsp + 0x1b8], rax
xor ecx, ecx
xor edx, edx
mov r8d, 1
call qword [sym.imp.ADVAPI32.dll_OpenSCManagerW]
test rax, rax
je 0x1400b92d7
mov rsi, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
call fcn.1401552f0
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_SetLastError]
cmp byte [rbx + 0x17], 0
mov rdx, rbx
jns 0x1400b9132
mov rdx, qword [rbx]
mov rcx, rsi
mov r8d, 0xf01ff
call qword [sym.imp.ADVAPI32.dll_OpenServiceW]
test rax, rax
je 0x1400b92ed
mov rdi, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
call fcn.1401552f0
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rcx, rdi
call fcn.1400c1a00
test al, al
je 0x1400b9303
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x1b0], rax
movaps xmm0, xmmword [0x14023d7d0]
movaps xmmword [rsp + 0x1a0], xmm0
cmp byte [r14 + 0x17], 0
js 0x1400b92be
mov rax, qword [r14 + 0x10]
mov qword [rsp + 0x1b0], rax
movups xmm0, xmmword [r14]
movaps xmmword [rsp + 0x1a0], xmm0
movzx eax, byte [rsp + 0x1b7]
test al, al
jns 0x1400b9353
movabs rbx, 0x7fffffffffffffff
and rbx, qword [rsp + 0x1b0]
dec rbx
mov rax, qword [rsp + 0x1a8]
cmp rax, rbx
je 0x1400b952e
mov rcx, qword [rsp + 0x1a0]
lea rdx, [rax + 1]
mov qword [rsp + 0x1a8], rdx
mov dword [rcx + rax*2], 0
lea rbx, [rsp + 0x1a0]
movzx eax, byte [rbx + 0x17]
test al, al
cmovs eax, dword [rbx + 8]
lea rcx, [rsp + 0x190]
mov rdx, qword [rbx]
cmovns rdx, rbx
mov dword [rcx], 2
add eax, eax
mov dword [rcx + 4], eax
mov qword [rcx + 8], rdx
xor eax, eax
lea rdx, [rsp + 0x38]
mov qword [rdx + 0x10], rax
movabs r8, 0x100000014
mov qword [rdx], r8
lea r8, [0x140243da4]
mov qword [rdx + 8], r8
mov r9d, 1
mov dword [rdx + 0x10], r9d
mov qword [rdx + 0x18], rcx
xorps xmm0, xmm0
lea r8, [rsp + 0x170]
movaps xmmword [r8], xmm0
mov qword [r8 + 0x10], rax
mov dword [r8], r9d
mov qword [r8 + 8], rdx
mov rcx, rdi
mov edx, 8
call qword [sym.imp.ADVAPI32.dll_ChangeServiceConfig2W]
mov ebp, eax
cmp byte [rbx + 0x17], 0
jns 0x1400b92a5
mov rcx, qword [rsp + 0x1a0]
call fcn.14018bb78
mov bl, 1
test ebp, ebp
jne 0x1400b9317
mov ecx, 2
call fcn.1401551c0
test al, al
je 0x1400b9315
jmp 0x1400b946a
mov rdx, qword [r14]
mov r8, qword [r14 + 8]
lea rcx, [rsp + 0x1a0]
call fcn.1401443f0
jmp 0x1400b91b6
mov ecx, 2
call fcn.1401551c0
test al, al
jne 0x1400b9372
xor ebx, ebx
jmp 0x1400b9333
mov ecx, 2
call fcn.1401551c0
test al, al
jne 0x1400b949e
xor ebx, ebx
jmp 0x1400b9325
mov ecx, 2
call fcn.1401551c0
test al, al
jne 0x1400b93fd
xor ebx, ebx
call fcn.1401552f0
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
call fcn.1401552f0
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov rcx, qword [rsp + 0x1b8]
xor rcx, rsp
call fcn.14018d030
mov eax, ebx
add rsp, 0x1c0
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
ret
cmp eax, 0xa
je 0x1400b9529
lea edx, [rax + 1]
and dl, 0x7f
lea rcx, [rsp + 0x1a0]
mov byte [rcx + 0x17], dl
jmp 0x1400b9200
lea rdx, str....._bravecomponents_brave_vpn_browserconnectionikev2win_brave_vpn_helper_vpn_utils.cc
lea rsi, [rsp + 0x38]
mov rcx, rsi
mov r8d, 0x13a
mov r9d, 2
call fcn.1400db5c0
lea rcx, [rsp + 0x48]
lea rdx, str.::OpenSCManager_failed._service_name:
mov r8d, 0x26
call fcn.1401c6fd0
mov rcx, rax
mov rdx, rbx
call fcn.1400d5a70
lea rdx, str.__error:
mov r8d, 9
mov rcx, rax
call fcn.1401c6fd0
mov rdi, rax
mov rax, qword [rax]
movsxd rax, dword [rax + 4]
mov ecx, dword [rdi + rax + 8]
and ecx, 0xffffffb5
or ecx, 8
mov dword [rdi + rax + 8], ecx
call fcn.1400c19d0
mov rcx, rdi
mov edx, eax
call fcn.1400b4810
mov rcx, rsi
call fcn.1400dbbb0
jmp 0x1400b92e9
lea rdx, str....._bravecomponents_brave_vpn_browserconnectionikev2win_brave_vpn_helper_vpn_utils.cc
lea rbx, [rsp + 0x38]
mov rcx, rbx
mov r8d, 0x147
mov r9d, 2
call fcn.1400db5c0
lea rcx, [rsp + 0x48]
lea rdx, str.SetServiceFailureActions_failed:
mov r8d, 0x20
call fcn.1401c6fd0
mov r14, rax
mov rax, qword [rax]
movsxd rax, dword [rax + 4]
mov ecx, dword [r14 + rax + 8]
and ecx, 0xffffffb5
or ecx, 8
mov dword [r14 + rax + 8], ecx
call fcn.1400c19d0
mov rcx, r14
mov edx, eax
call fcn.1400b4810
mov rcx, rbx
call fcn.1400dbbb0
jmp 0x1400b9315
lea rdx, str....._bravecomponents_brave_vpn_browserconnectionikev2win_brave_vpn_helper_vpn_utils.cc
lea rbx, [rsp + 0x38]
mov rcx, rbx
mov r8d, 0x14c
mov r9d, 2
call fcn.1400db5c0
lea rcx, [rsp + 0x48]
lea rdx, str.SetServiceTriggerForVPNConnection_failed:
mov r8d, 0x29
jmp 0x1400b942f
lea rdx, str....._bravecomponents_brave_vpn_browserconnectionikev2win_brave_vpn_helper_vpn_utils.cc
lea rdi, [rsp + 0x38]
mov rcx, rdi
mov r8d, 0x141
mov r9d, 2
call fcn.1400db5c0
lea rcx, [rsp + 0x48]
lea rdx, str.::OpenService_failed._service_name:
mov r8d, 0x24
call fcn.1401c6fd0
mov rcx, rax
mov rdx, rbx
call fcn.1400d5a70
lea rdx, str.__error:
mov r8d, 9
mov rcx, rax
call fcn.1401c6fd0
mov rbx, rax
mov rax, qword [rax]
movsxd rax, dword [rax + 4]
mov ecx, dword [rbx + rax + 8]
and ecx, 0xffffffb5
or ecx, 8
mov dword [rbx + rax + 8], ecx
call fcn.1400c19d0
mov rcx, rbx
mov edx, eax
call fcn.1400b4810
mov rcx, rdi
call fcn.1400dbbb0
jmp 0x1400b92ff
mov ebx, 0xa
xorps xmm0, xmm0
movups xmmword [rsp + 0x28], xmm0
mov qword [rsp + 0x20], rbx
lea rcx, [rsp + 0x1a0]
mov r8d, 1
mov rdx, rbx
mov r9, rbx
call fcn.140135780
mov rax, rbx
jmp 0x1400b91ec