Function at 0x140098800
Capabilities:
Create new key via cryptacquirecontext

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r14
sub rsp, 0x70
xor r14d, r14d
mov edi, r8d
xor r8d, r8d
mov qword [rax - 0x48], r14
mov rbx, rcx
mov qword [rax - 0x40], r14
test r9b, r9b
lea rcx, [rax - 0x48]
lea r9d, [r14 + 1]
mov rsi, rdx
je 0x140098952
xor edx, edx
mov dword [rax - 0x58], 0xf0000000
call qword [sym.imp.ADVAPI32.dll_CryptAcquireContextW]
test eax, eax
jne 0x140098892
call fcn.1400a3910
mov rdi, rax
test rax, rax
je 0x140098a96
mov r9, qword [rax]
mov edx, 0x407
mov rcx, rax
call qword [r9 + htons]
cmp eax, 2
jl 0x140098a96
mov rbx, qword [rdi]
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea r9, str.static:_error_creating_a_new_rsa_crypto_context_for_key_with_errno__d
jmp 0x140098a82
mov rcx, qword [rsp + 0x30]
lea rax, [rsp + 0x38]
mov qword [rsp + 0x28], rax
xor r9d, r9d
mov r8d, edi
mov dword [rsp + 0x20], r14d
mov rdx, rsi
call qword [sym.imp.ADVAPI32.dll_CryptImportKey]
test eax, eax
jne 0x1400988f7
call fcn.1400a3910
mov rdi, rax
test rax, rax
je 0x140098a96
mov r8, qword [rax]
mov edx, 0x407
mov rcx, rax
call qword [rhtons + 8]
cmp eax, 2
jl 0x140098a96
mov rbx, qword [rdi]
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea r9, str.static:_failed_to_import_rsa_key_into_crypto_provider__error_code__d
jmp 0x140098a82
mov r9, qword [rsp + 0x30]
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 1]
call qword [sym.imp.CRYPT32.dll_CertSetCertificateContextProperty]
test eax, eax
jne 0x140098ac9
call fcn.1400a3910
mov rdi, rax
test rax, rax
je 0x140098a96
mov r8, qword [rax]
mov edx, 0x407
mov rcx, rax
call qword [rhtons + 8]
cmp eax, 2
jl 0x140098a96
mov rbx, qword [rdi]
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea r9, str.static:_error_creating_a_new_certificate_context_for_rsa_key_with_errno__d
jmp 0x140098a82
mov rbp, qword [rsp + 0xa0]
mov rdx, rbp
mov dword [rsp + 0x20], 8
call qword [sym.imp.ADVAPI32.dll_CryptAcquireContextW]
test eax, eax
jne 0x1400989ad
call fcn.1400a3910
mov rdi, rax
test rax, rax
je 0x140098a96
mov r8, qword [rax]
mov edx, 0x407
mov rcx, rax
call qword [rhtons + 8]
cmp eax, 2
jl 0x140098a96
mov rbx, qword [rdi]
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea r9, str.static:_error_creating_a_new_rsa_crypto_context_with_errno__d
jmp 0x140098a82
mov rcx, qword [rsp + 0x30]
lea rax, [rsp + 0x38]
mov qword [rsp + 0x28], rax
xor r9d, r9d
mov r8d, edi
mov dword [rsp + 0x20], r14d
mov rdx, rsi
call qword [sym.imp.ADVAPI32.dll_CryptImportKey]
test eax, eax
jne 0x140098a0f
call fcn.1400a3910
mov rdi, rax
test rax, rax
je 0x140098a96
mov r8, qword [rax]
mov edx, 0x407
mov rcx, rax
call qword [rhtons + 8]
cmp eax, 2
jl 0x140098a96
mov rbx, qword [rdi]
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea r9, str.static:_failed_to_import_rsa_key_into_crypto_provider__error_code__d
jmp 0x140098a82
xor r8d, r8d
mov qword [rsp + 0x48], r14
xorps xmm0, xmm0
mov dword [rsp + 0x64], r14d
lea r9, [rsp + 0x40]
mov qword [rsp + 0x68], 1
mov rcx, rbx
mov qword [rsp + 0x40], rbp
lea edx, [r8 + 2]
mov dword [rsp + 0x50], 1
movdqu xmmword [rsp + 0x54], xmm0
call qword [sym.imp.CRYPT32.dll_CertSetCertificateContextProperty]
test eax, eax
jne 0x140098ac9
call fcn.1400a3910
mov rdi, rax
test rax, rax
je 0x140098a96
mov r8, qword [rax]
mov edx, 0x407
mov rcx, rax
call qword [rhtons + 8]
cmp eax, 2
jl 0x140098a96
mov rbx, qword [rdi]
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea r9, str.static:_error_creating_a_new_certificate_context_for_key_with_errno__d
mov r8d, 0x407
mov dword [rsp + 0x20], eax
mov edx, 2
mov rcx, rdi
call qword [rbx]
mov ecx, 0x2e
call fcn.1400a32b0
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x140098ab0
call qword [sym.imp.ADVAPI32.dll_CryptDestroyKey]
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x140098ac2
xor edx, edx
call qword [sym.imp.ADVAPI32.dll_CryptReleaseContext]
mov eax, 0xffffffff
jmp 0x140098aeb
mov rcx, qword [rsp + 0xa8]
mov rax, qword [rsp + 0x30]
mov qword [rcx], rax
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0xb0]
mov qword [rcx], rax
xor eax, eax
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x10]
mov rbp, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop r14
ret