Function at 0x140002988
Capabilities:
Set current directory

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x1d8
mov r15, rdx
mov rax, qword [0x1401ee6a8]
xor rax, rsp
mov qword [rsp + 0x1d0], rax
mov bl, byte [rcx + 0x27]
test bl, bl
mov r12, qword [rcx + 0x18]
movzx esi, bl
mov rbp, rsi
cmovs rbp, r12
lea rdi, str.msedge.dll
test rbp, rbp
je 0x140002a5f
mov r13, rcx
lea r14, [rcx + 0x10]
lea rcx, str.service
call fcn.140184350
cmp rax, rbp
jne 0x140002a17
mov qword [rsp + 0x20], rbp
lea r9, str.service
mov rcx, r14
xor edx, edx
mov r8, 0xffffffffffffffff
call fcn.14002e51a
test eax, eax
je 0x140002a5f
mov bl, byte [r13 + 0x27]
mov r12, qword [r13 + 0x18]
movzx esi, bl
lea rcx, str.watcher
call fcn.140184350
test bl, bl
cmovs rsi, r12
cmp rax, rsi
jne 0x140002a5f
mov qword [rsp + 0x20], rax
lea r9, str.watcher
mov rcx, r14
xor edx, edx
mov r8, 0xffffffffffffffff
call fcn.14002e51a
test eax, eax
lea rax, str.msedge_watcher.dll
lea rdi, str.msedge.dll
cmove rdi, rax
cmp word [rdi], 0
je 0x140002a75
xor esi, esi
cmp word [rdi + rsi*2 + 2], 0
lea rsi, [rsi + 1]
jne 0x140002a67
jmp 0x140002a77
xor esi, esi
lea r14, [rsp + 0x1b8]
mov rcx, r14
call fcn.140034ac0
mov ecx, 2
mov rdx, r14
call fcn.14003e570
lea rcx, [0x14019e9fd]
lea rbx, [rsp + 0x190]
mov qword [rbx], rcx
call fcn.140184350
mov qword [rbx + 8], rax
lea r12, [rsp + 0x30]
mov rcx, r14
mov rdx, r12
mov r8, rbx
call fcn.140036f40
lea r8, [rsp + 0x180]
mov qword [r8], rdi
mov qword [r8 + 8], rsi
lea r14, [rsp + 0x1a0]
mov rcx, r12
mov rdx, r14
call fcn.140035ca0
mov rcx, r12
call fcn.140034b60
lea r12, [rsp + 0x30]
mov rcx, r12
mov rdx, r14
mov r8d, 0x21
call fcn.1400348b0
mov rcx, r12
call fcn.140050060
mov ebx, eax
mov rcx, r12
call fcn.140034a10
test bl, bl
je 0x140002b2c
lea rcx, [rsp + 0x30]
lea rdx, [rsp + 0x1a0]
call fcn.140034ae0
jmp 0x140002b4d
lea r8, [rsp + 0x170]
mov qword [r8], rdi
mov qword [r8 + 8], rsi
lea rcx, [rsp + 0x1b8]
lea rdx, [rsp + 0x30]
call fcn.140035ca0
lea rcx, [rsp + 0x1a0]
call fcn.140034b60
lea rcx, [rsp + 0x1b8]
call fcn.140034b60
lea rbx, [rsp + 0x30]
mov rcx, r15
mov rdx, rbx
call fcn.140034b90
mov rcx, rbx
call fcn.140034b60
movzx eax, byte [r15 + 0x17]
test al, al
jns 0x140002b8c
mov rax, qword [r15 + 8]
test rax, rax
je 0x140002c65
mov rcx, r15
mov rdx, rbx
call fcn.140035620
xor esi, esi
cmp byte [rsp + 0x47], sil
mov rcx, rbx
jns 0x140002bb1
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
mov rcx, rbx
call fcn.140034b60
movabs r8, 0x7fffffffffffffff
mov rcx, r15
mov dl, 1
call fcn.14004fd00
cmp byte [r15 + 0x17], sil
mov rcx, r15
jns 0x140002bdf
mov rcx, qword [r15]
xor edx, edx
mov r8d, 8
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rdi, rax
test rax, rax
jne 0x140002cc8
mov ecx, 2
call fcn.140038810
test al, al
je 0x140002cc6
call sub.KERNEL32.dll_GetLastError
mov dword [rsp + 0x20], eax
lea rdx, str..._.._chrome_app_main_dll_loader_win.cc
lea rdi, [rsp + 0x30]
mov rcx, rdi
mov r8d, 0x89
mov r9d, 2
call fcn.140039550
lea rcx, [rsp + 0x40]
lea rdx, str.Failed_to_load_Chrome_DLL_from
mov r8d, 0x1f
call fcn.140001e11
cmp byte [r15 + 0x17], 0
jns 0x140002c55
mov r15, qword [r15]
mov rcx, rax
mov rdx, r15
call fcn.1400396d0
mov rcx, rdi
jmp 0x140002cc1
mov ecx, 2
call fcn.140038810
test al, al
je 0x140002cc6
call sub.KERNEL32.dll_GetLastError
mov dword [rsp + 0x20], eax
lea rdx, str..._.._chrome_app_main_dll_loader_win.cc
lea rsi, [rsp + 0x30]
mov rcx, rsi
mov r8d, 0x84
mov r9d, 2
call fcn.140039550
lea rcx, [rsp + 0x40]
lea rdx, str.Cannot_find_module
mov r8d, 0x13
call fcn.140001e11
mov rcx, rax
mov rdx, rdi
call fcn.1400396d0
mov rcx, rsi
call fcn.140039620
xor edi, edi
mov rcx, qword [rsp + 0x1d0]
xor rcx, rsp
call fcn.140163e00
mov rax, rdi
add rsp, 0x1d8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret