Function at 0x2edd8add7
Capabilities:
Authenticate hmac
Contain obfuscated stackstrings
Encode data using xor

Disassembly:
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x30
mov rsi, rcx
movsxd rbx, edx
push r9
not r9b
push r12
psubw mm3, mm4
pop r12
sbb r9d, 8
pop r9
mov ecx, 8
call sub.msvcrt.dll_malloc
mov rcx, rax
xor eax, eax
push r11
maxps xmm1, xmm2
emms
push r12
pcmpgtd mm6, mm7
psraw mm3, 0x3f
push rcx
mov r12d, r11d
pmaxsw mm7, mm5
push r15
neg rcx
ror r12b, 6
push rax
mulps xmm9, xmm13
or r15b, cl
pop rax
nop
comiss xmm8, xmm2
pop r15
andnps xmm9, xmm3
comiss xmm13, xmm8
pop rcx
add r11b, r12b
sub r12w, 0xf
pop r12
emms
psubsb mm5, mm2
pop r11
xor dword [rcx + rax*4], 0x57
push r10
pcmpgtw mm6, mm7
rcl r10d, 5
sbb r10, 2
packssdw mm0, mm2
pandn mm6, mm1
subps xmm8, xmm5
nop
pop r10
test rax, rax
jne 0x2edd8ae7c
mov eax, 1
jmp 0x2edd8ae08
call sub.msvcrt.dll_free
cmp r13, 0x36
jne 0x2edd8aee0
push rdx
psrlw mm7, 0xf
neg dl
nop
psrld mm0, 0x20
emms
push rbx
nop
comiss xmm3, xmm4
packsswb mm7, mm2
pslld mm4, 0x50
pcmpgtb mm1, mm5
pop rbx
emms
psrld mm1, 0x34
pxor mm1, mm6
psadbw mm6, mm4
shl rdx, 0xa
nop
pop rdx
jmp 0x2edd8af1d
push r14
pcmpgtd mm5, mm0
mulss xmm3, xmm9
push r13
mov r14b, r13b
rol r14b, 5
push r8
nop
psrld mm0, 1
push r11
add r14b, r11b
psraw mm5, 0x59
pop r11
nop
movaps xmm13, xmm3
pop r8
inc r13
inc r14
pop r13
dec r14
sbb r14, 9
pop r14
push r8
pslld mm7, 0x48
psrlw mm4, 0x60
push r12
movaps xmm7, xmm15
not r8w
push rcx
neg r8b
sub cl, r12b
push r14
nop
emms
push r11
nop
rcpps xmm4, xmm7
pop r11
ucomiss xmm13, xmm7
and ecx, r12d
pop r14
psllq mm0, 0x45
neg r8
pop rcx
nop
nop
pop r12
nop
ucomiss xmm2, xmm4
pop r8
lea rbp, [rsp + 0x2a]
lea rdi, [rsp + 0x25]
lea r12, [rsp + 0x29]
test ebx, ebx
jle 0x2edd8b186
push r12
pslld mm2, 0x1a
nop
dec r12d
por mm7, mm1
subps xmm7, xmm6
push r10
psrad mm2, 0x33
movlhps xmm1, xmm9
sar r10b, 0x16
nop
push r13
paddw mm3, mm4
pcmpgtd mm5, mm1
not r12
push rcx
punpcklbw mm7, mm3
ror r13d, 8
push r11
pcmpgtd mm1, mm4
pop r11
mov r12b, r10b
inc r10
pop rcx
nop
shl r12w, 0x17
inc r12d
pop r13
inc r12
movlhps xmm4, xmm15
inc r12
comiss xmm4, xmm6
pop r10
psrld mm0, 0x1f
psllq mm6, 0x3e
nop
psrlq mm7, 0x4a
sar r12, 0xd
pop r12
cmp word [rsi + rbx*2], 0x5c
jne 0x2edd8b036
push r9
emms
nop
push r8
nop
nop
push r11
mulps xmm4, xmm12
psraw mm1, 0x51
push rbx
subps xmm12, xmm9
and r9d, ebx
push rcx
emms
minps xmm9, xmm5
pop rcx
psrad mm5, 0x16
nop
pop rbx
adc r9, r8
pmaddwd mm3, mm4
pop r11
xor r9, r8
dec r9d
pop r8
por mm0, mm2
mulps xmm0, xmm1
pop r9
lea rax, [rsi + rbx*2 + 2]
jmp 0x2edd8b338
mov dword [rsp + 0x25], 0x5d5d534e
mov byte [rsp + 0x29], 0
push r15
shl r15, 0x16
psrlq mm2, 0x3c
xorps xmm4, xmm14
nop
psraw mm2, 0x35
mulps xmm6, xmm2
emms
pop r15
mov dword [rsp + 0x2a], 0x2d5e237a
mov word [rsp + 0x2e], 0x6e
push rcx
psrlw mm1, 0x32
nop
emms
push r13
psraw mm2, 0x40
nop
shl rcx, 0x15
push rax
nop
and cx, ax
push r9
packsswb mm6, mm3
movlhps xmm14, xmm2
pop r9
dec r13
sbb ecx, r13d
emms
pop rax
not rcx
nop
pop r13
andnps xmm0, xmm4
rcpss xmm11, xmm10
pop rcx
mov rdx, rbp
mov rcx, rdi
call sub.msvcrt.dll__mbscmp
test eax, eax
jne 0x2edd8b11a
mov rax, rdi
push r15
psraw mm4, 0x52
subps xmm11, xmm10
emms
push rbx
psllq mm5, 0x20
adc rbx, r15
push r13
andnps xmm7, xmm11
pop r13
psrld mm3, 0xc
pslld mm4, 0x61
pop rbx
mov r15w, 0x14
nop
psrlw mm6, 0x5e
pop r15
xor byte [rax], 0x53
push rax
mov rax, 2
push r14
dec r14
psllq mm4, 0x43
push rbx
pxor mm0, mm4
pop rbx
nop
psllq mm7, 0x29
pop r14
dec rax
jne 0x2edd8b0f5
pop rax
inc rax
cmp rax, r12
jne 0x2edd8b0b9
jmp 0x2edd8b159
cmp r13w, r14w
jne 0x2edd8b136
push r11
subss xmm6, xmm7
push rdx
emms
psllq mm2, 0x60
pop rdx
psrlq mm5, 0x60
pop r11
jmp 0x2edd8b145
push r9
nop
push rbx
nop
not r9
pop rbx
psrlq mm6, 0x55
pop r9
push r14
emms
push r12
not r12d
rcl r12w, 0x17
pop r12
emms
pop r14
push r15
not r15d
push r8
nop
xor r15w, r8w
push rax
emms
shr r15, 3
sub eax, 0xc
pop rax
inc r8
pslld mm3, 0x5d
pop r8
mov r15b, 0xc
pop r15
dec rbx
jmp 0x2edd8af6f
mov dword [rsp + 0x2a], 0x7e257e5e
mov word [rsp + 0x2e], 0x77
push r11
nop
emms
movaps xmm8, xmm9
pcmpgtd mm5, mm2
paddw mm1, mm2
andps xmm9, xmm8
nop
pop r11
mov dword [rsp + 0x25], 0x577026
push r15
inc r15d
push r13
pmaddwd mm0, mm1
push r11
test r11w, r13w
push rdx
dec r13d
pop rdx
packsswb mm3, mm1
pop r11
emms
pop r13
paddusw mm7, mm0
pop r15
lea rbx, [rsp + 0x25]
lea rsi, [rsp + 0x2a]
mov rdx, rbx
mov rcx, rsi
call sub.msvcrt.dll__mbscmp
test eax, eax
jne 0x2edd8b252
mov rax, rsi
lea rdx, [rsp + 0x2f]
cmp r13, 0x23
jne 0x2edd8b20e
push rdx
ror dl, 0x14
push r9
psubusw mm4, mm6
emms
pop r9
nop
pop rdx
jmp 0x2edd8b21e
push r10
pslld mm5, 6
push rbx
emms
paddw mm3, mm0
pop rbx
nop
pop r10
push r15
paddb mm7, mm1
push r14
emms
nop
pop r14
nop
pop r15
xor byte [rax], 0x57
push r14
movhlps xmm14, xmm13
push rbx
cmp ebx, r14d
psrld mm4, 9
pop rbx
andnps xmm14, xmm5
pop r14
inc rax
cmp rax, rdx
jne 0x2edd8b1f7
jmp 0x2edd8b2f5
mov rax, rbx
lea rdx, [rsp + 0x28]
push rdx
punpckhbw mm3, mm5
push r8
dec r8d
push rax
pcmpgtd mm2, mm1
push rcx
dec rdx
pop rcx
packssdw mm2, mm5
pop rax
addss xmm8, xmm6
pop r8
paddb mm0, mm6
pop rdx
xor byte [rax], 0x14
push rcx
nop
not cx
pminsw mm3, mm1
dec ecx
paddw mm5, mm1
push r8
rcpps xmm10, xmm5
movaps xmm5, xmm12
subps xmm8, xmm1
emms
push rax
maxps xmm14, xmm4
psubsb mm4, mm2
shl r8d, 0xe
push r10
rol r8d, 7
shl r10d, 0x13
push r13
or r8d, r10d
pop r13
nop
and r10d, r8d
pop r10
psllq mm3, 0x35
addps xmm12, xmm9
psadbw mm5, mm3
pop rax
punpckhbw mm0, mm3
psrld mm3, 0x5d
dec r8d
psrld mm4, 5
pop r8
psrlw mm4, 0x2a
nop
comiss xmm13, xmm0
psrlq mm3, 0x19
nop
pop rcx
inc rax
cmp rax, rdx
jne 0x2edd8b25a
cmp r13w, dx
jne 0x2edd8b30e
push r8
emms
push rax
xchg r8, rax
cmp rax, r8
pop rax
psrad mm7, 0x69
pop r8
jmp 0x2edd8b324
push r10
sar r10w, 0x17
push rcx
paddsb mm2, mm3
sbb r10w, cx
pop rcx
mulps xmm14, xmm1
pop r10
push rbx
movhlps xmm13, xmm9
push r15
xorps xmm5, xmm8
emms
pop r15
dec ebx
pop rbx
xor eax, eax
add rsp, 0x30
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret