Function at 0x1400e5120
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, 0xf8
movaps xmmword [rsp + 0xe0], xmm6
mov ebx, r8d
mov rdi, rdx
mov rsi, rcx
mov rcx, rdx
call sym.__der::reader::slice::SliceReader_as_der::reader::Reader_::remaining_len::h2a3af9f1f70f88c1
cmp eax, ebx
jae 0x1400e51bd
mov edx, dword [rdi + 0x18]
lea rcx, [rsp + 0x30]
mov r8d, ebx
call sym.__der::length::Length_as_core::ops::arith::Add_::add::h071a91b68cfd8248
mov eax, dword [rsp + 0x30]
mov r14d, dword [rsp + 0x34]
cmp eax, 2
jne 0x1400e5235
mov ebx, dword [rdi + 0x18]
mov rcx, rdi
call sym.__der::reader::slice::SliceReader_as_der::reader::Reader_::remaining_len::h2a3af9f1f70f88c1
lea rcx, [rsp + 0x30]
mov edx, ebx
mov r8d, eax
call sym.__der::length::Length_as_core::ops::arith::Add_::add::h071a91b68cfd8248
mov eax, dword [rsp + 0x30]
mov edx, dword [rsp + 0x34]
cmp eax, 2
jne 0x1400e52f2
mov r8d, dword [rdi + 0x18]
shl r14, 0x20
or r14, 3
movd xmm0, edx
mov eax, 1
mov rcx, r14
mov r14d, r8d
jmp 0x1400e531a
mov qword [rsp + 0x90], rdi
mov dword [rsp + 0x98], ebx
mov dword [rsp + 0x9c], 0
lea rcx, [rsp + 0x30]
lea rdx, [rsp + 0x90]
call sym.der::reader::Reader::decode::h1d00035c60faf5a8
movzx ebp, byte [rsp + 0x70]
mov r15, qword [rsp + 0x30]
mov r14, qword [rsp + 0x38]
cmp bpl, 0x18
jne 0x1400e525f
mov rdx, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x50]
movq xmm0, qword [rsp + 0x48]
movzx r8d, byte [rsp + 0x58]
movzx r9d, byte [rsp + 0x5b]
shl r9d, 0x10
movzx eax, word [rsp + 0x59]
or eax, r9d
mov r9d, dword [rsp + 0x5c]
mov r10, qword [rsp + 0x60]
jmp 0x1400e5386
mov rcx, qword [rsp + 0x38]
movq xmm0, qword [rsp + 0x40]
movups xmm1, xmmword [rsp + 0x48]
movaps xmmword [rsp + 0xa0], xmm1
movups xmm1, xmmword [rsp + 0x58]
movaps xmmword [rsp + 0xb0], xmm1
jmp 0x1400e531a
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0xd0], rax
mov r12d, dword [rsp + 0x48]
mov eax, dword [rsp + 0x4c]
mov dword [rsp + 0x8c], eax
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0xd8], rax
movzx eax, byte [rsp + 0x58]
mov byte [rsp + 0x2f], al
movzx ebx, byte [rsp + 0x5b]
movzx r13d, word [rsp + 0x59]
mov edi, dword [rsp + 0x5c]
movups xmm6, xmmword [rsp + 0x60]
mov eax, dword [rsp + 0x71]
mov dword [rsp + 0xa0], eax
mov eax, dword [rsp + 0x74]
mov dword [rsp + 0xa3], eax
lea rcx, [rsp + 0x30]
lea rdx, [rsp + 0x90]
call sym.__T_as_der::decode::Decode_::decode::h01c7b324d55d285d
mov r11d, dword [rsp + 0x30]
cmp r11, 2
jne 0x1400e5343
cmp byte [rsp + 0x58], 0
je 0x1400e53d3
xor r15d, r15d
mov r14d, 0x215
jmp 0x1400e5386
mov rcx, qword [rsp + 0x38]
movq xmm0, qword [rsp + 0x40]
movups xmm1, xmmword [rsp + 0x48]
movaps xmmword [rsp + 0xa0], xmm1
movups xmm1, xmmword [rsp + 0x58]
movaps xmmword [rsp + 0xb0], xmm1
mov r14d, edx
movaps xmm1, xmmword [rsp + 0xa0]
movaps xmm2, xmmword [rsp + 0xb0]
movups xmmword [rsi + 0x28], xmm2
movups xmmword [rsi + 0x18], xmm1
mov dword [rsi + 4], r14d
mov qword [rsi + 8], rcx
movq qword [rsi + 0x10], xmm0
mov dword [rsi], eax
jmp 0x1400e53b0
mov r14, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x40]
movq xmm0, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x50]
movzx r8d, byte [rsp + 0x58]
movzx r9d, byte [rsp + 0x5b]
shl r9d, 0x10
movzx eax, word [rsp + 0x59]
or eax, r9d
mov r9d, dword [rsp + 0x5c]
mov r10, qword [rsp + 0x60]
mov r15d, dword [rsp + 0x34]
shl r15, 0x20
or r15, r11
mov qword [rsi], r15
mov qword [rsi + 8], r14
mov qword [rsi + 0x10], rdx
movq qword [rsi + 0x18], xmm0
mov qword [rsi + 0x20], rcx
mov byte [rsi + 0x28], r8b
mov word [rsi + 0x29], ax
shr eax, 0x10
mov byte [rsi + 0x2b], al
mov dword [rsi + 0x2c], r9d
mov qword [rsi + 0x30], r10
mov byte [rsi + 0x50], 0x18
mov rax, rsi
movaps xmm6, xmmword [rsp + 0xe0]
add rsp, 0xf8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov dword [rsp + 0x84], edi
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0xc0], rax
mov eax, dword [rsp + 0xa0]
mov ecx, dword [rsp + 0xa3]
mov dword [rsp + 0x7f], ecx
mov dword [rsp + 0x7c], eax
mov ecx, dword [rsp + 0x98]
mov edi, dword [rsp + 0x9c]
mov dword [rsp + 0x88], ecx
mov edx, edi
call sym.der::length::Length::saturating_sub::h1bb8ddeed61f8a1c
test eax, eax
je 0x1400e5455
mov ecx, dword [rsp + 0x88]
mov edx, edi
call sym.der::length::Length::saturating_sub::h1bb8ddeed61f8a1c
mov dword [rsi], 1
mov dword [rsi + 4], edi
mov byte [rsi + 8], 0x13
mov dword [rsi + 0xc], edi
mov dword [rsi + 0x10], eax
mov al, 0x18
mov byte [rsi + 0x50], al
jmp 0x1400e53b4
mov rax, r14
shr rax, 0x20
mov ecx, r12d
shr ecx, 8
shl ebx, 0x10
or r13d, ebx
mov rdx, qword [rsp + 0xc8]
mov qword [rsi], rdx
mov rdx, qword [rsp + 0xc0]
mov qword [rsi + 8], rdx
mov qword [rsi + 0x10], r15
mov dword [rsi + 0x18], r14d
mov dword [rsi + 0x1c], eax
mov rax, qword [rsp + 0xd0]
mov qword [rsi + 0x20], rax
mov byte [rsi + 0x28], r12b
mov word [rsi + 0x29], cx
shr ecx, 0x10
mov byte [rsi + 0x2b], cl
mov eax, dword [rsp + 0x8c]
mov dword [rsi + 0x2c], eax
mov rax, qword [rsp + 0xd8]
mov qword [rsi + 0x30], rax
movzx eax, byte [rsp + 0x2f]
mov byte [rsi + 0x38], al
mov word [rsi + 0x39], r13w
shr r13d, 0x10
mov byte [rsi + 0x3b], r13b
mov eax, dword [rsp + 0x84]
mov dword [rsi + 0x3c], eax
movups xmmword [rsi + 0x40], xmm6
mov eax, dword [rsp + 0x7c]
mov ecx, dword [rsp + 0x7f]
mov dword [rsi + 0x51], eax
mov dword [rsi + 0x54], ecx
mov byte [rsi + 0x50], bpl
jmp 0x1400e53b4