Function at 0x2e49a0186
Capabilities:
Authenticate hmac
Encode data using base64
Encode data using xor
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x28
cmp dl, 0x27
je 0x2e49a02a4
push r15
punpcklbw mm4, mm7
emms
punpcklwd mm1, mm3
emms
shl r15, 8
shl r15b, 0x15
nop
pop r15
cmp ebx, 0x19
je 0x2e49a02b0
push r9
emms
andnps xmm1, xmm5
shl r9, 0x12
push rax
rcr r9b, 0x10
emms
test eax, r9d
push rdx
shl r9w, 0xb
add rax, r9
push r13
xchg r9b, dl
ror r13b, 4
pop r13
sub edx, r9d
packssdw mm2, mm4
rcl rdx, 0x15
pop rdx
sar rax, 0xd
mov eax, 6
pop rax
punpcklbw mm7, mm5
nop
pop r9
cmp rbx, 0x16
je 0x2e49a0313
push r13
psrld mm7, 0x53
push r15
pcmpgtw mm1, mm6
mov r13d, 1
push rdx
shl r13b, 0x13
shl edx, 0x14
not r15
push rcx
emms
or rcx, r13
and r15b, r13b
nop
pop rcx
not r15b
psraw mm5, 0x1d
add r13b, r15b
pop rdx
addps xmm4, xmm13
emms
pop r15
mov r13w, 9
pop r13
cmp dl, 0x29
je 0x2e49a032c
push rbx
mulss xmm9, xmm8
pandn mm5, mm0
nop
emms
subps xmm3, xmm10
push rcx
nop
rol cl, 0x10
rcpps xmm14, xmm13
inc ebx
pxor mm3, mm4
pop rcx
nop
nop
rol bx, 0xf
emms
nop
nop
pop rbx
cmp rbx, r15
je 0x2e49a0359
push rax
emms
push r14
psllq mm1, 1
pop r14
shl al, 3
pop rax
cmp r10b, r15b
je 0x2e49a0388
jne 0x2e49a03de
push r11
dec r11d
pop r11
jmp 0x2e49a03de
push r15
dec r15d
push rdx
punpckhwd mm7, mm4
pmullw mm4, mm7
push r9
psrad mm6, 0x56
psrlq mm3, 0x5a
addps xmm0, xmm3
push rax
mulps xmm7, xmm5
pcmpgtd mm6, mm2
pcmpgtw mm7, mm1
nop
push r8
psrlw mm6, 4
emms
xor r15, rdx
packuswb mm3, mm1
add r8w, r9w
pop r8
andnps xmm4, xmm0
sar r9w, 1
psrad mm6, 0x3e
psubw mm4, mm5
pop rax
nop
adc r9, rdx
psrlw mm4, 5
pop r9
inc r15d
shr r15, 0xb
pop rdx
inc r15
pop r15
jmp 0x2e49a03de
push rcx
mov rcx, 3
push r8
push rax
pop rax
pop r8
dec rcx
jne 0x2e49a031b
pop rcx
jmp 0x2e49a03de
push r10
inc r10d
dec r10
emms
sbb r10, 8
shl r10d, 0x17
emms
movlhps xmm9, xmm4
nop
mov r10d, 5
nop
not r10b
inc r10d
pop r10
jmp 0x2e49a03de
push r13
sub r13d, 4
psrad mm2, 5
paddusw mm3, mm1
rcpps xmm7, xmm4
psrad mm1, 0x4d
paddusw mm3, mm0
not r13b
neg r13
addss xmm10, xmm5
psrlq mm6, 0x1e
emms
pxor mm7, mm0
pop r13
jmp 0x2e49a03de
cmp edx, 0x4a
jne 0x2e49a03b8
push rax
paddsb mm0, mm4
push r10
rcr eax, 3
psrlw mm1, 0x15
pop r10
neg rax
pop rax
jmp 0x2e49a03c7
push rbx
subps xmm5, xmm14
push rcx
andps xmm2, xmm4
shl ecx, 0xb
pop rcx
nop
pop rbx
push r13
psrld mm1, 0x5e
push r12
shl r13b, 8
paddd mm1, mm3
pop r12
psllq mm7, 0x3d
pop r13
push r14
pxor mm2, mm7
push r10
psrlw mm4, 9
nop
pop r10
paddusw mm0, mm5
pop r14
mov esi, dword [0x2e49d8760]
test esi, esi
je 0x2e49a042f
push r15
sub r15, 2
mulps xmm2, xmm13
sar r15b, 0x13
psrad mm0, 0x5f
pcmpgtb mm4, mm5
inc r15d
neg r15w
shl r15d, 0x12
emms
movhlps xmm5, xmm0
dec r15
sbb r15w, 0x11
pop r15
jmp 0x2e49a1316
push r14
pslld mm5, 0x60
push rbx
orps xmm13, xmm15
push r9
mov r9d, 0x11
push rax
emms
push r15
emms
pop r15
pslld mm5, 0x58
pop rax
dec r9
pop r9
dec ebx
pop rbx
sar r14, 0x17
pop r14
mov ecx, 0x60
call fcn.2e499f545
push r12
mov r12, 3
push rbx
push rdx
pop rdx
pop rbx
dec r12
jne 0x2e49a0471
pop r12
mov rax, qword [rax + 0x18]
push r14
rcr r14, 7
not r14w
push rdx
not r14d
pmaxsw mm1, mm3
push r13
addps xmm7, xmm9
sub r14, r13
push rbx
shr ebx, 0x16
pslld mm6, 0x5a
pop rbx
nop
emms
pop r13
packssdw mm4, mm7
sub r14, rdx
pop rdx
nop
pmaddwd mm4, mm6
pop r14
push r8
comiss xmm6, xmm0
pmaxub mm3, mm4
nop
push r11
psrlw mm6, 0x36
emms
ror r11w, 8
push r15
emms
psrlq mm2, 0x4f
push rdx
neg r15d
punpckhbw mm5, mm6
pop rdx
nop
psllq mm2, 0x69
nop
pop r15
pcmpgtd mm1, mm6
dec r8d
pop r11
shl r8, 3
psrld mm1, 0x4d
pop r8
cmp dl, r9b
jne 0x2e49a0502
push r9
emms
pop r9
jmp 0x2e49a050a
push r11
psrlw mm6, 0x3f
pop r11
push rcx
inc rcx
pop rcx
cmp dl, 0x41
jne 0x2e49a0528
push r10
nop
push r9
subss xmm0, xmm5
paddsb mm1, mm6
pop r9
emms
pop r10
jmp 0x2e49a0539
push r11
emms
push rax
nop
psrlw mm1, 0x27
pop rax
psrlw mm3, 0x20
pop r11
push rbx
psraw mm4, 0x2e
push r8
movaps xmm9, xmm10
rol ebx, 0xf
pop r8
nop
pop rbx
xor ebx, ebx
mov rdx, qword [rax + 0x10]
xor eax, eax
cmp qword [rdx + 0x30], 0
je 0x2e49a0b6d
push r14
psrad mm0, 0x22
neg r14d
emms
push r9
mulss xmm4, xmm12
pmaxsw mm7, mm5
push r13
nop
pop r13
mov r9, 2
rcl r14d, 3
pop r9
emms
pslld mm2, 0x50
mulps xmm9, xmm0
pop r14
mov rbx, qword [rdx + 0x30]
push r10
shl r10w, 0x17
push r8
nop
neg r10d
push r13
psrlw mm3, 0xa
emms
pslld mm7, 0x35
pop r13
paddusb mm7, mm4
andnps xmm12, xmm13
pop r8
sbb r10d, 0xf
pop r10
cmp edx, 0x5c
jne 0x2e49a05da
push r14
psrad mm6, 0x41
push r13
inc r13d
nop
pop r13
movhlps xmm7, xmm11
pop r14
jmp 0x2e49a05ea
push rax
psadbw mm7, mm3
push r10
rcr r10d, 0x13
nop
pop r10
emms
pop rax
push rcx
emms
push r9
pcmpgtw mm3, mm4
dec r9
pop r9
psllq mm0, 0x3d
pop rcx
movsxd rcx, dword [rbx + 0x3c]
add rcx, rbx
push rbx
emms
push r8
psrld mm1, 0x56
paddsw mm5, mm6
push r13
psrlq mm6, 0x5d
test r8d, r13d
add r13w, r8w
push r15
rol r13b, 0xf
sbb r8d, r15d
sar r8w, 0x17
nop
push r10
rcpps xmm10, xmm8
sbb r15w, bx
psrad mm1, 0x52
emms
psrld mm5, 0x49
pop r10
not r15
and r8, rbx
dec r8d
dec r15
pop r15
psrad mm3, 0x49
pmullw mm0, mm2
and r13b, bl
pop r13
and r8w, bx
nop
pop r8
emms
pop rbx
cmp edx, 7
je 0x2e49a0798
push r9
emms
nop
psrlq mm6, 0x5d
pslld mm1, 0x4f
pcmpeqb mm1, mm0
not r9d
nop
pop r9
cmp bx, r12w
je 0x2e49a07ae
push r13
dec r13
push rdx
emms
push r14
psllq mm5, 0x1b
push r9
pslld mm0, 0x6b
push r8
sub r9, 0x14
push r11
mulps xmm9, xmm10
push rax
ucomiss xmm2, xmm9
pop rax
dec r8d
pop r11
punpckldq mm7, mm3
pop r8
emms
pop r9
neg r13d
pop r14
sub edx, r13d
pop rdx
pslld mm4, 0x5d
pop r13
cmp r9d, ebx
je 0x2e49a07d4
push r11
paddsb mm3, mm4
push r9
not r9
push rax
rcr r9w, 8
push r10
nop
push r14
psrlw mm0, 0x11
pop r14
nop
pop r10
psraw mm4, 0x4d
pop rax
emms
pop r9
psrld mm3, 9
pop r11
cmp rdx, 0x52
je 0x2e49a082c
push r12
sbb r12b, 0x15
push r9
subps xmm8, xmm10
pop r9
neg r12w
pop r12
cmp bl, 1
je 0x2e49a0855
push r10
maxps xmm5, xmm11
addps xmm5, xmm12
emms
emms
inc r10
push r15
emms
movhlps xmm12, xmm0
nop
emms
push r11
por mm2, mm1
nop
movlhps xmm15, xmm0
push r12
emms
nop
push rcx
nop
pop rcx
pcmpgtd mm5, mm2
not r15b
pop r12
nop
neg r11w
psubsb mm5, mm4
pop r11
nop
neg r15b
xchg r15b, r10b
neg r10b
pop r15
emms
psraw mm3, 0x68
nop
paddw mm7, mm3
neg r10b
pop r10
cmp ebx, r9d
je 0x2e49a088e
jne 0x2e49a08b8
push r12
pmaddwd mm3, mm4
push r14
or r12d, r14d
pop r14
dec r12
pop r12
jmp 0x2e49a08b8
push r10
pcmpgtw mm3, mm0
push r15
neg r15w
push rax
psubusw mm6, mm1
push r14
emms
pop r14
xchg r10, rax
pop rax
psraw mm2, 0x46
pop r15
nop
pop r10
jmp 0x2e49a08b8
cmp edx, r13d
jne 0x2e49a0805
push r9
psrlq mm3, 0x54
push r15
add r9, r15
psrad mm2, 0x12
pop r15
emms
pop r9
jmp 0x2e49a0813
push r14
nop
push rdx
dec edx
nop
pop rdx
neg r14w
pop r14
push r10
pxor mm4, mm5
push r8
psrlw mm0, 4
emms
pop r8
paddusb mm6, mm2
pop r10
jmp 0x2e49a08b8
push rax
inc eax
push rcx
inc eax
push r9
test r9d, eax
push r10
movaps xmm10, xmm6
push rdx
emms
pop rdx
rcr r9b, 0xc
pop r10
nop
pop r9
psllq mm2, 0x47
pop rcx
packssdw mm0, mm3
pop rax
jmp 0x2e49a08b8
push r12
psrlw mm6, 0x11
emms
sar r12w, 3
push r15
shl r12d, 1
movaps xmm3, xmm14
nop
push r14
emms
not r12
emms
pop r14
dec r12d
sub r12, 0x11
nop
pop r15
emms
emms
rcr r12w, 0xe
pop r12
jmp 0x2e49a08b8
push r15
psrlw mm2, 0x16
nop
nop
emms
push r14
movups xmm7, xmm9
pslld mm7, 0x57
rcr r14, 4
punpckldq mm6, mm7
pop r14
nop
not r15w
psubsb mm1, mm7
pmaxsw mm6, mm5
pop r15
push rbx
orps xmm13, xmm12
push r14
psrlq mm1, 0x1d
push rdx
nop
push r9
dec rdx
push r12
psrlq mm5, 0x41
push rax
nop
push rcx
pminsw mm3, mm4
pop rcx
nop
pop rax
subps xmm5, xmm11
pop r12
not bx
pop r9
sbb dx, r14w
pop rdx
rcpss xmm6, xmm7
pop r14
emms
pop rbx
mov ecx, dword [rcx + 0x88]
push r11
paddsw mm3, mm6
nop
push rbx
xor ebx, r11d
pop rbx
nop
psrlq mm4, 0x58
pop r11
test ecx, ecx
jne 0x2e49a0936
push r12
not r12d
push r13
emms
nop
push r10
neg r12b
pand mm6, mm7
nop
pop r10
test r12d, r13d
addps xmm10, xmm4
pop r13
psadbw mm4, mm0
pop r12
jmp 0x2e49a0b65
push r11
psllq mm2, 0x65
pop r11
lea rax, [rcx + rbx]
push rax
neg eax
nop
psrlw mm7, 0x28
psraw mm5, 0x20
push rdx
emms
sar eax, 0x15
nop
push r13
and r13d, edx
shl edx, 0x17
push r12
nop
pop r12
nop
dec rax
pop r13
xor rdx, rax
nop
psllq mm6, 0x11
pop rdx
punpcklwd mm6, mm2
psrlw mm5, 8
minps xmm3, xmm1
psrld mm7, 0xe
pop rax
mov ecx, dword [rax + 0xc]
add rcx, rbx
push r10
pslld mm7, 0x40
not r10
addps xmm8, xmm1
movups xmm11, xmm14
psrld mm3, 0x33
push r13
emms
pand mm0, mm1
psrad mm2, 0x31
emms
push rbx
nop
rcpps xmm11, xmm6
ucomiss xmm9, xmm7
push r14
shl ebx, 0x11
nop
push r8
not r10
pop r8
nop
emms
pop r14
and r13, rbx
sar r13d, 5
nop
pop rbx
not r13
psraw mm3, 0x2e
maxps xmm11, xmm8
nop
pop r13
addps xmm1, xmm14
emms
inc r10
psrad mm6, 0x47
punpcklwd mm5, mm3
pop r10
mov r8d, dword [rcx]
or r8d, 0x20202020
cmp r8d, 0x6e72656b
je 0x2e49a0a0a
push r10
nop
pop r10
jmp 0x2e49a0b65
push r11
mov r11, 3
push rbx
neg bl
push r10
paddb mm7, mm6
push r8
pslld mm0, 0x48
pop r8
inc ebx
pop r10
emms
pop rbx
dec r11
jne 0x2e49a0a13
pop r11
mov ecx, dword [rcx + 4]
or ecx, 0x20202020
cmp ecx, 0x61626c65
jne 0x2e49a0b4f
cmp dx, r14w
jne 0x2e49a0ab3
cmp edx, 0x57
jne 0x2e49a0a76
push r15
subps xmm4, xmm11
push rax
rcr eax, 1
nop
pop rax
paddd mm3, mm4
pop r15
jmp 0x2e49a0a88
push r13
psubusw mm1, mm7
push rcx
sub ecx, r13d
sbb r13b, cl
pop rcx
not r13
pop r13
push rbx
movups xmm6, xmm7
push r11
rcpps xmm2, xmm8
andnps xmm7, xmm14
pop r11
inc ebx
pop rbx
jmp 0x2e49a0af6
cmp edx, eax
jne 0x2e49a0acb
push r12
pmaxub mm5, mm1
push rdx
not r12
nop
pop rdx
shl r12w, 0x13
pop r12
jmp 0x2e49a0ae2
push r11
rol r11d, 0xb
push rcx
psrad mm5, 0x30
sub r11w, 0xc
pop rcx
not r11w
pop r11
push r9
sar r9b, 6
push rax
paddb mm2, mm3
punpcklbw mm2, mm1
pop rax
psrlw mm6, 0x66
pop r9
push r15
nop
push r8
minps xmm2, xmm11
emms
push r11
inc r11
addss xmm0, xmm14
nop
push r13
emms
pcmpeqb mm6, mm0
not r15
ror r13, 0x13
push rcx
emms
psrld mm1, 0x16
nop
ror ecx, 5
emms
pop rcx
emms
psadbw mm2, mm5
mov r15w, r8w
nop
pop r13
psrld mm4, 0x66
psrld mm0, 0x30
paddusw mm5, mm0
pop r11
emms
movlhps xmm4, xmm2
pop r8
pmullw mm4, mm2
pop r15
jmp 0x2e49a0b6d
push rcx
mov rcx, 1
push r9
push r14
pop r14
pop r9
dec rcx
jne 0x2e49a0b57
pop rcx
mov rdx, qword [rdx]
jmp 0x2e49a0553
push r11
mov r11, 1
push r9
pop r9
dec r11
jne 0x2e49a0b76
pop r11
test rax, rax
jne 0x2e49a0bab
push r15
psrlw mm6, 0xf
push r8
nop
push rdx
psrad mm1, 0x5c
push rax
rcl r15b, 0xc
pop rax
emms
pop rdx
dec r8
pop r8
emms
pop r15
jmp 0x2e49a131b
cmp dx, r11w
jne 0x2e49a0bc3
push rbx
emms
push r8
addps xmm7, xmm14
nop
pop r8
neg bx
pop rbx
jmp 0x2e49a0bd9
push r11
sub r11d, 0x17
push r13
punpcklbw mm0, mm2
inc r13
pop r13
rol r11d, 0xa
pop r11
push r10
rcpps xmm9, xmm1
push rax
subps xmm0, xmm13
cmp r10b, al
pop rax
neg r10
pop r10
mov ecx, dword [rax + 0x18]
push r9
sub r9, 9
nop
psubw mm1, mm0
push rax
sub ax, r9w
ror eax, 0xe
push rcx
mulss xmm10, xmm1
pop rcx
shl eax, 0xc
emms
pop rax
pminsw mm1, mm3
emms
inc r9
pop r9
mov r12d, dword [rax + 0x1c]
add r12, rbx
cmp dx, 0x2a
je 0x2e49a0d1d
push r15
mov r15, 3
push rax
pop rax
dec r15
jne 0x2e49a0c33
pop r15
cmp r15d, 0x43
je 0x2e49a0d34
push rbx
nop
push rax
xorps xmm1, xmm7
push r11
mulss xmm13, xmm11
pop r11
pcmpgtb mm3, mm7
pop rax
emms
pop rbx
cmp r13w, 0x4b
je 0x2e49a0d4b
push rdx
nop
dec rdx
nop
shl dl, 0x15
push r14
inc r14
psrlq mm0, 0x54
emms
push r9
ror r9d, 8
paddsw mm7, mm3
push r8
emms
pop r8
addps xmm8, xmm14
nop
pop r9
rcpps xmm0, xmm11
punpckldq mm4, mm3
minps xmm11, xmm4
pop r14
emms
rcl dl, 0x15
maxps xmm4, xmm0
emms
pop rdx
cmp r13, r9
je 0x2e49a0d8a
push r11
nop
movlhps xmm0, xmm2
pslld mm4, 0xe
inc r11d
shl r11w, 0x10
push r12
mulss xmm0, xmm15
shl r11d, 0x15
rcl r11w, 0x11
psrlw mm0, 0x27
nop
pop r12
ror r11, 0x10
mov r11d, 0xf
nop
shl r11w, 9
emms
shl r11, 0x13
pop r11
cmp r15, rdx
je 0x2e49a0d9d
push rdx
pmaddwd mm0, mm1
push r13
dec r13d
nop
pop r13
sbb dx, 4
pop rdx
cmp rax, 0x6b
je 0x2e49a0de1
jne 0x2e49a0dee
push rbx
shr bl, 0x17
push r9
shl rbx, 0xd
not r9b
pop r9
neg ebx
pop rbx
jmp 0x2e49a0dee
push r13
mov r13, 2
push rbx
pop rbx
dec r13
jne 0x2e49a0d3d
pop r13
jmp 0x2e49a0dee
push rbx
neg ebx
push rcx
minps xmm1, xmm6
push r8
inc rcx
push rax
nop
push r11
pslld mm6, 0x64
push r14
add ecx, r11d
push r10
nop
pop r10
subss xmm2, xmm1
pop r14
neg bx
pop r11
subss xmm12, xmm10
pop rax
minps xmm1, xmm4
pop r8
psrad mm2, 0x5e
pop rcx
shr ebx, 6
pop rbx
jmp 0x2e49a0dee
push rbx
not rbx
emms
push r12
emms
pop r12
psubusw mm7, mm0
nop
pop rbx
jmp 0x2e49a0dee
cmp dx, cx
jne 0x2e49a0db5
push r8
not r8b
push r12
pslld mm6, 0x49
nop
pop r12
nop
pop r8
jmp 0x2e49a0dc7
push rax
psrad mm0, 0x69
push rdx
mulps xmm9, xmm4
sub eax, 0x17
pop rdx
psubsb mm1, mm7
pop rax
push r11
sbb r11b, 0xf
push r13
pmaxub mm3, mm0
andps xmm7, xmm13
pop r13
rcpss xmm14, xmm11
pop r11
jmp 0x2e49a0dee
push rcx
emms
push r13
nop
pop r13
pslld mm1, 0x43
pop rcx
push r11
emms
push r12
emms
nop
push r15
ror r12b, 0x14
emms
sub r11, 0xe
pop r15
ucomiss xmm7, xmm10
shr r12, 2
pop r12
minps xmm8, xmm14
pop r11
mov edx, dword [rax + 0x20]
add rdx, rbx
push r8
psrad mm2, 0x15
shl r8, 4
nop
push r11
shr r8, 0x13
punpckldq mm7, mm4
paddusw mm1, mm7
push r10
rcpps xmm8, xmm10
inc r11d
sar r11d, 0xb
pop r10
nop
inc r8d
dec r11
pop r11
addss xmm0, xmm13
sar r8w, 0xf
pminsw mm2, mm6
pop r8
mov edi, dword [rax + 0x24]
add rdi, rbx
push r9
pcmpgtw mm3, mm4
pop r9
push rax
pmaddwd mm0, mm4
packssdw mm2, mm0
push rdx
test rdx, rax
movhlps xmm6, xmm3
push r11
dec edx
emms
push r12
pand mm0, mm3
emms
pop r12
subss xmm1, xmm0
subps xmm12, xmm5
pop r11
sar ax, 0xc
emms
pop rdx
punpcklwd mm0, mm6
nop
pop rax
cmp edx, ebx
jne 0x2e49a0f0e
push r9
mov r9, 2
push rdx
push rax
pop rax
pop rdx
dec r9
jne 0x2e49a0ea6
pop r9
jmp 0x2e49a0f47
push rdx
rcl dx, 5
psrlq mm4, 0xe
push r11
ror r11w, 3
psrlw mm5, 0x61
push r10
emms
nop
push r9
test r11w, r10w
orps xmm11, xmm14
pop r9
nop
sbb r11w, 0xd
pop r10
emms
psllq mm6, 0x4e
pop r11
emms
nop
pop rdx
push rbx
psrad mm2, 0x35
paddusb mm1, mm6
psrld mm4, 9
emms
push rdx
andps xmm12, xmm8
psllq mm3, 0x45
nop
push r10
pslld mm0, 0x61
inc edx
push r13
rcpps xmm12, xmm7
pop r13
psrlq mm1, 0xb
psadbw mm1, mm6
pop r10
nop
nop
emms
pop rdx
psrlq mm4, 0x29
emms
nop
psrad mm1, 0xb
pop rbx
lea r10d, [rcx - 1]
lea r13, [0x2e49d8768]
lea rbp, [rdx + r10*4]
add r10, r10
add r10, rdi
push r12
pslld mm5, 0x52
nop
nop
push r11
emms
xadd r12w, r11w
nop
push rcx
psllq mm0, 0x5b
xadd r12, r11
push r13
emms
and cl, r13b
pop r13
nop
subps xmm15, xmm14
pslld mm5, 5
pop rcx
mulps xmm13, xmm5
emms
pop r11
shl r12, 2
pslld mm2, 0x45
pop r12
mov ecx, dword [rbp]
add rcx, rbx
push r11
maxps xmm5, xmm0
psrld mm5, 0x24
nop
paddsw mm5, mm4
push r15
rcl r15d, 5
pslld mm3, 0x12
punpckhwd mm3, mm5
push rbx
inc r11d
inc r15d
push r13
neg r11b
pop r13
mov r11b, r15b
rcl r15b, 0xd
pop rbx
movaps xmm8, xmm15
emms
shl r11d, 0x13
pop r15
psrlw mm6, 0x39
nop
psubw mm5, mm1
nop
pop r11
cmp word [rcx], 0
je 0x2e49a1271
push r14
mov r14, 2
push rbx
psrad mm4, 0x12
push rcx
psraw mm4, 0x4b
emms
pop rcx
pslld mm4, 0x1d
pop rbx
dec r14
jne 0x2e49a103e
pop r14
call fcn.2e499fcb7
mov r11d, esi
shl r11, 4
add r11, r13
mov dword [r11], eax
cmp dx, r15w
jne 0x2e49a10ee
push r15
neg r15d
pcmpeqw mm2, mm6
emms
psubusw mm1, mm2
pcmpeqd mm2, mm7
not r15d
rol r15d, 0xe
pop r15
jmp 0x2e49a1130
cmp rdx, r8
jne 0x2e49a1108
push r11
emms
push r15
xor r15w, r11w
pmaddwd mm1, mm2
pop r15
emms
pop r11
jmp 0x2e49a111c
push r10
psrlq mm3, 0x54
push rdx
rcpps xmm5, xmm4
xchg r10w, dx
pop rdx
paddd mm4, mm3
pop r10
push rax
sbb al, 0xf
push r12
pslld mm6, 0x22
addps xmm2, xmm8
pop r12
psrad mm0, 0x15
pop rax
push rcx
emms
push r15
nop
sbb r15d, ecx
push r13
sub ecx, 0x10
psrld mm5, 0xf
nop
push r14
nop
test r14, r13
rcr rcx, 0x10
neg r15w
push r10
punpckhwd mm2, mm4
nop
pandn mm5, mm6
nop
sar cl, 0x12
pop r10
xadd r14b, r13b
nop
emms
nop
pop r14
nop
dec ecx
psrlw mm7, 0x27
pop r13
psrlw mm2, 0x47
subss xmm14, xmm4
pop r15
nop
pop rcx
movzx eax, word [r10]
mov eax, dword [r12 + rax*4]
mov dword [r11 + 4], eax
push r15
emms
push r10
ror r10w, 0x12
sbb r10d, 0xc
push r8
pandn mm4, mm3
nop
emms
push rcx
movss xmm3, xmm1
shl r15d, 0x17
shl r15, 0x12
nop
pop rcx
por mm0, mm2
psrlq mm3, 0x63
psubusw mm7, mm1
pop r8
psrad mm7, 0x2a
andps xmm4, xmm3
pop r10
psllq mm6, 0x1f
pop r15
mov eax, dword [r11 + 4]
add rax, rbx
mov qword [r11 + 8], rax
push r15
nop
push rcx
xchg r15w, cx
push r10
addss xmm3, xmm9
pop r10
xor r15d, ecx
pop rcx
rcl r15w, 0x13
pop r15
inc esi
push r14
subps xmm9, xmm11
push r11
nop
rcr r14, 0x16
push rax
emms
dec rax
neg r11w
pop rax
nop
psrld mm3, 0xa
pop r11
psrad mm7, 2
pop r14
cmp esi, 0x7d0
jne 0x2e49a1240
push r15
mov r15, 2
push r9
push r10
pop r10
pop r9
dec r15
jne 0x2e49a122c
pop r15
jmp 0x2e49a12d7
push r12
addps xmm1, xmm6
push rcx
rcpss xmm13, xmm10
push rdx
nop
push rax
nop
push r11
dec ecx
push r15
psrad mm2, 0x3e
pop r15
emms
pop r11
psrlq mm2, 0x45
pop rax
inc rdx
pop rdx
inc ecx
pop rcx
maxps xmm3, xmm8
pop r12
push r13
mov r13, 3
push r11
nop
push r9
ucomiss xmm9, xmm0
push r13
cmp r13b, r11b
push r14
psrlw mm4, 6
push r10
xorps xmm7, xmm9
push r8
sub r9, 4
push r12
pminsw mm7, mm1
pop r12
neg r11w
pop r8
nop
pop r10
emms
pop r14
emms
pop r13
psrld mm2, 0x65
pop r9
nop
pop r11
dec r13
jne 0x2e49a127a
pop r13
sub rbp, 4
lea rax, [r10 - 2]
cmp rdi, r10
je 0x2e49a12d7
mov r10, rax
jmp 0x2e49a0f9e
push r11
nop
psraw mm0, 0xd
nop
push rbx
mov ebx, r11d
inc r11d
push r10
sub r10d, 0x10
pop r10
inc ebx
pand mm2, mm7
pop rbx
punpckldq mm4, mm7
nop
pand mm0, mm2
pop r11
mov dword [0x2e49d8760], esi
push rax
psubw mm3, mm4
neg rax
push rbx
sbb ax, bx
pop rbx
psllq mm3, 4
inc eax
pop rax
mov eax, 1
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
ret