Function at 0x1400072b0
Capabilities:
Check if file exists

Disassembly:
mov qword [rsp + 0x10], rdx
mov dword [rsp + 8], ecx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r15
mov rbp, rsp
sub rsp, 0x80
lea r8, str.SvcInit
mov dword [rbp - 0x20], 0x1b9
lea r13, str.c:users_scddocumentsmyworkproject__dynabooksystemdriverdsd_for_tos6208_v6dsd_branch_dev_6.01.0029.xxcentennial_rs5dynabookecoserviceecoserver_toshibasystemmodules.cpp
mov qword [rbp - 0x30], r8
lea rdi, str.__SvcInit_
mov qword [rbp - 0x28], r13
lea rbx, [0x1402a214c]
mov qword [rbp - 0x18], rdi
lea rdx, str.ENTER__s
mov qword [rbp - 0x10], rbx
lea rcx, [rbp - 0x28]
mov dword [rbp - 8], 3
call fcn.140008d50
xor r12d, r12d
xor r9d, r9d
xor r8d, r8d
mov dword [rbp + 0x40], r12d
xor ecx, ecx
lea edx, [r12 + 1]
call qword [sym.imp.KERNEL32.dll_CreateEventW]
lea rsi, str.SetSvcStatus
mov qword [rbp - 0x58], r13
mov qword [0x1416b9be0], rax
lea r15, str.__SetSvcStatus_
mov dword [rbp - 0x50], 0x97
lea rdx, str.ENTER__s
mov qword [rbp - 0x40], rbx
lea rcx, [rbp - 0x58]
mov dword [rbp - 0x38], 3
mov r8, rsi
mov qword [rbp - 0x60], rsi
mov qword [rbp - 0x48], r15
test rax, rax
je 0x14000759e
mov qword [rsp + 0xd0], r14
call fcn.140008d50
mov rcx, qword [0x1416b9be8]
lea rdx, [0x1416b9bc0]
mov dword [0x1416b9bc4], 4
mov qword [0x1416b9bc8], 0x41
mov qword [0x1416b9bd4], r12
call qword [sym.imp.ADVAPI32.dll_SetServiceStatus]
mov r8, qword [rbp - 0x60]
lea rdx, str.LEAVE__s
lea rcx, [rbp - 0x58]
call fcn.140008d50
lea rcx, [rbp + 0x40]
call fcn.140045720
lea rcx, str.C:Program_FilesTOSHIBATECOTeco.exe
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
mov r8d, dword [rbp + 0x40]
lea rdx, str.bCentennialVerExist___d
lea rcx, [rbp - 0x60]
mov qword [rbp - 0x60], r13
mov r14d, eax
mov dword [rbp - 0x58], 0x1ca
mov qword [rbp - 0x50], rdi
mov qword [rbp - 0x48], rbx
mov dword [rbp - 0x40], 3
call fcn.140008d50
mov r8d, r14d
mov qword [rbp - 0x60], r13
lea rdx, str.bEcoButtonExist___d
mov dword [rbp - 0x58], 0x1cb
lea rcx, [rbp - 0x60]
mov qword [rbp - 0x50], rdi
mov qword [rbp - 0x48], rbx
mov dword [rbp - 0x40], 3
call fcn.140008d50
mov ebx, r12d
call fcn.140003320
mov edi, eax
test eax, eax
jne 0x140007460
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
inc ebx
cmp ebx, 6
jl 0x140007443
lea rax, str.__SvcInit_
mov qword [rbp - 0x60], r13
lea rbx, [0x1402a214c]
mov qword [rbp - 0x50], rax
mov r8d, edi
mov qword [rbp - 0x48], rbx
lea rdx, str.MaintainReg___returned__d
mov dword [rbp - 0x58], 0x1d5
lea rcx, [rbp - 0x60]
mov dword [rbp - 0x40], 3
call fcn.140008d50
call fcn.1400097c0
call fcn.140003060
test eax, eax
jne 0x1400074b3
call fcn.140003a90
call fcn.140003170
mov ecx, dword [rbp + 0x40]
call fcn.1400436f0
mov ecx, dword [rbp + 0x40]
mov edx, r14d
call fcn.140007fe0
mov eax, dword [rbp + 0x40]
mov r14, qword [rsp + 0xd0]
mov dword [rbp + 0x48], eax
test eax, eax
jne 0x140007508
call fcn.140006d20
test eax, eax
jne 0x1400074ee
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x140007502
mov ecx, 0x1388
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rbp + 0x48]
call fcn.140045720
cmp dword [rbp + 0x48], r12d
je 0x1400074d8
test edi, edi
je 0x140007560
lea rcx, [0x1416b9cc0]
call fcn.140046ac0
cmp eax, 0x80004005
mov qword [rbp - 0x60], r13
lea rax, str.__SvcInit_
mov qword [rbp - 0x48], rbx
mov qword [rbp - 0x50], rax
lea rcx, [rbp - 0x60]
mov dword [rbp - 0x40], 3
jne 0x14000754d
mov dword [rbp - 0x58], 0x1ea
lea rdx, str.eco_service_create_failed.
jmp 0x14000755b
mov dword [rbp - 0x58], 0x1ee
lea rdx, str.eco_thread_create_suc.
call fcn.140008d50
mov rcx, qword [0x1416b9be0]
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov r8, rsi
mov qword [rbp - 0x60], rsi
lea rdx, str.ENTER__s
mov qword [rbp - 0x58], r13
lea rcx, [rbp - 0x58]
mov dword [rbp - 0x50], 0x97
mov qword [rbp - 0x48], r15
mov qword [rbp - 0x40], rbx
mov dword [rbp - 0x38], 3
call fcn.140008d50
mov rcx, qword [0x1416b9be8]
lea rdx, [0x1416b9bc0]
mov dword [0x1416b9bc4], 1
mov qword [0x1416b9bc8], 0x41
mov qword [0x1416b9bd4], r12
call qword [sym.imp.ADVAPI32.dll_SetServiceStatus]
mov r8, qword [rbp - 0x60]
lea rdx, str.LEAVE__s
lea rcx, [rbp - 0x58]
call fcn.140008d50
mov r8, qword [rbp - 0x30]
lea rdx, str.LEAVE__s
lea rcx, [rbp - 0x28]
call fcn.140008d50
add rsp, 0x80
pop r15
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret