Function at 0x2f887a2f9
Capabilities:
Authenticate hmac
Encode data using base64

Disassembly:
cmp r10, r11
jne 0x2f887a30c
push rax
psubusw mm3, mm7
pop rax
jmp 0x2f887a313
push r15
pmaxsw mm1, mm4
pop r15
push r13
shl r13, 0xc
pop r13
mov qword [rsp + 8], rcx
push r15
psrlw mm1, 0x15
push r11
pcmpeqb mm0, mm1
sub r11, r15
pop r11
psrad mm5, 0xa
pop r15
mov qword [rsp + 0x10], rdx
push r13
emms
psraw mm5, 0x16
push r15
psubw mm1, mm0
pslld mm0, 0x41
push rdx
dec r13
rcl r13d, 6
push r10
inc r13
shr r15, 8
pop r10
nop
emms
pop rdx
nop
add r15d, r13d
pop r15
emms
emms
pop r13
mov qword [rsp + 0x18], r8
push r15
sbb r15d, 6
push rdx
psrld mm6, 0x26
push r12
pcmpeqw mm2, mm1
push rax
psrad mm2, 0x64
push r8
nop
push r10
addss xmm2, xmm5
push rcx
not rcx
pop rcx
not rdx
pop r10
shl r15b, 0x17
pop r8
pslld mm3, 0x43
pop rax
inc rdx
pop r12
emms
pop rdx
emms
pop r15
mov qword [rsp + 0x20], r9
push r12
xorps xmm13, xmm0
pop r12
sub rsp, 0x64
push r12
mov r12, 2
push r8
paddusw mm4, mm1
push r13
inc r13
push r12
emms
push r11
sbb r13w, r12w
pop r11
psrlw mm7, 4
pop r12
emms
pop r13
nop
pop r8
dec r12
jne 0x2f887a3cd
pop r12
mov rcx, 0x1f069ad8
cmp r10, r13
jne 0x2f887a42b
push r9
nop
push rbx
packssdw mm2, mm7
psrld mm1, 0x68
pop rbx
psllq mm6, 0x16
pop r9
jmp 0x2f887a441
push r12
shl r12, 0x15
push r11
paddsw mm1, mm3
not r11
pop r11
psllq mm4, 0x3f
pop r12
push r14
pminsw mm2, mm6
push r8
inc r8
addss xmm6, xmm2
pop r8
nop
pop r14
call fcn.2f8877dd2
push rbx
inc ebx
minps xmm1, xmm0
emms
pcmpgtd mm2, mm7
paddsw mm5, mm6
push r11
xorps xmm0, xmm1
emms
and r11b, bl
emms
neg r11b
pop r11
pmullw mm3, mm5
pcmpgtb mm6, mm5
psllq mm0, 0x11
rcpps xmm12, xmm13
emms
pslld mm0, 8
pop rbx
add rsp, 0x64
cmp r10b, 0x38
je 0x2f887a587
push r11
nop
punpckhwd mm4, mm2
nop
shl r11b, 0x14
emms
not r11
shr r11b, 0x15
emms
nop
nop
rcpps xmm12, xmm9
neg r11w
pop r11
cmp ecx, eax
je 0x2f887a5a1
cmp r10d, 0x27
jne 0x2f887a4d7
push rdx
sar rdx, 0xa
pop rdx
jmp 0x2f887a4dd
push r10
emms
pop r10
push r15
neg r15
pop r15
cmp ecx, r15d
je 0x2f887a5ed
cmp r10d, ecx
jne 0x2f887a51a
push rcx
psllq mm1, 0x5b
push r15
neg r15b
inc rcx
pop r15
rcpss xmm3, xmm9
pop rcx
jmp 0x2f887a52d
push r9
movlhps xmm5, xmm15
push r14
shl r14, 1
sub r9d, r14d
pop r14
nop
pop r9
push rdx
not edx
push rbx
xchg bx, dx
or ebx, edx
pop rbx
nop
pop rdx
cmp cx, dx
je 0x2f887a643
push r14
inc r14d
push rbx
subss xmm9, xmm2
push r9
test bx, r9w
pop r9
paddusb mm7, mm6
pop rbx
nop
pop r14
cmp rcx, 0x54
je 0x2f887a697
push rbx
andps xmm8, xmm15
push r10
neg r10b
pop r10
comiss xmm13, xmm0
pop rbx
cmp r10d, 0x36
je 0x2f887a6ad
jne 0x2f887a6c0
push r14
pcmpgtw mm5, mm7
inc r14d
push r13
emms
pop r13
emms
neg r14d
pop r14
jmp 0x2f887a6c0
push rax
dec rax
pslld mm4, 0x66
sar al, 0x16
sub ax, 0x17
push r12
psrld mm6, 0x16
psubsb mm6, mm2
emms
push r10
rcpss xmm2, xmm14
nop
push r11
emms
pop r11
sar rax, 0xb
mov r10w, ax
pop r10
psllq mm1, 0x3b
emms
sbb r12, 0x14
pop r12
psrad mm3, 0x53
nop
emms
nop
pop rax
jmp 0x2f887a6c0
push r10
andps xmm10, xmm9
push rdx
emms
emms
push r14
nop
nop
paddsb mm2, mm0
push r9
neg r10b
mov r14b, 2
paddb mm1, mm7
subps xmm8, xmm3
push r12
rcl r10d, 0x12
pcmpgtw mm1, mm7
movlhps xmm8, xmm4
paddb mm7, mm6
andnps xmm9, xmm10
pop r12
inc r10
emms
emms
emms
pop r9
nop
nop
psrlw mm0, 0x3d
pop r14
emms
nop
pop rdx
xorps xmm13, xmm6
pop r10
jmp 0x2f887a6c0
cmp r10d, 0x4d
jne 0x2f887a66c
push r11
mulps xmm3, xmm8
push rdx
emms
nop
pop rdx
not r11
pop r11
jmp 0x2f887a680
push r9
psrad mm2, 0x2e
push r8
shl r9, 0xe
paddsb mm2, mm1
pop r8
nop
pop r9
push r15
paddusb mm0, mm2
push r12
emms
rcr r12, 0x12
pop r12
psrad mm7, 0x24
pop r15
jmp 0x2f887a6c0
push r11
mov r11, 3
push r14
pop r14
dec r11
jne 0x2f887a6a0
pop r11
jmp 0x2f887a6c0
push rbx
pmaxub mm5, mm0
push r15
psrlq mm1, 0x12
or r15b, bl
pop r15
paddd mm2, mm5
pop rbx
push r8
nop
psadbw mm1, mm3
dec r8d
mov r8, 0x17
push r10
ror r8b, 0xa
cmp r10b, r8b
add r10w, r8w
emms
pop r10
maxps xmm7, xmm0
psrld mm4, 0x3b
packssdw mm5, mm6
dec r8
pop r8
mov rcx, qword [rsp + 8]
push rcx
nop
push r12
nop
push rdx
rcpps xmm3, xmm7
push r11
nop
push r15
rcpss xmm6, xmm12
push r10
sbb r11, rdx
push r14
emms
pop r14
pcmpeqd mm5, mm7
pop r10
mov r12w, 0x12
pop r15
not rcx
pop r11
psraw mm3, 0x3d
pop rdx
nop
pop r12
psraw mm5, 0x37
pop rcx
mov rdx, qword [rsp + 0x10]
push rdx
psrad mm1, 0x5c
push r12
nop
movlhps xmm8, xmm4
push r13
not r12
nop
rol r12d, 0x10
push r11
movhlps xmm6, xmm5
andnps xmm8, xmm12
maxss xmm8, xmm9
nop
pop r11
psrad mm6, 0x64
nop
packuswb mm4, mm5
pop r13
xorps xmm11, xmm14
movss xmm12, xmm1
pop r12
dec rdx
pop rdx
mov r8, qword [rsp + 0x18]
push r12
mov r12, 0xa
nop
paddw mm3, mm6
ucomiss xmm4, xmm0
nop
emms
psrld mm1, 0x5e
psrad mm4, 0x64
inc r12
pcmpgtw mm6, mm4
emms
emms
pop r12
mov r9, qword [rsp + 0x20]
push r13
sar r13d, 0xf
push r9
cmp r9d, r13d
push r15
emms
push r14
sbb r13d, r9d
push rdx
nop
push rbx
ror dx, 0x11
push r10
and r15w, r9w
pop r10
pcmpgtw mm4, mm5
pop rbx
not r14w
pop rdx
test r13, r15
pop r14
neg r9d
pop r15
emms
pop r9
dec r13
pop r13
jmp rax