Function at 0x2e49bd193
Capabilities:
Authenticate hmac
Encode data using xor

Disassembly:
push rdi
push rsi
push rbx
sub rsp, 0x30
mov rsi, rcx
movsxd rbx, edx
push rax
mov rax, 3
push rbx
pop rbx
dec rax
jne 0x2e49bd1a8
pop rax
call fcn.2e49b2504
test ebx, ebx
jle 0x2e49bd475
push r15
movlhps xmm0, xmm7
push r8
nop
push r14
not r14
push rdx
pslld mm4, 0x47
push rbx
mulps xmm1, xmm3
push rax
emms
pop rax
shl bx, 0xe
pop rbx
punpckhwd mm5, mm0
pop rdx
nop
pop r14
rcpss xmm13, xmm7
pop r8
sar r15, 5
pop r15
mov edx, 8
mov ecx, 3
call sub.msvcrt.dll_calloc
mov rcx, rax
push r9
andnps xmm13, xmm1
andnps xmm8, xmm6
emms
nop
pslld mm4, 0x45
push r12
add r9b, r12b
psrad mm3, 0x5a
neg r9w
paddusw mm2, mm4
push r8
pmaxsw mm1, mm5
nop
dec r12
push rdx
psrlw mm1, 0x61
movups xmm10, xmm0
push rbx
pcmpgtd mm7, mm5
pop rbx
movaps xmm13, xmm8
pcmpeqd mm4, mm1
pop rdx
adc r9, r12
inc r8d
maxss xmm13, xmm7
pop r8
emms
emms
and r12d, r9d
xadd r12w, r9w
pop r12
andps xmm12, xmm5
inc r9d
not r9
psrad mm1, 0xf
not r9b
pop r9
mov edx, 0xc0
call sub.msvcrt.dll_realloc
mov rcx, rax
push r9
nop
dec r9
emms
nop
push rdx
sbb rdx, r9
pmaddwd mm0, mm1
emms
push r12
nop
rol r9b, 4
push rax
nop
pop rax
sar r9, 0x10
test dx, r9w
pop r12
andnps xmm11, xmm14
dec rdx
maxss xmm10, xmm0
pop rdx
psubw mm4, mm2
maxss xmm1, xmm14
psrlw mm5, 0x58
shl r9, 0xb
pop r9
call sub.msvcrt.dll_free
push rdx
pcmpgtb mm4, mm1
rol rdx, 0xb
push r15
sbb dl, 0xc
pop r15
orps xmm10, xmm13
sub edx, 0x11
pop rdx
cmp word [rsi + rbx*2], 0x5c
lea rdi, [rbx - 1]
jne 0x2e49bd3a4
cmp dx, 0x53
jne 0x2e49bd347
push rdx
neg edx
push rbx
psraw mm1, 0x43
ror dx, 2
pop rbx
paddsw mm7, mm6
pop rdx
jmp 0x2e49bd360
push rcx
emms
push r14
rcpss xmm12, xmm8
push r13
pandn mm7, mm1
pop r13
adc r14, rcx
pop r14
emms
pop rcx
push rbx
addps xmm5, xmm14
movups xmm13, xmm14
shl ebx, 0x16
addss xmm15, xmm8
pmaddwd mm2, mm5
push r10
emms
rcr r10b, 7
psrlw mm0, 0x2f
emms
and r10w, bx
pop r10
paddsw mm7, mm0
nop
packsswb mm3, mm1
emms
mulss xmm5, xmm4
psraw mm7, 0x23
pop rbx
lea rax, [rsi + rbx*2 + 2]
jmp 0x2e49bd636
cmp dl, r10b
jne 0x2e49bd40e
push r8
shl r8, 0xa
push rax
nop
ucomiss xmm10, xmm13
push r11
and r8d, r11d
nop
shl eax, 0x10
push r9
shl r8, 6
neg rax
sbb r8b, al
dec rax
pop r9
sbb eax, 0xb
rcl r11, 0x14
dec rax
pop r11
movups xmm7, xmm8
rcpps xmm6, xmm4
pop rax
rol r8d, 0x17
pop r8
jmp 0x2e49bd44e
push r8
psrlw mm7, 0x65
push rcx
test r8b, cl
push rax
neg cl
push r13
pslld mm3, 6
push r10
inc eax
push r12
nop
push r14
psraw mm3, 2
pop r14
psrlq mm5, 0x36
pop r12
psadbw mm7, mm0
pop r10
psrld mm6, 0x29
pop r13
inc r8d
pop rax
cmp cx, r8w
pop rcx
emms
pop r8
cmp rdx, 0x58
jne 0x2e49bd45b
push rax
shl eax, 9
pop rax
jmp 0x2e49bd463
push r11
rcl r11b, 8
pop r11
push r15
nop
pop r15
call sym.PathCursorServiceEmpty.dll_BrowseTaskPrompt
mov rbx, rdi
jmp 0x2e49bd1b5
mov dword [rsp + 0x27], 0x584e6c
push r11
nop
push r15
emms
push r8
mov r15b, r11b
push r12
sar r15w, 0x14
push rbx
psraw mm7, 0x27
push rcx
psraw mm2, 0x6a
pop rcx
mov bx, 0xf
pop rbx
rol r15, 0x15
pop r12
test r8d, r15d
pop r8
paddusb mm5, mm4
pop r15
emms
pop r11
mov dword [rsp + 0x2b], 0x652e6f2c
mov byte [rsp + 0x2f], 0
push r11
pcmpgtd mm4, mm1
push r13
emms
push r10
subss xmm15, xmm6
push rax
psllq mm5, 0x46
pop rax
rcpss xmm0, xmm4
pop r10
psllq mm2, 7
pop r13
pandn mm4, mm2
pop r11
lea rbx, [rsp + 0x2b]
lea rsi, [rsp + 0x27]
mov rdx, rbx
mov rcx, rsi
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x2e49bd588
mov rax, rsi
lea rdx, [rsp + 0x2a]
push r11
inc r11
psllq mm0, 0x62
nop
push r14
dec r14d
movups xmm9, xmm12
emms
push rax
paddsw mm2, mm6
mov r14d, eax
push rcx
pmaddwd mm5, mm0
subss xmm5, xmm3
pop rcx
psrlq mm1, 0x2f
rcl r14d, 0x17
pcmpeqw mm0, mm5
pop rax
subps xmm12, xmm11
emms
pop r14
rol r11d, 3
rcpss xmm8, xmm4
pop r11
xor byte [rax], 0x31
push rdx
ror edx, 5
mov edx, 0xa
shl dx, 0xb
push rcx
rcr cx, 1
emms
push r15
dec r15d
pop r15
comiss xmm14, xmm3
xadd rcx, rdx
pop rcx
ucomiss xmm9, xmm2
nop
nop
pop rdx
inc rax
cmp rax, rdx
jne 0x2e49bd50d
jmp 0x2e49bd5ea
mov rax, rbx
lea rdx, [rsp + 0x2f]
push rdx
mov rdx, 2
push r13
pop r13
dec rdx
jne 0x2e49bd598
pop rdx
xor byte [rax], 0x95
cmp dl, r15b
jne 0x2e49bd5c2
push rax
dec rax
push r15
subss xmm6, xmm8
maxss xmm0, xmm10
pop r15
paddsb mm6, mm7
pop rax
jmp 0x2e49bd5d3
push rcx
packssdw mm0, mm1
push r8
paddsb mm6, mm0
and r8, rcx
pop r8
emms
pop rcx
push r12
emms
push rdx
dec r12d
nop
pop rdx
punpcklbw mm0, mm7
pop r12
inc rax
cmp rax, rdx
jne 0x2e49bd590
push r15
shl r15b, 7
andps xmm1, xmm0
sub r15w, 0x11
dec r15
push r9
xadd r9w, r15w
paddsb mm3, mm7
psrad mm4, 0x38
push r14
dec r9d
nop
push rdx
xor r15b, r9b
pop rdx
nop
inc r14
pop r14
paddusw mm4, mm0
xadd r9, r15
emms
pop r9
inc r15
emms
psrld mm1, 0x37
psrad mm6, 0xa
pop r15
xor eax, eax
add rsp, 0x30
pop rbx
pop rsi
pop rdi
ret