Function at 0x2edd71b2a
Capabilities:
Authenticate hmac
Encode data using base64
Encode data using xor

Disassembly:
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x68
cmp r13b, 5
jne 0x2edd71b47
push r10
inc r10d
pop r10
jmp 0x2edd71b4f
push r13
sar r13b, 0xd
pop r13
push r12
pxor mm7, mm4
pop r12
cmp r13, 1
jne 0x2edd71b6d
push r9
addps xmm9, xmm1
pop r9
jmp 0x2edd71b75
push r11
shr r11b, 0x10
pop r11
push r13
paddw mm5, mm1
pop r13
movabs rax, 0x4c00320058003f
mov dword [rsp + 0x58], 0x2f
mov qword [rsp + 0x50], rax
push rdx
not dx
nop
nop
punpckhbw mm2, mm5
rol edx, 0x11
shr edx, 0x11
nop
pop rdx
lea rbx, [rsp + 0x50]
mov rcx, rbx
call sub.msvcrt.dll_wcslen
mov rdx, rax
mov rax, rbx
cmp rdx, 2
lea rdx, [rsp + 0x5a]
jne 0x2edd71c67
cmp r13w, 0x66
jne 0x2edd71bf5
push rcx
pslld mm7, 0x4f
push r13
pmaddwd mm0, mm6
neg r13
pop r13
packssdw mm1, mm3
pop rcx
jmp 0x2edd71c07
push rax
pand mm5, mm7
push r14
psrad mm5, 0x59
neg al
pop r14
dec rax
pop rax
push r8
shl r8b, 0x13
push r9
dec r8
not r9d
pop r9
neg r8b
pop r8
xor word [rax], 0x22
push rax
nop
push r9
andnps xmm13, xmm7
push rbx
subps xmm3, xmm9
push r8
maxss xmm2, xmm10
push r15
nop
push r11
dec r11d
pop r11
emms
pop r15
punpcklbw mm6, mm3
pop r8
psrlw mm2, 0x14
pop rbx
addps xmm15, xmm5
pop r9
dec eax
pop rax
add rax, 2
cmp rax, rdx
jne 0x2edd71bc6
jmp 0x2edd71cf7
cmp r13d, r14d
jne 0x2edd71c90
push rbx
nop
push r12
comiss xmm8, xmm4
shr bx, 9
pop r12
nop
pop rbx
jmp 0x2edd71ca0
push rax
inc eax
push r15
emms
sub ax, 0x15
pop r15
emms
pop rax
push r9
psllq mm7, 0x17
push rdx
emms
inc edx
pop rdx
movups xmm1, xmm15
pop r9
xor word [rax], 4
push r10
sbb r10d, 9
psrlw mm7, 0x47
nop
push rdx
xorps xmm9, xmm5
not edx
por mm5, mm4
push rax
psrld mm7, 6
inc r10
rcr ax, 0xf
pop rax
psrlq mm0, 0x58
emms
inc edx
pop rdx
inc r10
nop
neg r10b
pop r10
add rax, 2
cmp rax, rdx
jne 0x2edd71c67
push r12
not r12w
push r9
movhlps xmm1, xmm11
push r15
psrld mm5, 0x30
push r11
subps xmm2, xmm9
pop r11
rol r15w, 0x11
pop r15
sar r12, 0x15
pop r9
movlhps xmm1, xmm12
pop r12
mov dword [rsp + 0x50], 0x4f344724
mov byte [rsp + 0x54], 0
push r10
pslld mm2, 0x66
push r15
xor r10d, r15d
push r8
pcmpeqd mm2, mm6
push r14
inc r15
push rax
nop
pop rax
pslld mm5, 0x13
pop r14
emms
pop r8
emms
pop r15
shr r10, 9
pop r10
mov rcx, rbx
call sub.msvcrt.dll_strlen
cmp rax, 4
jne 0x2edd71e66
mov rax, rbx
lea rdx, [rsp + 0x54]
push r12
pslld mm7, 0x2f
emms
psllq mm7, 0x3f
punpckldq mm4, mm2
not r12b
pslld mm4, 0x3a
nop
emms
andps xmm2, xmm6
inc r12d
punpckhbw mm5, mm0
psrlw mm4, 0x44
pop r12
xor byte [rax], 0x30
cmp r13b, r8b
jne 0x2edd71e0d
push rbx
inc rbx
nop
nop
psrlw mm4, 0x10
push rax
psraw mm1, 0x13
nop
emms
paddsb mm1, mm7
pop rax
neg rbx
nop
psrlq mm4, 0x5e
psubw mm4, mm7
pop rbx
jmp 0x2edd71e40
push r11
movss xmm15, xmm3
push rbx
emms
push r8
mov r11d, r8d
push r14
psrad mm1, 0x67
push rdx
psllq mm6, 0x14
pop rdx
rcl r14w, 0xd
pop r14
andnps xmm8, xmm14
pop r8
ucomiss xmm11, xmm1
pop rbx
pslld mm0, 0x36
pop r11
push r11
emms
nop
emms
movaps xmm10, xmm14
rcl r11b, 0x12
neg r11w
pmaxub mm3, mm2
pop r11
inc rax
cmp rax, rdx
jne 0x2edd71d77
jmp 0x2edd71ea3
push r13
nop
push r9
packsswb mm7, mm2
sub r13w, r9w
push rdx
psadbw mm1, mm2
punpcklbw mm0, mm7
dec r9d
push rbx
pmaddwd mm4, mm5
nop
psrad mm3, 0x27
psrlw mm5, 0x18
pop rbx
neg r9b
addps xmm13, xmm10
packsswb mm0, mm2
pop rdx
xchg r13b, r9b
not r9
pop r9
psrad mm4, 0x59
pop r13
push rdx
emms
push r8
addps xmm7, xmm6
push r10
emms
push rax
rcl dx, 4
pop rax
dec rdx
pop r10
rcpss xmm9, xmm12
pop r8
pmullw mm3, mm4
pop rdx
push r12
psrad mm6, 0x12
neg r12w
pslld mm6, 8
emms
nop
push r14
emms
emms
emms
rol r12b, 8
neg r14w
pop r14
neg r12b
rol r12w, 4
punpckhwd mm7, mm1
pcmpeqd mm7, mm0
psraw mm3, 0x62
dec r12d
pop r12
mov edx, 4
mov ecx, 2
call sub.msvcrt.dll_calloc
mov rcx, rax
push r15
nop
push r14
psrlw mm0, 0x5c
emms
pop r14
psrlq mm6, 0x59
pop r15
mov edx, 0x48
call sub.msvcrt.dll_realloc
mov rcx, rax
xor eax, eax
push rax
pmullw mm0, mm3
addss xmm2, xmm14
push r11
addss xmm10, xmm6
psllq mm7, 0x4c
push rbx
dec r11
nop
push r13
ror rax, 0x13
pandn mm3, mm0
push r8
emms
pmaxsw mm2, mm4
pop r8
sbb rbx, 0x17
adc r11d, eax
pop r13
psrlw mm4, 0x66
emms
pop rbx
andps xmm6, xmm14
pminsw mm0, mm7
pop r11
andps xmm2, xmm6
inc rax
pop rax
xor dword [rcx + rax*4], 0x99
cmp r13b, 3
jne 0x2edd71f93
push r13
emms
pop r13
jmp 0x2edd71f9b
push r15
psllq mm4, 0x63
pop r15
push r8
psraw mm7, 0x40
pop r8
test rax, rax
jne 0x2edd71faf
mov eax, 1
jmp 0x2edd71f33
call sub.msvcrt.dll_free
push r15
nop
push r12
psrlq mm3, 0x24
push r14
emms
push r10
nop
push rbx
emms
push r9
pcmpgtd mm1, mm2
pop r9
emms
pop rbx
nop
pop r10
test r15, r14
pop r14
not r15w
pop r12
pcmpeqd mm0, mm6
pop r15
push r11
sub r11b, 0x13
emms
push rcx
emms
pop rcx
sub r11b, 6
subps xmm14, xmm2
pop r11
push rax
inc eax
push r14
nop
emms
push r13
psrlw mm0, 0x26
dec eax
not rax
pop r13
sub r14w, 0x11
mulps xmm14, xmm3
pop r14
maxss xmm7, xmm5
pop rax
movabs rax, 0x55005e006e0051
mov word [rsp + 0x58], 0
mov qword [rsp + 0x50], rax
push r8
packuswb mm5, mm4
push rbx
dec r8d
push r9
inc rbx
push r14
rcl r8, 0x15
pop r14
nop
pop r9
mov bl, 0xb
pop rbx
addss xmm1, xmm2
pop r8
mov rcx, rbx
call sub.msvcrt.dll_wcslen
cmp rax, 2
jne 0x2edd720a5
push r11
nop
not r11d
packssdw mm5, mm4
push r9
comiss xmm8, xmm10
inc r9
emms
push r13
maxss xmm8, xmm15
nop
push rax
rcpps xmm15, xmm4
subss xmm6, xmm4
pop rax
pandn mm2, mm0
pcmpeqw mm5, mm4
nop
pop r13
neg r9d
pmaddwd mm1, mm6
pop r9
neg r11
emms
pop r11
jmp 0x2edd720bd
push r9
inc r9d
por mm2, mm1
movaps xmm3, xmm0
nop
xorps xmm8, xmm13
emms
sub r9, 0x14
pop r9
push rdx
psllq mm4, 0x4f
pmullw mm0, mm3
psrlq mm5, 3
pmullw mm3, mm4
psubsb mm4, mm0
inc rdx
pslld mm2, 0x29
nop
not dx
nop
psrad mm1, 0x3d
psrld mm1, 0x33
pop rdx
rdtsc
push r12
mov r12, 1
push r15
push r13
pop r13
pop r15
dec r12
jne 0x2edd720ef
pop r12
shl rdx, 0x20
mov eax, eax
mov rsi, rdx
or rsi, rax
push r9
emms
emms
rol r9d, 0xf
nop
push r11
psubw mm1, mm5
emms
emms
push rax
pcmpeqb mm1, mm5
psrld mm0, 0x5d
push rbx
emms
pop rbx
psraw mm2, 0x2a
pslld mm6, 0x55
pop rax
sbb r11d, r9d
and r11d, r9d
nop
pop r11
rol r9, 1
pmaxsw mm4, mm2
movhlps xmm13, xmm11
nop
pop r9
movabs rax, 0x6d00710048
mov qword [rsp + 0x50], rax
push r10
rcr r10d, 0x17
push rdx
and dl, r10b
push r14
rcl r10b, 8
pop r14
rcr dx, 0xc
pop rdx
punpcklbw mm5, mm7
pop r10
mov dword [rsp + 0x48], 0x750030
mov word [rsp + 0x4c], 0
push r10
subss xmm15, xmm3
push r15
sub r15w, r10w
push rcx
rcr rcx, 0x13
push r11
psrlq mm2, 0x19
push r12
emms
pop r12
emms
pop r11
pcmpeqw mm3, mm1
pop rcx
xchg r15w, r10w
pop r15
nop
pop r10
lea rbp, [rsp + 0x48]
mov rcx, rbx
mov rdx, rbp
call sub.msvcrt.dll_wcscmp
test eax, eax
jne 0x2edd721df
push r13
psrlw mm2, 0x23
psrld mm7, 0x1c
push r8
emms
pop r8
nop
addps xmm11, xmm6
pop r13
jmp 0x2edd7221a
push r12
emms
neg r12w
push r9
shr r9d, 7
ror r12d, 0x15
push r14
emms
andnps xmm0, xmm5
push rdx
psrlq mm7, 0x2f
movhlps xmm10, xmm0
pop rdx
psraw mm1, 0x2e
paddusw mm1, mm6
pop r14
psrlw mm5, 0x2e
psllq mm4, 0x3b
pop r9
emms
nop
pop r12
cmp r13, r12
jne 0x2edd72248
push r9
psrlw mm3, 0x43
push r8
pmulhuw mm0, mm7
sar r8w, 3
pop r8
emms
pop r9
jmp 0x2edd7225f
push r10
not r10b
push r13
and r10b, r13b
not r13w
pop r13
subss xmm1, xmm13
pop r10
push r11
shr r11, 0x14
push rbx
nop
nop
pop rbx
packsswb mm6, mm5
pop r11
mov qword [rsp + 0x50], 0xffffffffffffd8f0
push r14
paddsb mm7, mm0
push rdx
mov dl, 0xe
push r15
adc rdx, r14
push r13
nop
push rcx
test ecx, r13d
push r10
psubw mm5, mm2
pop r10
nop
pop rcx
rcr r15b, 0x12
pop r13
xchg dl, r14b
pop r15
pcmpgtb mm0, mm3
pop rdx
psllq mm3, 0x67
pop r14
call fcn.2edd83a61
mov ecx, 0x14
mov rax, rsi
xor edx, edx
div rcx
imul edi, edx, 0x3e8
cmp r13b, al
jne 0x2edd722ec
push r9
nop
push r11
psrld mm0, 0x55
inc r11
pop r11
comiss xmm11, xmm5
pop r9
jmp 0x2edd722ff
push r15
dec r15d
push r14
minps xmm3, xmm14
not r14
pop r14
nop
pop r15
push rbx
dec rbx
push r12
not r12w
shl bx, 0x13
pop r12
nop
pop rbx
lea eax, [rdi + 0x2710]
imul rax, qword [rsp + 0x50]
mov qword [rsp + 0x50], rax
push r15
not r15
pop r15
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x30]
call fcn.2edd7a9ed
mov rdx, rbx
xor ecx, ecx
call fcn.2edd79347
lea rcx, [rsp + 0x40]
mov rdx, rbp
call fcn.2edd7a9ed
mov dword [rsp + 0x26], 0x746153
push r10
emms
not r10d
psraw mm6, 0xc
push r11
inc r11
add r10, r11
xchg r11w, r10w
push rdx
dec r11d
emms
rcr r10w, 0x13
pop rdx
sar r10b, 0xe
paddb mm0, mm6
sbb r10w, r11w
pop r11
sar r10b, 0x17
psrlw mm5, 0xe
emms
pop r10
mov dword [rsp + 0x2a], 0x6034756f
mov word [rsp + 0x2e], 0x6c
push r10
mov r10, 2
push r11
pop r11
dec r10
jne 0x2edd723ab
pop r10
lea rbx, [rsp + 0x2a]
lea rsi, [rsp + 0x26]
mov rdx, rbx
mov rcx, rsi
call sub.msvcrt.dll__mbscmp
test eax, eax
jne 0x2edd7242e
mov rax, rsi
lea rdx, [rsp + 0x29]
push r13
nop
push rbx
emms
shl bx, 2
push r15
andps xmm3, xmm10
add bx, r13w
pslld mm7, 0x2c
pop r15
inc r13
shl r13, 0x16
pop rbx
nop
pop r13
xor byte [rax], 0x42
push rcx
andnps xmm6, xmm7
pcmpgtb mm2, mm1
rcpss xmm6, xmm9
psraw mm7, 0x46
push rax
psrlq mm5, 0x54
neg ecx
pminsw mm2, mm7
nop
pop rax
emms
psadbw mm5, mm3
nop
dec ecx
pop rcx
inc rax
cmp rdx, rax
jne 0x2edd723d7
jmp 0x2edd7246a
mov rax, rbx
lea rdx, [rsp + 0x2f]
push r9
rcpps xmm7, xmm11
push r14
paddw mm5, mm4
movaps xmm15, xmm2
pop r14
pmaddwd mm6, mm0
pop r9
xor byte [rax], 0x43
push rax
mov rax, 2
push rcx
dec rcx
pop rcx
dec rax
jne 0x2edd72457
pop rax
inc rax
cmp rax, rdx
jne 0x2edd72436
push r14
pslld mm6, 0xa
movaps xmm2, xmm13
rcr r14b, 6
nop
sar r14, 0x10
psrlw mm1, 4
nop
emms
neg r14d
psrad mm2, 0x58
nop
pcmpeqw mm2, mm7
pop r14
imul rax, qword [rsp + 0x40], 0x3e8
cqo
idiv qword [rsp + 0x38]
mov rbx, rax
imul rax, qword [rsp + 0x30], 0x3e8
cqo
idiv qword [rsp + 0x48]
sub ebx, eax
push r13
mov r13, 3
push r14
psrlw mm0, 0x2b
push rdx
emms
push r15
packsswb mm0, mm5
push r9
nop
push r12
maxss xmm10, xmm0
push r13
psrlq mm2, 0x5a
push r8
pmullw mm5, mm0
pop r8
xor r14, rdx
pop r13
sub r12b, r14b
pop r12
psrlq mm4, 4
pop r9
psrld mm5, 0x38
pop r15
addps xmm14, xmm15
pop rdx
psrld mm1, 0xb
pop r14
dec r13
jne 0x2edd724bf
pop r13
call fcn.2edd83e6f
add edi, 0x2328
cmp edi, ebx
jae 0x2edd72535
push rbx
mov rbx, 2
push r9
push r8
pop r8
pop r9
dec rbx
jne 0x2edd72523
pop rbx
xor eax, eax
jmp 0x2edd72595
push r13
mov r13, 3
push r14
psrlw mm0, 0x2b
push rdx
emms
push r15
packsswb mm0, mm5
push r9
nop
push r12
maxss xmm10, xmm0
push r13
psrlq mm2, 0x5a
push r8
pmullw mm5, mm0
pop r8
xor r14, rdx
pop r13
sub r12b, r14b
pop r12
psrlq mm4, 4
pop r9
psrld mm5, 0x38
pop r15
addps xmm14, xmm15
pop rdx
psrld mm1, 0xb
pop r14
dec r13
jne 0x2edd7253e
pop r13
call fcn.2edd83e6f
mov eax, 1
add rsp, 0x68
pop rbx
pop rsi
pop rdi
pop rbp
ret