Function at 0x18027be57
Capabilities:
Encrypt data using aes via x86 extensions

Disassembly:
push rsi
push rdi
sub rsp, 0x28
mov rsi, rdx
mov rdi, rcx
mov ecx, 2
call sym.msedge_elf.dll_OQS_CPU_has_extension
mov rcx, rdi
mov rdx, rsi
test eax, eax
je 0x18027be82
add rsp, 0x28
pop rdi
pop rsi
jmp 0x1802839a2
nop
add rsp, 0x28
pop rdi
pop rsi
jmp 0x18027c29e
push rsi
push rdi
push rbx
sub rsp, 0x120
mov rbx, rdx
mov rdi, rcx
mov rax, qword [0x1803b6038]
xor rax, rsp
mov qword [rsp + 0x118], rax
mov ecx, 0x3d0
call fcn.1800d5950
mov qword [rbx], rax
test rax, rax
je 0x18027c3b7
mov rsi, rax
movabs rbx, 0x1111111111111111
vpbroadcastb ymm0, byte [0x180351e8d]
lea rcx, [rsp + 0x20]
vmovdqu ymmword [rcx + 0xd0], ymm0
vmovdqu ymmword [rcx + 0xc0], ymm0
vmovdqu ymmword [rcx + 0xa0], ymm0
vmovdqu ymmword [rcx + 0x80], ymm0
vmovdqu ymmword [rcx + 0x60], ymm0
vmovdqu ymmword [rcx + 0x40], ymm0
vmovdqu ymmword [rcx + 0x20], ymm0
vmovdqu ymmword [rcx], ymm0
mov rdx, rdi
mov r8d, 0x20
vzeroupper
call fcn.18027bf71
xor eax, eax
mov rcx, qword [rsp + rax + 0x20]
mov rdx, rcx
and rdx, rbx
mov r8, rcx
shr r8, 1
and r8, rbx
mov r9, rcx
shr r9, 2
and r9, rbx
shr rcx, 3
and rcx, rbx
lea rdx, [rdx + rdx*4]
lea rdx, [rdx + rdx*2]
mov qword [rsi + rax*4], rdx
lea rdx, [r8 + r8*4]
lea rdx, [rdx + rdx*2]
mov qword [rsi + rax*4 + 8], rdx
lea rdx, [r9 + r9*4]
lea rdx, [rdx + rdx*2]
mov qword [rsi + rax*4 + 0x10], rdx
lea rcx, [rcx + rcx*4]
lea rcx, [rcx + rcx*2]
mov qword [rsi + rax*4 + 0x18], rcx
add rax, 8
cmp rax, 0xf0
jne 0x18027c337
mov rcx, qword [rsp + 0x118]
xor rcx, rsp
call fcn.1801e6610
nop
add rsp, 0x120
pop rbx
pop rdi
pop rsi
ret
mov ecx, 2
call fcn.1801e9914
lea rdx, str.Unexpected_NULL_returned_from__s_API._Exiting._n
lea r8, [0x180351e90]
mov rcx, rax
call fcn.18027bdf3
mov ecx, 1
call fcn.1801f8eac
int3
push rsi
push rdi
sub rsp, 0x28
mov rdi, rdx
mov rsi, rcx
mov ecx, 0x100
call fcn.1800d5950
mov qword [rdi], rax
test rax, rax
je 0x180283be0
vmovdqu xmm0, xmmword [rsi]
vmovdqu xmm1, xmmword [rsi + 0x10]
vmovdqa xmmword [rax], xmm0
vaeskeygenassist xmm2, xmm1, 1
vmovdqa xmmword [rax + 0x10], xmm1
vpslldq xmm3, xmm0, 4
vpxor xmm0, xmm0, xmm3
vpslldq xmm3, xmm0, 8
vpshufd xmm2, xmm2, 0xff
vpxor xmm0, xmm3, xmm0
vpxor xmm0, xmm2, xmm0
vaeskeygenassist xmm2, xmm0, 1
vmovdqa xmmword [rax + 0x20], xmm0
vpslldq xmm3, xmm1, 4
vpxor xmm1, xmm1, xmm3
vpslldq xmm3, xmm1, 8
vpshufd xmm2, xmm2, 0xaa
vpxor xmm1, xmm3, xmm1
vpxor xmm1, xmm2, xmm1
vaeskeygenassist xmm2, xmm1, 2
vmovdqa xmmword [rax + 0x30], xmm1
vpslldq xmm3, xmm0, 4
vpxor xmm0, xmm0, xmm3
vpslldq xmm3, xmm0, 8
vpshufd xmm2, xmm2, 0xff
vpxor xmm0, xmm3, xmm0
vpxor xmm0, xmm2, xmm0
vaeskeygenassist xmm2, xmm0, 2
vmovdqa xmmword [rax + 0x40], xmm0
vpslldq xmm3, xmm1, 4
vpxor xmm1, xmm1, xmm3
vpslldq xmm3, xmm1, 8
vpshufd xmm2, xmm2, 0xaa
vpxor xmm1, xmm3, xmm1
vpxor xmm1, xmm2, xmm1
vaeskeygenassist xmm2, xmm1, 4
vmovdqa xmmword [rax + 0x50], xmm1
vpslldq xmm3, xmm0, 4
vpxor xmm0, xmm0, xmm3
vpslldq xmm3, xmm0, 8
vpshufd xmm2, xmm2, 0xff
vpxor xmm0, xmm3, xmm0
vpxor xmm0, xmm2, xmm0
vaeskeygenassist xmm2, xmm0, 4
vmovdqa xmmword [rax + 0x60], xmm0
vpslldq xmm3, xmm1, 4
vpxor xmm1, xmm1, xmm3
vpslldq xmm3, xmm1, 8
vpshufd xmm2, xmm2, 0xaa
vpxor xmm1, xmm3, xmm1
vpxor xmm1, xmm2, xmm1
vaeskeygenassist xmm2, xmm1, 8
vmovdqa xmmword [rax + 0x70], xmm1
vpslldq xmm3, xmm0, 4
vpxor xmm0, xmm0, xmm3
vpslldq xmm3, xmm0, 8
vpshufd xmm2, xmm2, 0xff
vpxor xmm0, xmm3, xmm0
vpxor xmm0, xmm2, xmm0
vaeskeygenassist xmm2, xmm0, 8
vmovdqa xmmword [rax + 0x80], xmm0
vpslldq xmm3, xmm1, 4
vpxor xmm1, xmm1, xmm3
vpslldq xmm3, xmm1, 8
vpshufd xmm2, xmm2, 0xaa
vpxor xmm1, xmm3, xmm1
vpxor xmm1, xmm2, xmm1
vaeskeygenassist xmm2, xmm1, 0x10
vmovdqa xmmword [rax + 0x90], xmm1
vpslldq xmm3, xmm0, 4
vpxor xmm0, xmm0, xmm3
vpslldq xmm3, xmm0, 8
vpshufd xmm2, xmm2, 0xff
vpxor xmm0, xmm3, xmm0
vpxor xmm0, xmm2, xmm0
vaeskeygenassist xmm2, xmm0, 0x10
vmovdqa xmmword [rax + 0xa0], xmm0
vpslldq xmm3, xmm1, 4
vpxor xmm1, xmm1, xmm3
vpslldq xmm3, xmm1, 8
vpshufd xmm2, xmm2, 0xaa
vpxor xmm1, xmm3, xmm1
vpxor xmm1, xmm2, xmm1
vaeskeygenassist xmm2, xmm1, 0x20
vmovdqa xmmword [rax + 0xb0], xmm1
vpslldq xmm3, xmm0, 4
vpxor xmm0, xmm0, xmm3
vpslldq xmm3, xmm0, 8
vpshufd xmm2, xmm2, 0xff
vpxor xmm0, xmm3, xmm0
vpxor xmm0, xmm2, xmm0
vaeskeygenassist xmm2, xmm0, 0x20
vmovdqa xmmword [rax + 0xc0], xmm0
vpslldq xmm3, xmm1, 4
vpxor xmm1, xmm1, xmm3
vpslldq xmm3, xmm1, 8
vpshufd xmm2, xmm2, 0xaa
vpxor xmm1, xmm3, xmm1
vpxor xmm1, xmm2, xmm1
vaeskeygenassist xmm2, xmm1, 0x40
vmovdqa xmmword [rax + 0xd0], xmm1
vpslldq xmm1, xmm0, 4
vpxor xmm0, xmm0, xmm1
vpslldq xmm1, xmm0, 8
vpshufd xmm2, xmm2, 0xff
vpxor xmm0, xmm1, xmm0
vpxor xmm0, xmm2, xmm0
vmovdqa xmmword [rax + 0xe0], xmm0
add rsp, 0x28
pop rdi
pop rsi
ret
mov ecx, 2
call fcn.1801e9914
lea rdx, str.Unexpected_NULL_returned_from__s_API._Exiting._n
lea r8, [0x180351e90]
mov rcx, rax
call fcn.18027bdf3
mov ecx, 1
call fcn.1801f8eac
int3