Function at 0x1400c3460
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x178
movaps xmmword [rsp + 0x160], xmm7
movaps xmmword [rsp + 0x150], xmm6
mov rsi, rcx
lea rcx, [rsp + 0x30]
call sym.der::reader::nested::NestedReader_R_::new::h52e7ce1e75c68fe1
mov eax, dword [rsp + 0x30]
cmp eax, 2
jne 0x1400c3509
movups xmm0, xmmword [rsp + 0x38]
movaps xmmword [rsp + 0x20], xmm0
lea rcx, [rsp + 0x30]
lea rdx, [rsp + 0x20]
call sym.__pkcs8::version::Version_as_der::decode::Decode_::decode::hf9412317051a8fd5
mov ecx, dword [rsp + 0x30]
cmp rcx, 2
jne 0x1400c3550
movzx r12d, byte [rsp + 0x34]
lea rcx, [rsp + 0x30]
lea rdx, [rsp + 0x20]
call sym.der::reader::Reader::decode::h76bde35b70ab287d
movzx ebp, byte [rsp + 0x70]
mov r15, qword [rsp + 0x30]
mov r14, qword [rsp + 0x38]
movups xmm7, xmmword [rsp + 0x40]
mov rbx, qword [rsp + 0x50]
movups xmm6, xmmword [rsp + 0x58]
cmp bpl, 0x18
jne 0x1400c3593
mov r8, r14
shr r8, 0x20
jmp 0x1400c383d
mov ecx, dword [rsp + 0x44]
mov dword [rsp + 0xb0], ecx
movups xmm0, xmmword [rsp + 0x34]
movaps xmmword [rsp + 0xa0], xmm0
movups xmm0, xmmword [rsp + 0x58]
movups xmmword [rsi + 0x28], xmm0
movups xmm0, xmmword [rsp + 0x48]
movups xmmword [rsi + 0x18], xmm0
mov ecx, dword [rsp + 0xb0]
mov dword [rsi + 0x14], ecx
movaps xmm0, xmmword [rsp + 0xa0]
movups xmmword [rsi + 4], xmm0
mov dword [rsi], eax
jmp 0x1400c385a
movzx r15d, byte [rsp + 0x34]
movzx eax, byte [rsp + 0x37]
shl eax, 0x10
movzx edx, word [rsp + 0x35]
or edx, eax
shl rdx, 0x28
mov r14, qword [rsp + 0x38]
mov r8, r14
shr r8, 0x20
movups xmm7, xmmword [rsp + 0x40]
mov rbx, qword [rsp + 0x50]
movups xmm6, xmmword [rsp + 0x58]
shl r15, 0x20
or r15, rcx
or r15, rdx
jmp 0x1400c383d
mov r13, qword [rsp + 0x68]
mov eax, dword [rsp + 0x71]
mov dword [rsp + 0x98], eax
mov eax, dword [rsp + 0x74]
mov dword [rsp + 0x9b], eax
lea rcx, [rsp + 0x30]
lea rdx, [rsp + 0x20]
call sym.__der::header::Header_as_der::decode::Decode_::decode::h4cc5cbe3bab1e5f2
mov ecx, dword [rsp + 0x30]
cmp ecx, 2
jne 0x1400c3657
mov rdi, qword [rsp + 0x34]
mov rdx, rdi
shr rdx, 0x20
lea rcx, [rsp + 0x30]
mov r8d, 3
call sym.der::tag::Tag::assert_eq::hcc2f0641ab82793f
mov ecx, dword [rsp + 0x30]
cmp ecx, 2
jne 0x1400c3675
lea rcx, [rsp + 0x30]
lea rdx, [rsp + 0x20]
mov r8d, edi
call sym._ZN3der6reader6nested21NestedReader_LT_R_GT_16advance_position17h539054952096afd5E.llvm.8503025285107650741
mov eax, dword [rsp + 0x30]
cmp eax, 2
jne 0x1400c3693
mov rdx, qword [rsp + 0x20]
lea rcx, [rsp + 0xa0]
mov r8d, edi
call sym.__der::reader::slice::SliceReader_as_der::reader::Reader_::read_slice::hf821834185d726ca
cmp dword [rsp + 0xa0], 2
jne 0x1400c36cc
mov rdx, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xb0]
lea rcx, [rsp + 0xe0]
call sym.der::byte_slice::ByteSlice::new::h16ff96a7ee2efa48
jmp 0x1400c3728
mov r15, qword [rsp + 0x34]
mov r8d, dword [rsp + 0x3c]
movups xmm0, xmmword [rsp + 0x40]
mov rbx, qword [rsp + 0x50]
movups xmm6, xmmword [rsp + 0x58]
jmp 0x1400c382a
mov r8d, dword [rsp + 0x3c]
movups xmm0, xmmword [rsp + 0x40]
mov rbx, qword [rsp + 0x50]
movups xmm6, xmmword [rsp + 0x58]
mov r15, qword [rsp + 0x34]
jmp 0x1400c382a
mov ecx, dword [rsp + 0x64]
mov dword [rsp + 0xd4], ecx
movups xmm0, xmmword [rsp + 0x34]
movups xmm1, xmmword [rsp + 0x44]
movups xmm2, xmmword [rsp + 0x54]
movups xmmword [rsp + 0xc4], xmm2
movups xmmword [rsp + 0xb4], xmm1
movups xmmword [rsp + 0xa4], xmm0
mov dword [rsp + 0xa0], eax
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x110], rax
mov eax, dword [rsp + 0xa0]
mov rcx, qword [rsp + 0xa4]
mov edx, dword [rsp + 0xac]
movups xmm0, xmmword [rsp + 0xb0]
movups xmm1, xmmword [rsp + 0xc0]
movaps xmmword [rsp + 0x100], xmm1
movaps xmmword [rsp + 0xf0], xmm0
mov dword [rsp + 0xe0], eax
mov qword [rsp + 0xe4], rcx
mov dword [rsp + 0xec], edx
mov ecx, dword [rsp + 0xe0]
mov r8d, dword [rsp + 0xec]
movaps xmm0, xmmword [rsp + 0xf0]
cmp ecx, 2
jne 0x1400c3812
mov ecx, dword [rsp + 0xe8]
mov dword [rsp + 0x138], ecx
mov dword [rsp + 0x13c], r8d
movups xmmword [rsp + 0x140], xmm0
lea rcx, [rsp + 0x138]
call sym._ZN100__LT_der..asn1..octet_string..OctetStringRef_u20_as_u20_core..convert..AsRef_LT__u5b_u8_u5d__GT__GT_6as_ref17ha8f9706b26
mov rdi, rax
mov qword [rsp + 0x130], rdx
lea rcx, [rsp + 0x30]
lea rdx, [rsp + 0x20]
mov r8b, 1
mov r9b, 1
call sym.der::reader::Reader::context_specific::ha19346cc80f58cc8
mov eax, dword [rsp + 0x30]
cmp rax, 2
jne 0x1400c3885
mov rax, qword [rsp + 0x38]
test rax, rax
mov qword [rsp + 0x128], rdi
je 0x1400c38aa
movups xmm0, xmmword [rsp + 0x40]
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x58]
movups xmmword [rsp + 0xa8], xmm0
mov qword [rsp + 0xb8], rcx
mov qword [rsp + 0xc0], rdx
mov qword [rsp + 0xa0], rax
lea rcx, [rsp + 0xa0]
call sym.der::asn1::bit_string::BitStringRef::as_bytes::h944359c740e2c7f1
test rax, rax
je 0x1400c390f
mov qword [rsp + 0xd8], rdx
test r12b, r12b
jne 0x1400c396a
jmp 0x1400c38b3
mov r15, qword [rsp + 0xe4]
mov rbx, qword [rsp + 0x100]
movups xmm6, xmmword [rsp + 0x108]
mov r14, r15
shr r14, 0x20
mov ecx, ecx
shl r15, 0x20
or r15, rcx
movaps xmm7, xmm0
shl r8, 0x20
mov ecx, r14d
or rcx, r8
mov qword [rsi], r15
mov qword [rsi + 8], rcx
movups xmmword [rsi + 0x10], xmm7
mov qword [rsi + 0x20], rbx
movups xmmword [rsi + 0x28], xmm6
mov byte [rsi + 0x60], 0x18
mov rax, rsi
movaps xmm6, xmmword [rsp + 0x150]
movaps xmm7, xmmword [rsp + 0x160]
add rsp, 0x178
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov r14, qword [rsp + 0x38]
movups xmm7, xmmword [rsp + 0x40]
mov rbx, qword [rsp + 0x50]
movups xmm6, xmmword [rsp + 0x58]
mov r15d, dword [rsp + 0x34]
shl r15, 0x20
or r15, rax
jmp 0x1400c34fd
test r12b, r12b
je 0x1400c3968
lea rdi, [rsp + 0x30]
mov rcx, rdi
mov edx, 0x10115
call sym.der::tag::Tag::value_error::hf838acf4f846f3e2
lea rbx, [rsp + 0xa0]
mov rcx, rbx
mov rdx, rdi
call sym.der::error::Error::kind::hf1ce34e0dbf5d294
mov rdx, qword [rsp + 0x20]
lea rcx, [rsp + 0x30]
mov r8, rbx
call sym.der::reader::slice::SliceReader::error::h539d2901aaf8d790
mov r15, qword [rsp + 0x30]
mov r14, qword [rsp + 0x38]
mov r8, r14
shr r8, 0x20
movups xmm7, xmmword [rsp + 0x40]
mov rbx, qword [rsp + 0x50]
movups xmm6, xmmword [rsp + 0x58]
jmp 0x1400c383d
lea rcx, [rsp + 0x30]
mov edx, 2
call sym.der::tag::Tag::value_error::hf838acf4f846f3e2
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x40]
mov qword [rsp + 0xd8], rdx
cmp ecx, 2
je 0x1400c3804
cmp ecx, 3
je 0x1400c38aa
movups xmm7, xmmword [rsp + 0x40]
mov rbx, qword [rsp + 0x50]
movups xmm6, xmmword [rsp + 0x58]
mov r8, rax
shr r8, 0x20
mov r15, rcx
mov r14, rax
jmp 0x1400c383d
xor eax, eax
mov qword [rsp + 0x120], rax
mov ecx, dword [rsp + 0x28]
mov edx, dword [rsp + 0x2c]
call sym.der::length::Length::saturating_sub::h1484acd93d9f31b0
mov ecx, eax
call sym.der::length::Length::is_zero::hda02dce528c598d6
test al, al
je 0x1400c3a2e
mov eax, dword [rsp + 0x98]
mov ecx, dword [rsp + 0x9b]
mov dword [rsp + 0x94], ecx
mov dword [rsp + 0x91], eax
movaps xmm0, xmmword [rsp + 0x20]
movaps xmmword [rsp + 0xa0], xmm0
mov rax, qword [rsp + 0x120]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x128]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x130]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], r15
mov qword [rsp + 0x58], r14
movups xmmword [rsp + 0x60], xmm7
mov qword [rsp + 0x70], rbx
movups xmmword [rsp + 0x78], xmm6
mov qword [rsp + 0x88], r13
mov byte [rsp + 0x90], bpl
lea rdx, [rsp + 0xa0]
lea r8, [rsp + 0x30]
mov rcx, rsi
call sym.der::reader::Reader::finish::h93aa98278791bd10
jmp 0x1400c385e
lea r12, [rsp + 0xa0]
lea rdi, [rsp + 0x20]
jmp 0x1400c3a58
mov ecx, dword [rsp + 0x28]
mov edx, r8d
call sym.der::length::Length::saturating_sub::h1484acd93d9f31b0
mov ecx, eax
call sym.der::length::Length::is_zero::hda02dce528c598d6
test al, al
jne 0x1400c398e
mov rcx, r12
mov rdx, rdi
call sym.__der::asn1::context_specific::ContextSpecific_T__as_der::decode::Decode_::decode::h1128dac1f642111f
mov r8d, dword [rsp + 0x2c]
cmp dword [rsp + 0xa0], 2
je 0x1400c3a3d
lea rcx, [rsp + 0x30]
mov rdx, r12
call sym.der::error::Error::nested::h6e3a851c543c879e
mov rcx, qword [rsp + 0x30]
cmp ecx, 2
jne 0x1400c3a90
mov r8d, dword [rsp + 0x2c]
jmp 0x1400c3a3d
mov r14, qword [rsp + 0x38]
movups xmm7, xmmword [rsp + 0x40]
mov rbx, qword [rsp + 0x50]
movups xmm6, xmmword [rsp + 0x58]
mov r8, r14
shr r8, 0x20
mov r15, rcx
jmp 0x1400c383d