X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=Client%20Applications%2Frcracki_mt%2FChainWalkContext.cpp;h=4fdcf6e2d08811264d1d2ce58648fa4fb016b15d;hb=47c71901e7a97c226c8f1df749e3606d43656f32;hp=417d90013b4eee211aaedb431b90cd11bdd63e80;hpb=86bbf0fd5ba4e07d3279b4179fd8fc808198eaae;p=freerainbowtables diff --git a/Client Applications/rcracki_mt/ChainWalkContext.cpp b/Client Applications/rcracki_mt/ChainWalkContext.cpp index 417d900..4fdcf6e 100644 --- a/Client Applications/rcracki_mt/ChainWalkContext.cpp +++ b/Client Applications/rcracki_mt/ChainWalkContext.cpp @@ -5,7 +5,7 @@ * Copyright (C) Zhu Shuanglei * Copyright Martin Westergaard Jørgensen * Copyright 2009, 2010 Daniël Niggebrugge - * Copyright 2009, 2010 James Nobis + * Copyright 2009, 2010, 2011 James Nobis * Copyright 2010 Yngve AAdlandsvik * * This file is part of rcracki_mt. @@ -25,7 +25,7 @@ */ #if defined(_WIN32) && !defined(__GNUC__) - #pragma warning(disable : 4786 4267 4018) + #pragma warning(disable : 4786) #endif #include "ChainWalkContext.h" @@ -410,8 +410,12 @@ void CChainWalkContext::Dump() printf("hash routine: %s\n", m_sHashRoutineName.c_str()); printf("hash length: %d\n", m_nHashLen); + printf( "m_vCharset[0].m_nPlainCharSetLen: %d\n", m_vCharset[0].m_nPlainCharsetLen ); + printf( "m_vCharset[1].m_nPlainCharSetLen: %d\n", m_vCharset[1].m_nPlainCharsetLen ); + printf("plain charset: "); unsigned int i; + for (i = 0; i < m_vCharset[0].m_nPlainCharsetLen; i++) { if (isprint(m_vCharset[0].m_PlainCharset[i])) @@ -553,15 +557,11 @@ void CChainWalkContext::IndexToPlain() } m_Plain[i] = m_vCharset[j].m_PlainCharset[nTemp]; #else - __asm__ __volatile__ ( "mov %2, %%eax;" - "xor %%edx, %%edx;" + __asm__ __volatile__ ("xor %%edx, %%edx;" "divl %3;" - "mov %%eax, %0;" - "mov %%edx, %1;" - : "=m"(nIndexOfX32), "=m"(nTemp) - : "m"(nIndexOfX32), "m"(m_vCharset[j].m_nPlainCharsetLen) - : "%eax", "%edx" - ); + : "=a"(nIndexOfX32), "=d"(nTemp) + : "a"(nIndexOfX32), "rm"(m_vCharset[j].m_nPlainCharsetLen) + : ); m_Plain[i] = m_vCharset[j].m_PlainCharset[nTemp]; #endif break;