Function at 0x1400c5550
Capabilities:
Read file on windows

Disassembly:
push rbp
push rsi
push r14
sub rsp, 0x40
mov rsi, rdx
xor r14d, r14d
lea rdx, [0x1401a19d0]
mov dword [rsp + 0x68], r14d
mov rcx, qword [rsi + 0x10]
call fcn.1400d68a8
mov rbp, rax
test rax, rax
jne 0x1400c55a0
mov r9, qword [rsi + 0x10]
lea r8, str.Couldnt_open_file__s
lea rdx, str.stream_secure_channel
xor ecx, ecx
call fcn.140065c80
xor al, al
add rsp, 0x40
pop r14
pop rsi
pop rbp
ret
xor edx, edx
mov qword [rsp + 0x60], rbx
mov rcx, rbp
lea r8d, [rdx + 2]
call fcn.14003047c
mov rcx, rbp
call fcn.140042544
xor r8d, r8d
movsxd rbx, eax
xor edx, edx
mov rcx, rbp
call fcn.14003047c
cmp ebx, 1
jge 0x1400c55fc
mov r9, qword [rsi + 0x10]
lea r8, str.Couldnt_determine_file_size_of__s
lea rdx, str.stream_secure_channel
mov ecx, 2
call fcn.140065c80
mov rbx, qword [rsp + 0x60]
xor al, al
add rsp, 0x40
pop r14
pop rsi
pop rbp
ret
mov rcx, rbx
mov qword [rsp + 0x70], rdi
call fcn.14005a420
mov r9, rbp
mov r8, rbx
mov edx, 1
mov rcx, rax
mov rdi, rax
call fcn.140031e00
mov rcx, rbp
call fcn.14002fb08
lea rdx, str._____BEGIN_CERTIFICATE_____
mov rcx, rdi
call fcn.1400d2e4c
mov rdi, rax
test rax, rax
jne 0x1400c565d
mov r9, qword [rsi + 0x10]
lea r8, str.Couldnt_find_certificate_in__s
lea rdx, str.stream_secure_channel
lea ecx, [rax + 2]
call fcn.140065c80
jmp 0x1400c57a3
mov qword [rsp + 0x30], r14
lea rax, [rsp + 0x68]
mov qword [rsp + 0x28], r14
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x20], rax
xor edx, edx
mov rcx, rdi
call qword [sym.imp.CRYPT32.dll_CryptStringToBinaryA]
test eax, eax
jne 0x1400c56a9
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea r8, str.Failed_to_convert_BASE64_public_key._Error_0x_.8X
xor ecx, ecx
mov r9d, eax
lea rdx, str.stream_secure_channel
call fcn.140065c80
jmp 0x1400c57a3
mov edx, dword [rsp + 0x68]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_LocalAlloc]
mov qword [rsp + 0x30], r14
xor r8d, r8d
mov rbx, rax
mov qword [rsp + 0x28], r14
lea rax, [rsp + 0x68]
mov r9, rbx
xor edx, edx
mov qword [rsp + 0x20], rax
mov rcx, rdi
call qword [sym.imp.CRYPT32.dll_CryptStringToBinaryA]
test eax, eax
je 0x1400c5686
mov r8d, dword [rsp + 0x68]
mov rdx, rbx
mov ecx, 1
call qword [sym.imp.CRYPT32.dll_CertCreateCertificateContext]
mov rdi, rax
test rax, rax
jne 0x1400c5717
lea r8, str.Could_not_convert_certificate
lea rdx, str.stream_secure_channel
lea ecx, [rax + 2]
call fcn.140065c80
jmp 0x1400c57a3
xor r8d, r8d
lea rax, str.Root
mov r9d, 0x20000
mov qword [rsp + 0x20], rax
mov edx, 0x10001
lea ecx, [r8 + 0xa]
call qword [sym.imp.CRYPT32.dll_CertOpenStore]
mov rbx, rax
test rax, rax
jne 0x1400c575a
lea r8, str.Error_opening_certificate_store
xor ecx, ecx
lea rdx, str.stream_secure_channel
call fcn.140065c80
jmp 0x1400c57a3
xor r9d, r9d
mov rdx, rdi
mov rcx, rbx
lea r8d, [r9 + 2]
call qword [sym.imp.CRYPT32.dll_CertAddCertificateContextToStore]
test eax, eax
je 0x1400c5780
xor edx, edx
mov rcx, rbx
call qword [sym.imp.CRYPT32.dll_CertCloseStore]
mov al, 1
jmp 0x1400c57a5
lea r8, str.Failed_adding_the_cert
mov ecx, 2
lea rdx, str.stream_secure_channel
call fcn.140065c80
xor edx, edx
mov rcx, rbx
call qword [sym.imp.CRYPT32.dll_CertCloseStore]
xor al, al
mov rdi, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x60]
add rsp, 0x40
pop r14
pop rsi
pop rbp
ret