Fix -m 5100 multihash and benchmark
[hashcat.git] / OpenCL / m10100_a0.cl
index 90f6c95..d1bd6e9 100644 (file)
@@ -56,14 +56,12 @@ __kernel void m10100_m04 (__global pw_t *pws, __global kernel_rule_t *  rules_bu
   if (gid >= gid_max) return;
 
   u32 pw_buf0[4];
+  u32 pw_buf1[4];
 
   pw_buf0[0] = pws[gid].i[ 0];
   pw_buf0[1] = pws[gid].i[ 1];
   pw_buf0[2] = pws[gid].i[ 2];
   pw_buf0[3] = pws[gid].i[ 3];
-
-  u32 pw_buf1[4];
-
   pw_buf1[0] = pws[gid].i[ 4];
   pw_buf1[1] = pws[gid].i[ 5];
   pw_buf1[2] = pws[gid].i[ 6];
@@ -72,7 +70,7 @@ __kernel void m10100_m04 (__global pw_t *pws, __global kernel_rule_t *  rules_bu
   const u32 pw_len = pws[gid].pw_len;
 
   /**
-   * base
+   * salt
    */
 
   u64x v0p = SIPHASHM_0;
@@ -98,6 +96,10 @@ __kernel void m10100_m04 (__global pw_t *pws, __global kernel_rule_t *  rules_bu
 
     const u32x out_len = apply_rules_vect (pw_buf0, pw_buf1, pw_len, rules_buf, il_pos, w0, w1);
 
+    /**
+     * siphash
+     */
+
     switch (out_len / 8)
     {
       case 0: w0[1] |= out_len << 24; break;
@@ -181,14 +183,12 @@ __kernel void m10100_s04 (__global pw_t *pws, __global kernel_rule_t *  rules_bu
   if (gid >= gid_max) return;
 
   u32 pw_buf0[4];
+  u32 pw_buf1[4];
 
   pw_buf0[0] = pws[gid].i[ 0];
   pw_buf0[1] = pws[gid].i[ 1];
   pw_buf0[2] = pws[gid].i[ 2];
   pw_buf0[3] = pws[gid].i[ 3];
-
-  u32 pw_buf1[4];
-
   pw_buf1[0] = pws[gid].i[ 4];
   pw_buf1[1] = pws[gid].i[ 5];
   pw_buf1[2] = pws[gid].i[ 6];
@@ -197,7 +197,7 @@ __kernel void m10100_s04 (__global pw_t *pws, __global kernel_rule_t *  rules_bu
   const u32 pw_len = pws[gid].pw_len;
 
   /**
-   * base
+   * salt
    */
 
   u64x v0p = SIPHASHM_0;
@@ -235,6 +235,10 @@ __kernel void m10100_s04 (__global pw_t *pws, __global kernel_rule_t *  rules_bu
 
     const u32x out_len = apply_rules_vect (pw_buf0, pw_buf1, pw_len, rules_buf, il_pos, w0, w1);
 
+    /**
+     * siphash
+     */
+
     switch (out_len / 8)
     {
       case 0: w0[1] |= out_len << 24; break;