Skip to content

Instantly share code, notes, and snippets.

@Const-me
Created November 22, 2019 15:16
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Const-me/1330f061668ba0d3dd584b777c0e9df4 to your computer and use it in GitHub Desktop.
Save Const-me/1330f061668ba0d3dd584b777c0e9df4 to your computer and use it in GitHub Desktop.
00007FFE6C7D2103 vmovdqu xmm5,xmmword ptr [rcx]
00007FFE6C7D2107 vmovdqu xmm6,xmmword ptr [rcx+10h]
00007FFE6C7D210C vmovdqu xmm7,xmmword ptr [rcx+20h]
00007FFE6C7D2111 vmovdqu xmm8,xmmword ptr [rcx+30h]
00007FFE6C7D2116 vpand xmm9,xmm5,xmm0
00007FFE6C7D211A vpand xmm10,xmm6,xmm0
00007FFE6C7D211E vpackusdw xmm9,xmm9,xmm10
00007FFE6C7D2123 vpslldq xmm9,xmm9,1
00007FFE6C7D2129 vpand xmm10,xmm5,xmm1
00007FFE6C7D212D vpand xmm11,xmm6,xmm1
00007FFE6C7D2131 vpackusdw xmm10,xmm10,xmm11
00007FFE6C7D2136 vpsrldq xmm5,xmm5,1
00007FFE6C7D213B vpsrldq xmm6,xmm6,1
00007FFE6C7D2140 vpand xmm5,xmm5,xmm1
00007FFE6C7D2144 vpand xmm6,xmm6,xmm1
00007FFE6C7D2148 vpackusdw xmm5,xmm5,xmm6
var low = brightness( r, g, b, redMul, greenMul, blueMul );
00007FFE6C7D214D vpmulhuw xmm9,xmm9,xmm2
00007FFE6C7D2151 vpmulhuw xmm10,xmm10,xmm3
00007FFE6C7D2155 vpmulhuw xmm5,xmm5,xmm4
00007FFE6C7D2159 vpaddusw xmm6,xmm9,xmm10
00007FFE6C7D215E vpaddusw xmm5,xmm6,xmm5
00007FFE6C7D2162 vpsrlw xmm5,xmm5,8
00007FFE6C7D2167 vpand xmm6,xmm7,xmm0
00007FFE6C7D216B vpand xmm9,xmm8,xmm0
00007FFE6C7D216F vpackusdw xmm6,xmm6,xmm9
00007FFE6C7D2174 vpslldq xmm9,xmm6,1
00007FFE6C7D2179 vpand xmm6,xmm7,xmm1
00007FFE6C7D217D vpand xmm10,xmm8,xmm1
00007FFE6C7D2181 vpackusdw xmm10,xmm6,xmm10
00007FFE6C7D2186 vpsrldq xmm6,xmm7,1
00007FFE6C7D218B vpsrldq xmm7,xmm8,1
00007FFE6C7D2191 vpand xmm6,xmm6,xmm1
00007FFE6C7D2195 vpand xmm7,xmm7,xmm1
00007FFE6C7D2199 vpackusdw xmm6,xmm6,xmm7
var hi = brightness( r, g, b, redMul, greenMul, blueMul );
00007FFE6C7D219E vpmulhuw xmm7,xmm9,xmm2
00007FFE6C7D21A2 vpmulhuw xmm8,xmm10,xmm3
00007FFE6C7D21A6 vpmulhuw xmm6,xmm6,xmm4
00007FFE6C7D21AA vpaddusw xmm7,xmm7,xmm8
00007FFE6C7D21AF vpaddusw xmm6,xmm7,xmm6
00007FFE6C7D21B3 vpsrlw xmm6,xmm6,8
00007FFE6C7D21B8 vpackuswb xmm5,xmm5,xmm6
Sse2.Store( dst, bytes );
00007FFE6C7D21BC vmovdqu xmmword ptr [rdx],xmm5
src += 64;
00007FFE6C7D21C0 add rcx,40h
dst += 16;
00007FFE6C7D21C4 add rdx,10h
while( src < srcEnd )
00007FFE6C7D21C8 cmp rcx,rax
00007FFE6C7D21CB jb 00007FFE6C7D2103
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment