Function at 0x1400f8ba0
Capabilities:
Check if file exists

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xd0]
sub rsp, 0x1d0
mov rax, qword [0x14057b900]
xor rax, rsp
mov qword [rbp + 0xc0], rax
mov r13, r8
mov r12, rdx
mov r14, rcx
xor r15d, r15d
mov dword [rsp + 0x40], r15d
mov dword [rsp + 0x28], r15d
mov qword [rsp + 0x20], r15
lea r9, str.2.5.4.3
xor r8d, r8d
lea edx, [r15 + 3]
mov rcx, r12
call qword [sym.imp.CRYPT32.dll_CertGetNameStringW]
cmp eax, 2
jae 0x1400f8e52
mov rbx, qword [r14 + 8]
test rbx, rbx
je 0x1400f8e4b
mov rax, qword [rbx]
mov rsi, qword [rax + 0x20]
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
mov edx, eax
lea rcx, [rbp - 0x68]
call fcn.1400f4110
nop
xor edx, edx
mov r8d, 0xf8
lea rcx, [rbp - 0x40]
call fcn.1403ec370
lea rcx, [rbp - 0x40]
call fcn.1400252f0
nop
lea rdx, [rbp - 0x68]
cmp qword [rbp - 0x50], 7
cmova rdx, qword [rbp - 0x68]
mov r8, qword [rbp - 0x58]
lea rcx, [rbp - 0x30]
call fcn.14001df00
lea rdx, str.__0x
mov rcx, rax
call fcn.140023f90
mov rcx, qword [rax]
movsxd rdx, dword [rcx + 4]
mov ecx, dword [rdx + rax + 0x18]
and ecx, 0xfffff9ff
bts ecx, 0xb
mov dword [rdx + rax + 0x18], ecx
mov edx, edi
mov rcx, rax
call fcn.14008ee00
mov rcx, rax
lea rdx, [0x1404e22dc]
call fcn.140023f90
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x60], 7
mov word [rsp + 0x48], r15w
mov dword [rsp + 0x40], 0x12
mov rcx, qword [rbp + 0x48]
mov eax, ecx
and al, 0x22
cmp al, 2
je 0x1400f8cf9
mov rax, qword [rbp + 0x18]
mov rdx, qword [rax]
test rdx, rdx
je 0x1400f8cf9
mov rax, qword [rbp - 8]
mov r9, qword [rax]
cmp rdx, qword [rbp + 0x40]
cmovb rdx, qword [rbp + 0x40]
jmp 0x1400f8d1c
test cl, 4
jne 0x1400f8d57
mov rax, qword [rbp + 0x10]
mov rdx, qword [rax]
test rdx, rdx
je 0x1400f8d57
mov rax, qword [rbp - 0x10]
mov r9, qword [rax]
mov rax, qword [rbp + 0x28]
movsxd rcx, dword [rax]
lea rdx, [rdx + rcx*2]
sub rdx, r9
mov rax, r9
sar rdx, 1
test rax, rax
je 0x1400f8d57
lea rcx, [rsp + 0x48]
cmp rdx, 7
ja 0x1400f8d51
mov qword [rsp + 0x58], rdx
lea rdi, [rdx + rdx]
mov r8, rdi
mov rdx, r9
call fcn.1403ebbf0
mov word [rsp + rdi + 0x48], r15w
jmp 0x1400f8d57
call fcn.140023ce0
nop
lea rcx, [rbp - 0x40]
call fcn.140024270
nop
mov rdx, qword [rbp - 0x50]
cmp rdx, 7
jbe 0x1400f8da1
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400f8d9c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400f903c
call fcn.14014f510
mov qword [rbp - 0x58], r15
mov qword [rbp - 0x50], 7
mov word [rbp - 0x68], r15w
lea rdx, [rsp + 0x48]
cmp qword [rsp + 0x60], 7
cmova rdx, qword [rsp + 0x48]
lea rax, [r14 + 0x10]
cmp qword [rax + 0x18], 7
jbe 0x1400f8dd1
mov rax, qword [rax]
mov qword [rsp + 0x38], rdx
lea r8, str.CertGetNameStringW_failed__last_error_ls
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 2
mov r9d, 0x190
lea r8, str.D:JenkinsworkspaceN_MBCommon_vs2022_srcmbcommonWVTSignatureVerifier.cpp
lea rdx, str.mb::common::crypto::WVTSignatureVerifier::GetSubjectCN
mov rcx, rbx
call rsi
nop
mov rdx, qword [rsp + 0x60]
cmp rdx, 7
jbe 0x1400f8e4b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400f8e46
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400f9042
call fcn.14014f510
xor al, al
jmp 0x1400f900c
xorps xmm0, xmm0
lea r15d, [rax + 1]
movdqu xmmword [rbp - 0x80], xmm0
xor eax, eax
mov qword [rbp - 0x70], rax
test r15, r15
je 0x1400f8ece
lea rsi, [r15 + r15]
cmp rsi, 0x1000
jb 0x1400f8e9f
lea rcx, [rsi + 0x27]
cmp rcx, rsi
jbe 0x1400f9048
call fcn.14014f518
test rax, rax
je 0x1400f9036
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x1400f8eaf
test rsi, rsi
je 0x1400f8eac
mov rcx, rsi
call fcn.14014f518
mov rdi, rax
mov qword [rbp - 0x80], rdi
lea rbx, [rsi + rdi]
mov qword [rbp - 0x70], rbx
mov r8, rsi
xor edx, edx
mov rcx, rdi
call fcn.1403ec370
mov qword [rbp - 0x78], rbx
jmp 0x1400f8ed2
mov rbx, qword [rbp - 0x78]
mov rdi, qword [rbp - 0x80]
sub rbx, rdi
sar rbx, 1
lea eax, [rbx - 1]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rdi
lea r9, str.2.5.4.3
xor r8d, r8d
lea edx, [r8 + 3]
mov rcx, r12
call qword [sym.imp.CRYPT32.dll_CertGetNameStringW]
cmp eax, 2
jae 0x1400f8fbd
mov rdi, qword [r14 + 8]
test rdi, rdi
je 0x1400f8fb8
mov rax, qword [rdi]
mov rbx, qword [rax + 0x20]
xor edx, edx
lea rcx, [rbp - 0x68]
call fcn.1400f4050
nop
cmp qword [rax + 0x18], 7
jbe 0x1400f8f32
mov rax, qword [rax]
lea rdx, [r14 + 0x10]
cmp qword [rdx + 0x18], 7
jbe 0x1400f8f40
mov rdx, qword [rdx]
mov qword [rsp + 0x38], rax
lea r8, str.CertGetNameStringW_failed__last_error_ls
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x28], rdx
mov dword [rsp + 0x20], 2
mov r9d, 0x197
lea r8, str.D:JenkinsworkspaceN_MBCommon_vs2022_srcmbcommonWVTSignatureVerifier.cpp
lea rdx, str.mb::common::crypto::WVTSignatureVerifier::GetSubjectCN
mov rcx, rdi
call rbx
nop
mov rdx, qword [rbp - 0x50]
cmp rdx, 7
jbe 0x1400f8fb8
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400f8fb3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400f904e
call fcn.14014f510
xor dil, dil
jmp 0x1400f8fcc
mov rdx, qword [rbp - 0x80]
mov rcx, r13
call fcn.14002cdf0
mov dil, 1
mov rcx, qword [rbp - 0x80]
test rcx, rcx
je 0x1400f9008
mov rdx, qword [rbp - 0x70]
sub rdx, rcx
sar rdx, 1
add rdx, rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400f9003
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400f9036
call fcn.14014f510
movzx eax, dil
mov rcx, qword [rbp + 0xc0]
xor rcx, rsp
call fcn.14014f4f0
mov rbx, qword [rsp + 0x228]
add rsp, 0x1d0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.14015fa1c
int3
call fcn.14015fa1c
int3
call fcn.14015fa1c
int3
call fcn.14001cd90
nop
call fcn.14015fa1c
nop
int3