Function at 0x29a0b4f31
Capabilities:
Encrypt data using chaskey
Resolve function by parsing pe exports

Disassembly:
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x28
push r11
pxor mm3, mm5
push rbx
addps xmm12, xmm10
pop rbx
rcpps xmm15, xmm4
pop r11
mov esi, dword [0x29a0e7760]
test esi, esi
je 0x29a0b4f7b
cmp r12, rbx
jne 0x29a0b4f67
push r8
ror r8b, 0x14
pop r8
jmp 0x29a0b4f6f
push r13
psllq mm1, 0x55
pop r13
push r14
dec r14d
pop r14
jmp 0x29a0b5b6d
push r12
emms
psrad mm1, 0xf
mulss xmm11, xmm7
push r10
emms
cmp r12, r10
pcmpgtb mm3, mm2
push rdx
emms
psrad mm0, 0x15
push rbx
movups xmm14, xmm5
sub r12w, 2
pop rbx
packsswb mm2, mm1
xadd r10w, r12w
emms
pop rdx
adc r10d, r12d
emms
pop r10
ror r12b, 0x13
emms
pop r12
mov ecx, 0x60
call fcn.29a0b3d55
push r14
sar r14w, 5
pslld mm4, 0x1b
push rdx
not r14
sub edx, 0x15
push r9
andnps xmm13, xmm5
xchg r14b, r9b
push rax
pxor mm1, mm6
sub ax, 5
pop rax
not dx
mov rdx, 0x14
pop r9
nop
psrld mm2, 0x24
pop rdx
psrld mm3, 0x2e
not r14
pop r14
mov rax, qword [rax + 0x18]
push r12
nop
neg r12b
nop
push r14
punpckhbw mm7, mm4
or r12, r14
push rdx
nop
pop rdx
pxor mm7, mm0
emms
pop r14
not r12
psraw mm3, 0x60
psraw mm7, 0x5e
pop r12
push r9
inc r9
rol r9w, 0x12
sar r9, 0x11
push rcx
sbb r9b, 0xd
dec rcx
rol r9w, 1
push r14
emms
emms
push r10
emms
psubsb mm7, mm4
pop r10
nop
nop
adc r14, rcx
pop r14
paddw mm3, mm0
dec r9
pop rcx
neg r9w
psrld mm7, 0x20
pop r9
push r8
not r8d
dec r8
punpckhwd mm3, mm6
emms
movss xmm5, xmm2
push rbx
dec ebx
pcmpgtw mm1, mm7
psllq mm7, 0x16
dec rbx
push rcx
add rbx, rcx
mulss xmm5, xmm13
not ebx
push rdx
shr ecx, 6
addps xmm15, xmm6
push r10
comiss xmm5, xmm13
pop r10
pand mm7, mm5
paddd mm6, mm3
pop rdx
not bl
inc ecx
pmullw mm6, mm0
pop rcx
or r8, rbx
nop
sbb bl, r8b
shl rbx, 0xe
pop rbx
psubw mm4, mm5
emms
rcpss xmm5, xmm0
emms
inc r8
pop r8
push rcx
emms
emms
emms
push rbx
punpcklbw mm5, mm0
xorps xmm11, xmm9
dec ecx
push rdx
sar bl, 0xc
psraw mm1, 0x64
pmaxsw mm6, mm1
pop rdx
packuswb mm0, mm3
emms
nop
pop rbx
emms
rcl ecx, 5
rcr rcx, 1
pop rcx
xor ebx, ebx
mov rdx, qword [rax + 0x10]
xor eax, eax
cmp qword [rdx + 0x30], 0
je 0x29a0b5486
push rcx
psraw mm3, 0x36
not rcx
nop
push r12
neg r12w
punpcklbw mm3, mm4
neg cx
push r9
movlhps xmm13, xmm5
add ecx, r12d
paddusb mm1, mm5
pop r9
test r12b, cl
not cl
nop
pop r12
neg cx
psraw mm6, 0x15
movlhps xmm5, xmm6
pop rcx
mov rbx, qword [rdx + 0x30]
push r10
inc r10d
rcpps xmm9, xmm11
push r12
nop
pop r12
emms
ror r10d, 0x15
pop r10
cmp r12, 0x35
jne 0x29a0b5192
push r10
nop
push r9
nop
xorps xmm11, xmm4
pop r9
paddw mm1, mm4
pop r10
jmp 0x29a0b51a4
push rcx
subps xmm3, xmm13
push rbx
paddusb mm6, mm0
xor rbx, rcx
pop rbx
rol cx, 0xa
pop rcx
push r15
psllq mm4, 0xb
push r12
rol r12d, 4
pslld mm3, 0x52
pop r12
nop
pop r15
movsxd rcx, dword [rbx + 0x3c]
add rcx, rbx
push rdx
mov rdx, 1
cmp r12d, 0x35
jne 0x29a0b51e5
push r15
pcmpgtw mm6, mm2
push r8
xorps xmm11, xmm9
pslld mm4, 0x27
pop r8
emms
pop r15
jmp 0x29a0b51f7
push r9
nop
push r11
xor r11w, r9w
nop
pop r11
rol r9, 0xf
pop r9
push r13
pcmpeqb mm1, mm5
push r10
not r10d
dec r10
pop r10
maxss xmm5, xmm2
pop r13
dec rdx
jne 0x29a0b51c8
pop rdx
push r8
neg r8w
push r9
dec r9
push r10
not r9w
push r11
rcl r11d, 7
push rax
neg r9b
pop rax
mov r9d, r11d
pop r11
nop
pop r10
maxss xmm3, xmm6
pop r9
nop
pop r8
mov ecx, dword [rcx + 0x88]
push r11
dec r11d
emms
rcpss xmm4, xmm6
emms
pmaddwd mm3, mm2
push rcx
shl cx, 8
psraw mm0, 0x4e
shr r11d, 5
punpcklwd mm1, mm0
push r8
nop
nop
pandn mm7, mm3
push rax
rcpss xmm0, xmm4
psadbw mm3, mm2
push r10
nop
pop r10
shr ax, 0x15
psraw mm7, 0xe
pop rax
punpckldq mm4, mm6
dec r8
maxps xmm11, xmm12
pop r8
rol r11w, 5
rcl r11b, 8
shl r11d, 0x13
rol r11b, 0x13
pop rcx
pcmpeqb mm5, mm6
sar r11, 1
not r11
nop
nop
pop r11
test ecx, ecx
jne 0x29a0b52f2
push rdx
inc rdx
push r8
xchg r8d, edx
sub rdx, r8
push r11
psllq mm0, 0x55
mulps xmm4, xmm3
psrlq mm2, 0x43
push r14
inc r11
nop
paddsw mm5, mm3
psrlw mm7, 0x4d
pop r14
nop
subss xmm13, xmm8
nop
pop r11
or r8b, dl
rol edx, 0xa
pop r8
emms
pop rdx
jmp 0x29a0b547e
cmp r12, r13
jne 0x29a0b5306
push rax
sub eax, 0xc
pop rax
jmp 0x29a0b530c
push rdx
psrad mm3, 0x39
pop rdx
push r14
psraw mm4, 0x39
pop r14
lea rax, [rcx + rbx]
push rdx
nop
nop
emms
push r9
nop
emms
comiss xmm0, xmm7
push r12
dec rdx
inc r9
push r15
nop
psraw mm4, 0x47
pop r15
add dx, r9w
xadd r12b, dl
punpcklwd mm3, mm7
pop r12
maxps xmm13, xmm15
paddb mm0, mm1
pop r9
nop
paddsw mm2, mm3
pop rdx
mov ecx, dword [rax + 0xc]
add rcx, rbx
push r11
mov r11, 1
push rcx
ror cx, 0xd
shl cl, 6
rcr ecx, 4
push r12
subss xmm2, xmm13
pcmpgtb mm7, mm5
emms
push r15
not r12d
or r12, rcx
sub r15b, 0x12
pop r15
rol r12w, 0xf
shl cx, 0x15
nop
pop r12
pcmpeqw mm1, mm2
nop
not ecx
pop rcx
dec r11
jne 0x29a0b5360
pop r11
mov r8d, dword [rcx]
or r8d, 0x20202020
cmp r8d, 0x6e72656b
je 0x29a0b53dc
push r12
paddusb mm2, mm7
psadbw mm5, mm6
shr r12d, 2
push rbx
emms
shl r12d, 3
push r11
paddw mm7, mm2
pop r11
nop
inc r12d
pop rbx
emms
nop
nop
pop r12
jmp 0x29a0b547e
push r9
addps xmm6, xmm11
psllq mm5, 0x5b
psraw mm1, 0x63
push rcx
xor ecx, r9d
nop
ror ecx, 0x11
push r12
rol r12d, 0x14
neg ecx
psraw mm6, 0x55
pop r12
test r9, rcx
sub r9w, 0x12
emms
pop rcx
emms
psllq mm5, 0x3e
sub r9b, 0xe
pop r9
mov ecx, dword [rcx + 4]
or ecx, 0x20202020
cmp ecx, 0x61626c65
jne 0x29a0b544b
push r10
subps xmm7, xmm15
push r8
nop
push rbx
pminsw mm0, mm3
push r11
neg ebx
pop r11
movhlps xmm3, xmm2
pop rbx
emms
pop r8
psrlq mm6, 0x4f
pop r10
jmp 0x29a0b5486
push rax
mulss xmm5, xmm14
push r11
psubw mm2, mm3
push r10
cmp r11b, al
push r14
rcl r10w, 0xa
push r12
punpcklbw mm6, mm5
pop r12
ucomiss xmm6, xmm4
pop r14
pcmpgtw mm6, mm7
pop r10
test r11w, ax
pop r11
ror ax, 0x12
pop rax
mov rdx, qword [rdx]
jmp 0x29a0b510b
push r11
shr r11d, 0x13
andps xmm8, xmm6
nop
pand mm3, mm5
sub r11w, 0xc
pmaxub mm4, mm6
inc r11d
pop r11
test rax, rax
jne 0x29a0b54f9
push rbx
mov rbx, 1
push rbx
movhlps xmm1, xmm12
rcr bl, 0x13
inc rbx
push r9
mov r9w, 0xd
psubusw mm2, mm1
emms
push r15
nop
emms
push r13
psadbw mm0, mm7
psrad mm4, 0x30
pop r13
nop
neg r15d
pslld mm1, 0x3a
pop r15
emms
sbb rbx, 9
pop r9
neg ebx
psrad mm1, 0x52
pop rbx
dec rbx
jne 0x29a0b54ae
pop rbx
jmp 0x29a0b5b72
cmp r12, 0x47
jne 0x29a0b5511
push r15
nop
push rcx
emms
xchg r15w, cx
pop rcx
inc r15
pop r15
jmp 0x29a0b5523
push rbx
shl ebx, 9
push r14
not r14b
emms
pop r14
rcr rbx, 0xf
pop rbx
push r8
nop
push r10
emms
emms
pop r10
packuswb mm3, mm0
pop r8
mov ecx, dword [rax + 0x18]
push r12
ror r12d, 0x17
pmaxub mm4, mm7
nop
nop
push r14
shl r14, 0x10
psubw mm6, mm1
neg r12
inc r12d
pop r14
nop
shl r12b, 0x15
sbb r12d, 0xc
movups xmm0, xmm5
pop r12
mov r12d, dword [rax + 0x1c]
add r12, rbx
push r11
mov r11, 3
push r14
pop r14
dec r11
jne 0x29a0b5570
pop r11
mov edx, dword [rax + 0x20]
add rdx, rbx
push rcx
emms
push r11
dec r11d
nop
push rax
rcpps xmm0, xmm5
mov rcx, 0xf
shr cx, 0x16
pop rax
rol rcx, 0xc
xchg cx, r11w
pop r11
psllq mm0, 0x2e
pop rcx
mov edi, dword [rax + 0x24]
add rdi, rbx
push r8
mov r8, 1
push r11
psrlw mm3, 0x57
push rbx
pcmpgtb mm2, mm4
push r14
sub r14w, 2
pop r14
pcmpgtw mm3, mm0
pop rbx
nop
pop r11
dec r8
jne 0x29a0b55b8
pop r8
push r12
nop
rcr r12, 0xd
push r15
not r15w
pop r15
paddw mm5, mm6
nop
pop r12
push rbx
nop
push r10
nop
push r9
nop
pop r9
nop
pop r10
pcmpgtd mm5, mm2
pop rbx
lea r10d, [rcx - 1]
lea r13, [0x29a0e7768]
lea rbp, [rdx + r10*4]
add r10, r10
add r10, rdi
cmp r12b, 0x10
jne 0x29a0b5627
push r14
psrld mm3, 0xe
pop r14
jmp 0x29a0b562b
push rax
emms
pop rax
push r9
nop
pop r9
mov ecx, dword [rbp]
add rcx, rbx
push rax
paddsw mm0, mm4
nop
comiss xmm3, xmm7
movlhps xmm14, xmm8
push r11
or r11w, ax
inc r11d
subps xmm9, xmm13
packuswb mm5, mm0
pop r11
neg rax
nop
emms
punpckhbw mm2, mm5
pop rax
cmp word [rcx], 0
je 0x29a0b5aa3
push rcx
dec rcx
push r14
paddsw mm5, mm4
emms
push r13
paddsw mm1, mm5
maxss xmm2, xmm0
emms
push r12
shr r13, 5
rol cl, 0x12
pmaxub mm2, mm5
shl r14d, 0x14
pop r12
mov rcx, 0x13
not r13w
dec r14d
pop r13
psllq mm7, 0x1c
psrlq mm2, 0x19
pop r14
nop
pop rcx
call fcn.29a0b4624
mov r11d, esi
shl r11, 4
add r11, r13
mov dword [r11], eax
push r9
pslld mm5, 0x1b
subps xmm8, xmm5
orps xmm6, xmm1
nop
push rcx
sub r9d, ecx
shl rcx, 0x10
nop
rcl rcx, 0x13
pop rcx
pcmpeqb mm5, mm3
psllq mm6, 0x64
packsswb mm2, mm6
rcpss xmm0, xmm12
pop r9
movzx eax, word [r10]
mov eax, dword [r12 + rax*4]
mov dword [r11 + 4], eax
cmp r12b, cl
je 0x29a0b588b
push rdx
shl rdx, 0x12
push r15
dec r15
push r13
dec r13
push r8
emms
push rax
psrlq mm5, 0x17
push rbx
movhlps xmm15, xmm6
push r12
paddb mm2, mm3
pop r12
nop
pop rbx
pcmpgtb mm6, mm4
pop rax
emms
pop r8
punpckhwd mm2, mm5
pop r13
psubw mm3, mm1
pop r15
nop
pop rdx
cmp r11w, r8w
je 0x29a0b58be
push r11
neg r11w
push r9
mov r9w, 4
emms
push r10
sbb r11d, r9d
nop
movaps xmm10, xmm15
pop r10
test r11b, r9b
psraw mm3, 0x46
pop r9
dec r11d
pop r11
cmp r10w, r15w
je 0x29a0b58cb
push r15
rcpps xmm6, xmm2
emms
movhlps xmm6, xmm11
neg r15
nop
push r10
emms
psllq mm5, 0x10
subps xmm3, xmm12
psrlq mm6, 0x68
push r9
emms
not r15b
shl r9, 0xd
push rax
emms
sub r15d, 9
push rcx
neg r9b
pop rcx
psrlq mm1, 0x29
and r15b, r9b
pop rax
psubusw mm4, mm2
xor r10, r15
mulps xmm5, xmm12
pop r9
sub r10d, r15d
sar r15b, 0x14
packuswb mm1, mm5
packuswb mm6, mm3
pop r10
nop
sub r15d, 5
movups xmm15, xmm2
andps xmm6, xmm0
emms
pop r15
cmp dl, r11b
je 0x29a0b58f2
push r9
shr r9b, 0x14
push rax
mulps xmm11, xmm6
psraw mm6, 0x1f
push rdx
xchg r9, rax
not ax
pmaddwd mm1, mm2
push r12
ror r9, 0x10
nop
sub r12, 0xc
addps xmm1, xmm8
pop r12
psrlq mm7, 0x18
psubusw mm0, mm2
neg al
pop rdx
psrlq mm4, 1
emms
pop rax
ror r9w, 7
pop r9
cmp ecx, 2
je 0x29a0b5929
push r13
neg r13
pand mm5, mm7
push rbx
paddb mm3, mm6
emms
push rax
emms
pcmpeqb mm7, mm1
push r14
psrld mm4, 0x59
punpcklbw mm6, mm4
push r8
emms
dec r8
pop r8
xadd bl, r14b
rcl r13d, 7
pop r14
nop
subss xmm12, xmm15
pop rax
sbb r13w, 0x10
emms
pop rbx
shr r13, 0x11
rcpps xmm14, xmm6
pop r13
cmp r14d, r9d
je 0x29a0b5942
jne 0x29a0b598f
push rcx
emms
emms
mov ecx, 0xf
pandn mm4, mm6
push r15
orps xmm5, xmm7
paddw mm5, mm0
xor cx, r15w
sub r15b, cl
pop r15
addss xmm11, xmm4
neg rcx
psrlq mm5, 0x6b
minps xmm7, xmm6
pop rcx
jmp 0x29a0b598f
push r10
sub r10d, 0xe
pop r10
jmp 0x29a0b598f
push rax
shr ax, 0x16
push r9
nop
packsswb mm7, mm5
push r15
nop
subps xmm14, xmm0
emms
pop r15
emms
shr rax, 0xf
pop r9
maxps xmm6, xmm1
pop rax
jmp 0x29a0b598f
push r14
inc r14
nop
punpckldq mm0, mm3
push rcx
shl r14b, 6
not r14w
dec r14d
push rdx
maxps xmm8, xmm1
emms
inc r14
pop rdx
pcmpgtb mm5, mm6
dec r14d
emms
pop rcx
shl r14b, 0xa
dec r14d
packuswb mm3, mm1
pop r14
jmp 0x29a0b598f
push r10
emms
push rcx
emms
push rbx
movups xmm8, xmm0
pop rbx
orps xmm14, xmm8
pop rcx
not r10d
pop r10
jmp 0x29a0b598f
push r9
rcpss xmm12, xmm9
subps xmm9, xmm5
sub r9w, 0xe
emms
push r15
neg r15
emms
rcpss xmm0, xmm9
push rcx
xor rcx, r15
pslld mm3, 0x67
push rbx
neg bl
pop rbx
rcpss xmm11, xmm13
nop
pop rcx
rol r15, 9
psrlq mm6, 0xa
rcl r15, 3
pop r15
psllq mm4, 0xf
psraw mm0, 0x17
emms
emms
pop r9
push r9
nop
por mm5, mm1
push r13
adc r13d, r9d
orps xmm1, xmm15
push r14
psrld mm7, 3
emms
push rbx
shl r14w, 0xf
rcpss xmm5, xmm2
push r10
xchg r14, rbx
shl bl, 9
pop r10
inc r13
mulss xmm4, xmm13
pop rbx
pmaddwd mm1, mm6
ror r13w, 0x10
pop r14
neg r13b
inc r9
pop r13
shl r9, 7
ucomiss xmm12, xmm5
pop r9
mov eax, dword [r11 + 4]
add rax, rbx
mov qword [r11 + 8], rax
push r12
psrlq mm6, 0x1a
push r14
emms
not r12d
pop r14
not r12b
pop r12
inc esi
push r12
emms
push rcx
psraw mm4, 0xf
push r8
dec ecx
push rdx
sbb r12w, r8w
push r14
emms
pop r14
mov r8w, 0x12
pop rdx
rcr r12, 6
pop r8
sar r12b, 0x17
pop rcx
nop
pop r12
cmp esi, 0x7d0
jne 0x29a0b5a7c
cmp r12w, r14w
jne 0x29a0b5a53
push rax
psraw mm1, 0xe
push r14
addss xmm1, xmm12
test r14w, ax
pop r14
ucomiss xmm13, xmm12
pop rax
jmp 0x29a0b5a64
push r15
xorps xmm7, xmm9
push rcx
emms
xadd rcx, r15
pop rcx
nop
pop r15
push r13
nop
push r11
shl r11b, 0x15
shr r13d, 9
pop r11
emms
pop r13
jmp 0x29a0b5afd
push rcx
emms
push r8
nop
push r11
emms
push rdx
pmullw mm2, mm3
push r10
cmp r8b, r11b
pop r10
dec r11d
pop rdx
pslld mm3, 0x65
pop r11
minps xmm12, xmm9
pop r8
nop
pop rcx
push r10
psrlq mm4, 0x3f
push r12
pcmpgtb mm4, mm5
push r11
emms
push r14
sub r11b, 0xa
push rbx
subss xmm2, xmm10
push rcx
not r10b
push rax
psllq mm7, 0x60
pop rax
pminsw mm3, mm2
pop rcx
rol r14, 0xc
pop rbx
neg r10w
pop r14
movlhps xmm10, xmm11
pop r11
shl r12b, 0x16
pop r12
neg r10b
pop r10
sub rbp, 4
lea rax, [r10 - 2]
cmp rdi, r10
je 0x29a0b5afd
mov r10, rax
jmp 0x29a0b5614
push r12
minps xmm6, xmm5
push rcx
andps xmm11, xmm14
push rdx
nop
push r9
nop
push rbx
emms
push r11
nop
push r14
psraw mm4, 0x44
pop r14
rcr r12, 0x12
pop r11
add r9, rcx
pop rbx
emms
pop r9
punpcklbw mm2, mm7
pop rdx
shl r12d, 0xc
pop rcx
not r12w
pop r12
mov dword [0x29a0e7760], esi
push r10
psrlq mm4, 8
nop
psraw mm5, 0x37
push r11
rcr r11w, 3
nop
push rcx
sar r10, 3
pop rcx
subss xmm13, xmm12
pand mm2, mm5
pop r11
dec r10
packuswb mm0, mm2
rol r10w, 0x12
pop r10
mov eax, 1
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
ret