Function at 0x140003a10
Capabilities:
Get common file path

Disassembly:
mov rax, rsp
push rbp
lea rbp, [rax - 0x528]
sub rsp, 0x620
mov qword [rbp + 8], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r14
mov rax, qword [0x1402b9ae8]
xor rax, rsp
mov qword [rbp + 0x510], rax
xor esi, esi
mov dword [rsp + 0x40], esi
call fcn.140004b70
mov r10, qword [rax]
lea rdi, str.mbtun.sys
mov qword [rsp + 0x38], rdi
lea rcx, str.Verifying_Tunnel_driver:__ls.
mov qword [rsp + 0x30], rcx
lea r14, str.MBVpnTunnelService
mov qword [rsp + 0x28], r14
mov dword [rsp + 0x20], 3
lea r9d, [rsi + 0x1b]
lea r8, str.d:jenkinsworkspace_n_mbvpntunnel_srcmbvpntunnelservicembtun.cpp
lea rdx, str.VerifyMBTunDriver
mov rcx, rax
call qword [r10 + 0x20]
xor edx, edx
mov r8d, 0x204
lea rcx, [rbp + 0x300]
call fcn.140190db0
mov edx, 0x102
lea rcx, [rbp + 0x300]
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
test eax, eax
jne 0x140003b15
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
call fcn.140004b70
mov r10, qword [rax]
mov dword [rsp + 0x38], ebx
lea rcx, str.Error__lu_calling_GetSystemDirectory__cannot_verify_tunnel_driver_file.
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], r14
mov dword [rsp + 0x20], 1
lea r9d, [rsi + 0x23]
lea r8, str.d:jenkinsworkspace_n_mbvpntunnel_srcmbvpntunnelservicembtun.cpp
lea rdx, str.VerifyMBTunDriver
mov rcx, rax
call qword [r10 + 0x20]
xor al, al
jmp 0x1400044d9
movdqa xmm0, xmmword [0x140288fb0]
movdqu xmmword [rbp + 0xa0], xmm0
mov word [rbp + 0x90], si
lea rdx, [rbp + 0x300]
lea rcx, [rbp + 0x90]
call fcn.140003570
nop
movdqa xmm0, xmmword [0x140288fb0]
movdqu xmmword [rsp + 0x58], xmm0
mov word [rsp + 0x48], si
lea rdx, str.DriverStoreFileRepositorymbtun.inf
lea rcx, [rsp + 0x48]
call fcn.140003570
nop
movdqa xmm0, xmmword [0x140288fb0]
movdqu xmmword [rbp + 0x40], xmm0
mov word [rbp + 0x30], si
lea r8, [rbp + 0x30]
lea rdx, [rsp + 0x48]
lea rcx, [rbp + 0x90]
call fcn.14001dcc0
mov rdx, rax
lea rcx, [rbp + 0x70]
call fcn.14000e620
nop
mov rdx, qword [rbp + 0x48]
cmp rdx, 8
jb 0x140003bd9
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003bd3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000450b
call fcn.14018e2f4
nop
mov rdx, qword [rsp + 0x60]
cmp rdx, 8
jb 0x140003c1b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003c16
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004511
call fcn.14018e2f4
movdqa xmm0, xmmword [0x140288fb0]
movdqu xmmword [rsp + 0x58], xmm0
mov word [rsp + 0x48], si
lea rcx, [rbp + 0x70]
cmp qword [rbp + 0x88], 8
cmovae rcx, qword [rbp + 0x70]
lea rdx, [rbp + 0xb0]
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov rbx, rax
cmp rax, 0xffffffffffffffff
je 0x140004404
movdqa xmm0, xmmword [0x140288fb0]
movdqu xmmword [rbp - 0x68], xmm0
mov word [rbp - 0x78], si
lea rdx, str.DriverStoreFileRepository
lea rcx, [rbp - 0x78]
call fcn.140003570
nop
movdqa xmm0, xmmword [0x140288fb0]
movdqu xmmword [rbp + 0x40], xmm0
mov word [rbp + 0x30], si
lea r8, [rbp + 0x30]
lea rdx, [rbp - 0x78]
lea rcx, [rbp + 0x90]
call fcn.14001dcc0
mov rdx, rax
lea rcx, [rbp + 0x50]
call fcn.14000e620
nop
mov rdx, qword [rbp + 0x48]
cmp rdx, 8
jb 0x140003cee
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003ce8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004517
call fcn.14018e2f4
nop
mov rdx, qword [rbp - 0x60]
cmp rdx, 8
jb 0x140003d2e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003d29
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000451d
call fcn.14018e2f4
movdqa xmm0, xmmword [0x140288fb0]
movdqu xmmword [rbp - 0x68], xmm0
mov word [rbp - 0x78], si
movdqu xmmword [rbp + 0x20], xmm0
mov word [rbp + 0x10], si
lea rdx, [rbp + 0xdc]
lea rcx, [rbp + 0x10]
call fcn.140003570
nop
movdqa xmm0, xmmword [0x140288fb0]
movdqu xmmword [rbp + 0x40], xmm0
mov word [rbp + 0x30], si
lea r8, [rbp + 0x30]
lea rdx, [rbp + 0x10]
lea rcx, [rbp + 0x50]
call fcn.14001dcc0
mov rdx, rax
lea rcx, [rsp + 0x68]
call fcn.14000e620
nop
mov rdx, qword [rbp + 0x48]
cmp rdx, 8
jb 0x140003dc9
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003dc4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004523
call fcn.14018e2f4
lea rcx, [rbp + 0x50]
call fcn.140003950
movups xmm0, xmmword [rsp + 0x68]
movups xmmword [rbp + 0x50], xmm0
movups xmm1, xmmword [rsp + 0x78]
movups xmmword [rbp + 0x60], xmm1
mov rdx, qword [rbp + 0x28]
cmp rdx, 8
jb 0x140003e24
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003e1f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004529
call fcn.14018e2f4
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FindClose]
movdqa xmm0, xmmword [0x140288fb0]
movdqu xmmword [rbp + 0x40], xmm0
mov word [rbp + 0x30], si
mov rdx, rdi
lea rcx, [rbp + 0x30]
call fcn.140003570
nop
mov dword [rsp + 0x40], 0x1c1
movdqa xmm0, xmmword [0x140288fb0]
movdqu xmmword [rbp + 0x20], xmm0
mov word [rbp + 0x10], si
lea r8, [rbp + 0x10]
lea rdx, [rbp + 0x30]
lea rcx, [rbp + 0x50]
call fcn.14001dcc0
mov rdx, rax
lea rcx, [rsp + 0x68]
call fcn.14000e620
nop
mov rdx, qword [rbp + 0x28]
cmp rdx, 8
jb 0x140003ec3
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003ebe
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000452f
call fcn.14018e2f4
movdqa xmm0, xmmword [0x140288fb0]
movdqu xmmword [rbp + 0x20], xmm0
mov word [rbp + 0x10], si
mov ebx, 0x3c3
mov dword [rsp + 0x40], ebx
cmp qword [rsp + 0x78], 0
je 0x140004104
lea rcx, [rsp + 0x68]
call fcn.140052f30
cmp eax, 0xffffffff
je 0x140003f04
lea rcx, [rsp + 0x68]
call fcn.140042b70
jmp 0x140003f1e
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 5
je 0x140003f1e
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x20
jne 0x140004104
movdqa xmm0, xmmword [0x140288fb0]
movdqu xmmword [rbp - 0x48], xmm0
mov word [rbp - 0x58], si
lea rdx, str.mbtun.cat
lea rcx, [rbp - 0x58]
call fcn.140003570
nop
mov dword [rsp + 0x40], 0x3c7
movdqa xmm0, xmmword [0x140288fb0]
movdqu xmmword [rbp + 0x20], xmm0
mov word [rbp + 0x10], si
lea r8, [rbp + 0x10]
lea rdx, [rbp - 0x58]
lea rcx, [rbp + 0x50]
call fcn.14001dcc0
mov rdx, rax
lea rcx, [rbp - 0x18]
call fcn.14000e620
nop
mov rdx, qword [rbp + 0x28]
cmp rdx, 8
jb 0x140003fb7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003fb2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004535
call fcn.14018e2f4
movdqa xmm0, xmmword [0x140288fb0]
movdqu xmmword [rbp + 0x20], xmm0
mov word [rbp + 0x10], si
mov ebx, 0x7cf
mov dword [rsp + 0x40], ebx
cmp qword [rbp - 8], 0
je 0x140004104
lea rcx, [rbp - 0x18]
call fcn.140052f30
cmp eax, 0xffffffff
je 0x140003ff5
lea rcx, [rbp - 0x18]
call fcn.140042b70
jmp 0x14000400f
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 5
je 0x14000400f
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x20
jne 0x140004104
movdqa xmm0, xmmword [0x140288fb0]
movdqu xmmword [rsp + 0x58], xmm0
mov word [rsp + 0x48], si
lea rdx, str.mbtun.inf
lea rcx, [rsp + 0x48]
call fcn.140003570
nop
mov dword [rsp + 0x40], 0x7df
movdqa xmm0, xmmword [0x140288fb0]
movdqu xmmword [rbp + 0x20], xmm0
mov word [rbp + 0x10], si
lea r8, [rbp + 0x10]
lea rdx, [rsp + 0x48]
lea rcx, [rbp + 0x50]
call fcn.14001dcc0
mov rdx, rax
lea rcx, [rbp - 0x38]
call fcn.14000e620
nop
mov rdx, qword [rbp + 0x28]
cmp rdx, 8
jb 0x1400040ac
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400040a7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000453b
call fcn.14018e2f4
movdqa xmm0, xmmword [0x140288fb0]
movdqu xmmword [rbp + 0x20], xmm0
mov word [rbp + 0x10], si
mov ebx, 0xfff
mov dword [rsp + 0x40], ebx
cmp qword [rbp - 0x28], 0
je 0x140004104
lea rcx, [rbp - 0x38]
call fcn.140052f30
cmp eax, 0xffffffff
je 0x1400040e9
lea rcx, [rbp - 0x38]
call fcn.140042b70
mov dil, 1
jmp 0x140004107
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 5
je 0x1400040ff
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x20
jne 0x140004104
mov dil, 1
jmp 0x140004107
xor dil, dil
test bl, 0x20
je 0x140004150
and ebx, 0xffffffdf
mov rdx, qword [rbp - 0x20]
cmp rdx, 8
jb 0x140004150
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000414a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004541
call fcn.14018e2f4
nop
test bl, 0x10
je 0x1400041ad
and ebx, 0xffffffef
mov rdx, qword [rsp + 0x60]
cmp rdx, 8
jb 0x14000419a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140004195
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004547
call fcn.14018e2f4
movdqa xmm0, xmmword [0x140288fb0]
movdqu xmmword [rsp + 0x58], xmm0
mov word [rsp + 0x48], si
test bl, 8
je 0x1400041f6
and ebx, 0xfffffff7
mov rdx, qword [rbp]
cmp rdx, 8
jb 0x1400041f6
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400041f0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000454d
call fcn.14018e2f4
nop
test bl, 4
je 0x14000424c
mov rdx, qword [rbp - 0x40]
cmp rdx, 8
jb 0x14000423b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140004236
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004553
call fcn.14018e2f4
movdqa xmm0, xmmword [0x140288fb0]
movdqu xmmword [rbp - 0x48], xmm0
mov word [rbp - 0x58], si
mov rdx, qword [rbp - 0x80]
cmp rdx, 8
jb 0x14000428e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140004288
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004559
call fcn.14018e2f4
nop
mov rdx, qword [rbp + 0x48]
cmp rdx, 8
jb 0x1400042ce
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400042c9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000455f
call fcn.14018e2f4
test dil, dil
je 0x140004372
mov rdx, qword [rbp + 0x68]
cmp rdx, 8
jb 0x140004317
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140004312
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004565
call fcn.14018e2f4
movdqa xmm0, xmmword [0x140288fb0]
movdqu xmmword [rbp + 0x60], xmm0
mov word [rbp + 0x50], si
mov rdx, qword [rbp + 0x88]
cmp rdx, 8
jb 0x14000436b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140004366
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000456b
call fcn.14018e2f4
mov bl, 1
jmp 0x140004494
call fcn.140004b70
lea rcx, [rbp + 0x50]
cmp qword [rbp + 0x68], 8
cmovae rcx, qword [rbp + 0x50]
mov r10, qword [rax]
mov qword [rsp + 0x38], rcx
lea rcx, str.Tunnel_driver_file_not_found_in_local_driver_store_repository:__ls.
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], r14
mov dword [rsp + 0x20], 3
mov r9d, 0x49
lea r8, str.d:jenkinsworkspace_n_mbvpntunnel_srcmbvpntunnelservicembtun.cpp
lea rdx, str.VerifyMBTunDriver
mov rcx, rax
call qword [r10 + 0x20]
nop
mov rdx, qword [rbp + 0x68]
cmp rdx, 8
jb 0x140004441
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400043fd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004571
call fcn.14018e2f4
jmp 0x140004441
call fcn.140004b70
mov r10, qword [rax]
lea rcx, str.Tunnel_driver_not_found_in_local_driver_store_repository.
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], r14
mov dword [rsp + 0x20], 3
mov r9d, 0x4e
lea r8, str.d:jenkinsworkspace_n_mbvpntunnel_srcmbvpntunnelservicembtun.cpp
lea rdx, str.VerifyMBTunDriver
mov rcx, rax
call qword [r10 + 0x18]
nop
mov rdx, qword [rbp + 0x88]
cmp rdx, 8
jb 0x140004484
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000447f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004577
call fcn.14018e2f4
mov r8d, 2
mov dl, 1
call fcn.140004580
movzx ebx, al
mov rdx, qword [rbp + 0xa8]
cmp rdx, 8
jb 0x1400044d6
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x90]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400044d1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004505
call fcn.14018e2f4
movzx eax, bl
mov rcx, qword [rbp + 0x510]
xor rcx, rsp
call fcn.14018e2d0
lea r11, [rsp + 0x620]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov r14, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret
call fcn.1401997dc
nop
call fcn.1401997dc
nop
call fcn.1401997dc
nop
call fcn.1401997dc
nop
call fcn.1401997dc
nop
call fcn.1401997dc
nop
call fcn.1401997dc
nop
call fcn.1401997dc
nop
call fcn.1401997dc
nop
call fcn.1401997dc
int3
call fcn.1401997dc
nop
call fcn.1401997dc
nop
call fcn.1401997dc
nop
call fcn.1401997dc
nop
call fcn.1401997dc
nop
call fcn.1401997dc
nop
call fcn.1401997dc
nop
call fcn.1401997dc
nop
call fcn.1401997dc
nop
call fcn.1401997dc
int3