X-Git-Url: https://git.zerfleddert.de/cgi-bin/gitweb.cgi/proxmark3-svn/blobdiff_plain/cd777a0545066d87b1e0f838cdee0604941919d7..c48211f7ed175c91d92044e7e08b921e06f8ff3f:/client/nonce2key/crypto1_bs.c?ds=sidebyside

diff --git a/client/nonce2key/crypto1_bs.c b/client/nonce2key/crypto1_bs.c
index 9a0272dd..7fd1b715 100644
--- a/client/nonce2key/crypto1_bs.c
+++ b/client/nonce2key/crypto1_bs.c
@@ -80,7 +80,9 @@ inline const bitslice_value_t crypto1_bs_lfsr_rollback(const bitslice_value_t in
 // note that bytes are sliced and unsliced with reversed endianness
 inline void crypto1_bs_convert_states(bitslice_t bitsliced_states[], state_t regular_states[]){
     size_t bit_idx = 0, slice_idx = 0;
-    state_t values[MAX_BITSLICES] = {{0x00}};
+	state_t values[MAX_BITSLICES];
+	memset(values, 0x0, sizeof(values));
+	
     for(slice_idx = 0; slice_idx < MAX_BITSLICES; slice_idx++){
         for(bit_idx = 0; bit_idx < STATE_SIZE; bit_idx++){
             bool bit = get_vector_bit(slice_idx, bitsliced_states[bit_idx]);
@@ -90,7 +92,8 @@ inline void crypto1_bs_convert_states(bitslice_t bitsliced_states[], state_t reg
         // swap endianness
         values[slice_idx].value = rev_state_t(values[slice_idx].value);
         // roll off unused bits
-        values[slice_idx].value >>= ((sizeof(state_t)*8)-STATE_SIZE);
+        //values[slice_idx].value >>= ((sizeof(state_t)*8)-STATE_SIZE); // - 48
+		values[slice_idx].value >>= 16;
     }
     memcpy(regular_states, values, sizeof(values));
 }