From e55d6f75ccd60fce338e5f54b3a3246a5dd3c8d3 Mon Sep 17 00:00:00 2001 From: "mr.exodia" Date: Fri, 11 Oct 2013 15:20:13 +0200 Subject: [PATCH] - updated readme - fixed 'TypeName' bug (cypher) --- Release/x32/TitanEngine.dll | Bin 628224 -> 628224 bytes Release/x32/TitanEngine.exp | Bin 57030 -> 57030 bytes Release/x32/TitanEngine.lib | Bin 96968 -> 96968 bytes Release/x32/TitanEngine_x86.a | Bin 311186 -> 311186 bytes Release/x64/TitanEngine.dll | Bin 723456 -> 723456 bytes Release/x64/TitanEngine.exp | Bin 56205 -> 56205 bytes Release/x64/TitanEngine.lib | Bin 94948 -> 94948 bytes Release/x64/TitanEngine_x64.a | Bin 311994 -> 311994 bytes TitanEngine/TitanEngine.cpp | 18 +++++++++--------- readme.txt | 1 + 10 files changed, 10 insertions(+), 9 deletions(-) diff --git a/Release/x32/TitanEngine.dll b/Release/x32/TitanEngine.dll index 909cfec9970e5fe5086e5ebfac6af42af831ce70..9f6dd5c3dde6455022a5d640f13e2e0bd56ac45b 100644 GIT binary patch delta 61 zcmZozqt>uSZ2=?GgkQ}}jO|Q}Aj|~B%s|Ytor#fkksVO3eVIKg5VHX>I}mehUuMr4 G6$St`ZW7c0 delta 61 zcmZozqt>uSZ2=<_mZMq4@ delta 23 fcmX@Mm-*OUW;P#2CI-g$6WNlO7~gNqin#{>V*Ch_ diff --git a/Release/x32/TitanEngine.lib b/Release/x32/TitanEngine.lib index e94c2e9aa5e984da902a966f8451ab46038d9aa7..bb30b1ed648f80c249036e78a47cdbce58fcc214 100644 GIT binary patch delta 8559 zcmZ`;d326v7WY_#B(i>4MQp*>2(bp4h&>`AQu`9os-jAiQPpXr%k&uSkmgahM>8#L zr>C89hS77J9tW*TNl~O)MeRy8wS>}^D)TJA`{w<=nE&!V?|tt2yT5zCHP1t)Bm;9h$;_f7E8`aehduUwY@Gj$4E4^GlhxEu>NDo$>kG<=fj^$(OcW zcHXSm9-^hox2Fi4MajQ^8LrOcogJCxNS564>gPG147AUiJ~7WH__=7WdCvXR%2QXb zFb6w6O}7`$T!@mVtBg|b&J25oOK-wxYGsW4 zp`wEocR82wxvz5@_&M`r6ipp2Oq8*^tzM}wKDXPPmF=#ZjeEPHEOU?XeeRy2wFcF_ zAnksfaw$T&G>xv05UDn{l0ci{+{$bm46+B6m4mGYXiWbC8ddI^bMB(+1<2HhaCzVh zq$A`fW4_~FTt;!q_o6tcc;G&Z0H?ym`|8G2z0bx}w$(w>g#CWVsN9cxsBn)j>)d(g z%eue_J7C2e`y~f_^<0L4%l4#$b@l8$h_t)vns%s;3-2GoRiwjHg=cvEa#dY5H*x0j z;E}I<)qKUzP&4qbOAWxX=`aGTIczEu|MeJ@RiSKDwnf>xuk-C;&EY5+^i8;_Z#RXO zZmPba6Whw%Z)|H&$XJVx_rA%gt0wV?RYPYy!uD4erK6{Ag6Ai;lKZ|!6KH^I)5c7y z66vMPJU^k09Qm!4AdO1XMPBu`w^mR!K1S}rYq{>Ki6!Ca1DsfUlw&z+13qR0Haa!? ztUG3rE)|gVbL?>dJM*M@E$; zR2;RRBf?~6mB-pga5<+DoGQPO@2=#tWYzfyS+Y7zUOSD1>x!B8x?;oezKPtlx`~{B z22KJTMofbv+lakAxv`u)xw%pm;#j9m2~d}!Z*itArv6{PimqCtu^WI_$Vb8D_cxyE*G7L zL)u}T;JxQj0d#8C_uQ#=bbb6i>WTN>3%>8yUcmb^7mU8Zi@j_;&RmG1jX5GbR8wcP za(0|1;-RzW&XwXIFoQeC{qJbUGJi<3iomcR{NPK^@t06&Wr#;)*(Dbr*s)pmBaVQu zdHf8PKk*~fxLJOh!fWw@D2kk^QqKsZ5*`%Q@C2Tv|74#XZr$_~CBov*7pj7lCB-Hd`-_Aa~OOWsBN46o1Js3jF$@F_q0 za>4PRt;4lZ-NXf?t>PvOxT)r8Rk{|b(Q(>b`!- zyk7QucjuJ>hQ9e%9kh6}rEGfFUUV3_@UHJPIer(&z!I7F2NpP#x$+MeIGu#7P%*F1 zi<7hN!EH@h|GsC|y-)Ai6dD?M8_)U>l0w5yBU16jEQnZM_RCc+#u&1p-%-#l)c}%W7qEz~FZDuZAv?#<->x z4WLBwhHLJ1RQJ}Xdtyj5{inVNbr^xc4Pkkr1nE=MM$NFS{Gm&RYk4rht`4R}3Dw+#)A)llLIwyAB zrwxG|i0WL^AnjBpKBVI%X$OaOlLzx94!tN=pR@<5Xu^HFf`0R zTRXy#8(kKI2_4E7g^AamQG?*1i#L&t55kcR;-Vx(peRn^-iq)qTzn+UfE%eiQlPU{ z4UA=7gKf%k|D}EX78*)<+EtG6eeufQnAf@MT{H40XB>(H$zv)xm(XkppHR92mfVDG%uEsJLbsUCb_0qXVQ*7wF;j}DHJb-~K_3ONMTT;__wqDDTR2Yv`It92G z=vfPHi&Uc||b>5b@>maGTKJJ*s+hCQDO6S)7e9@2>f)(VQ4)T*}sZKm|NIHY19 z&@Wu(^=VFjw1OS;tH`8Bhg)Sus3=kNFzN9v&R6Dj9Q~Ha#bKv%TeC&5_1@NCYll`f zHqzQK(3!C}wc)BVn|a%E7oy+ZYwPYer|`#=GiNhm=xzww%Rx$MJJ!jVY}TGJ3D~Y^ z&#;9fYmywR=Bo@XO+o;*%Mx8m64+++hGl=t(u58Inxz_}2NUE(Wc{Qabi%8kv zV5sx^MWQFX$=nl6*>CX)Pm8e5oJTI-^3I${1x91#A!X$nt?De|seKAa*rCqi6qmTp z+;1riZ;dUZKrd%E=zfZ5NpE!VFLq5AKLvBTG8Em>U+l`9i{J`UAH=Y~Do~|{MbNcW zo)#!hRyQt=U2JJfH()i z?ZLIxhxXSJ4erUlz`4!N0SF+m7blVXth^V}$ECoGEl6j#T)xr~K6NNM_fM>z4eobNIPUBW7~~%%v^T@Q zRWkZBz5uw*d|)m){pX?enX3PG9jn`aYcp8|8asFZH#Vs8r2#0JEAn3kaO42t%z=F1 zhTD;W4}e?dASM^?_zi>D2ZWJ0*mYo{(EC9mwHP8ia^d+77Q$e#fFVo|JSd8XFfuv4 zcZTrva?iweB!-Fv`o~c2L+q@^qW;d)o|X+0?dZZ79+)-e%Ni{iCh#rMep{rw&H<26 zlEp;G&GB0nw*q6sn9;uhymUWH#8BCA<{iFMJ=}dqe>gOE^k<=Dx{@v0(#mY!`&|3> z#cck`z=~##fFf57&yC=csopdbuZ_~%RrQ4MhSR(p^o0KYZoc1`k&^>fSu@fuV#y;> zVV7d{&gTa|HO}P&u)yM6K#D2;QZ9oI5(T6DBo2+@Dr?jj;?R?&k0y?t8^dYKY}fBD zmor=Q*fuKT9qq1+$){fN(kXScs=;TYd1nLd#pg2*0_iLAq0k|@JNaBC7k@5#824Ph zoO_skfv)^9Ze6AZdOsbcdC3!7i#z`ELFr?e=HTAPW7$0PSEO*x% z-+@cUbHkyjE|2GefCV0zzy(n}VbZVvgOsDvUpB@=HzzP!5Lxy_4i)#ePUQQLNS@>; zQ9g+!5K8c5|4>RMvzt(IbF!b38B_d}9N`0J8_1f<<*L(&<7q&F2$z{-1L)-hjtCj) zTfi9skTw-CkbIViNm@sg4E!j7a;Ld;7^LYRSd*!Bp@^b^ncTV17hA~sbk{n-oT|lR zXmcTe>A)^<`u~k%n!WS>bjO7G;7|9aJ2AMvmP}W0J3U4%2?eeX1>E4(kD$T%V9cWr z;Pf4j0#PosduMQMP^`7i0cgJ2V_Z(mp5n(G|0-+-^zW(J6#AIr{hH+s^>el63ms>(1;kZ8n*#;b1Lv?) zkSLx538#^-&hZ~nbDpRjQOCzJbg~aG7oQu(8eu5jy&|h+vs2bjH-W(+3NkgxRJ^T*Ls#Jum!$E%{F&cU*1FvcW`AIVT6N`F> z!K0t%m0isN^B?X6CB9O{K8^Yd=PQEiv(74|>a`#bb#K6x0s3bx;qU;~Q%e}mu5p(8 Y49^)1o^8$nI?=n7L60sdUn-LS2i2c7iloUm(Rn)FjQzVoYRpu_g=gs?lG5>wqubu2-*K(|Q5* zWMYa(rteO+8WYQn^rT&x=9voW3vW{`-cgA+m(zE}$m_ejKC;>6E?J{m%LZxHqgKYq zAIsZYahG%bzVLN!13zb+jH0Q-g^4nDx7924#^-mNwUXU+vvF@Xlx6HOzR%q=wAP^7 z7o^>fQ!Yg)m!{FR5hBgTRvc(koKum7g+X?qqGGVs0FCKiLZixEbIx6Ky#SdO5iSpW ziFAbgY|MAqi_Iub*QW zepMG3VF#?3W54)-ub#^gaM_-8u&$oH2a$GHU3(p>RN@(4zfxIO%?+%% zJb3hLUo~IzGt>+`>{0`;Y&wjf2SJ zrK_rM=)|@%=Udwv6f)ML#9jSV%5+YkFfpKS?TDZo8X0st>nIM&;%Ob+O#o~ zrbK!wGcQbNBS(H`B}k*vbdguReON1~93Lb1;I&+L)x?r;^Z`z+J<72hwE-Wq0UMo~ zebybbNS6x8`Z@MEfSqyDJg+{UV?uK_1b>g#;NX{k@7T4x&`EijAy<8$AUmGuX!8Q9 zd+`LQPH~C}x4jY_sKQ+}ESjDO6HZ2q>A5GZX^DbXowNlt45WRXaEiNBCCE^cPS8*} z?Nl5k%@JWTqtavTBe?9-2u_vX$ahonnX>YHge+bYCaX^);kshxy{_1Byl)~mt!X0X zpMjGAhY{1@$TDK@Ol~YEPj0SMg*et}Qv%ebD!CDm3zCIr0V5xC+2;LIQ-WpnStlPB zA;y+Q$Vem8|BVn@(?o>G&Ywrw8m(&vLtT_m4uk?^|4B`>ptUCb9UrCSVr7dd&E=x= za7a6>6TJ64Du7PS{DC{w9$laOfO_J+_k!>HwHNUI%mt$_@M2F}4@D5PF?IK~V)y;92_5_SxaqO+SNzAP|4q*Y(wxVG}uR zd<8khVX^oMata?WU4cAe$iIr1Knwe?+V*tFDzh5>>dH-dH8!b0ol#(}W}3oOk8HRr z**DuYa2ahCe+@1`W3aAjOI6kRx~jvd_z}_7D5z!clIynaZPmA(ZiPHY%H`Kl`()Lr$Z{tiJjMs($QNbelhizVz*KW6xEAMo$1yr(zM6~9Y)T;t(-pb9NeF=$(JnL5sIq%BFWgn0hAEWh%Jqdzu`-3uIu3%>4rc9LikrhYOreLRP4l z*XPE`S@+0RUrJ0Hv3d|N5SW6qReVbTX+K64$a4?$n;j>nI zG^iDAY~bcDeQX#JeQdmCL=xz&#sWkPl{Xr*N*JZWCVp0{n)t`0y`32#P<0$Vdht{M zLXfr&RM3L5*`{9#B+(IJ6ap$=V?eV2dH8(+mqDx4R-rKgE^0I@g7U_ z97Bs+uz7}pj;*EzYqir8%?bfBosGvsu+gxBv8*Sc&2%umw+`KmGSfXZix!qGOwNoU zowJ?F(3Ku>v?Usbm}n_5hLfzj-E7cbv%Ay=@mwr@6vObaKrW4Sp~Fb)bK(mn9ojdN z*2D_01*|K z2lNe>xxJgyAFW`=d=;7W=x{5o2o)xZ?j}9H#rfL2j-y+NTpV^Pr!`vyTkmZRwsvS$ zW209a20AnLrZ!wvW;1VF?n3n2`)%F*<`n*za^`Hm7`hvR_HvN2x*h9eOg2kmOaitm zk{Gsdq%_&FYHnp{X)*$+9hT@)vcNQ>CoKCdOB31)Op>*O9F@1{@R5(M9r*OZ^%1S> z!22K)*pc^uikEg|2)oSHbi_8EWNC_*6(P6^FYj~nSigrj_nLqWNwrlaucEXR5h)uS z40XO=BznS|!ac#1{Wh=gX%W_m^T_2}-iZ^bz-X*Iq^wlas!k%Fl2Sp!4s{l#y2Ld^ zZlyB3HMWcbJ)B*q`>CQOz1i8n*fpK~6wK+uP;^Isu?ur9g3C{P5X1haK$R92LDgw| zTA(W8_{G_e>8)U!$>p*ZgJ zM+xNZ#a+*BRosi)%9ZNU-kfPTv!r)zL2B8ksZg1YOQ5(u%tSsDQZw~>L0l_Z+lP%Z z+tu`8M&yHTUSGK3D#g{lTne1A`RVMI%U3$Ws}4oy{E5}G!Trt($DP#=2Kl3e_V)8{ zm45vhUjW=@UND=S{`1iK4Ap z!|lkx2f!_35R(gc{Dwj71Hwog>{>8U==mU#S_}~$x$r!H!I&=q3K+ulzz0Rq5Jo1a z_s$SLz1(MFI}$@h0{vqs_aSChV^QDpB+;^Aq8(ir!v|)Kxmlwn!vyXU?cE~Xbryhx z;!Gw&ZjM`-+zN~hV@7`icqIyDj!)abNdP3j7oBJD0oaNbImC})R5K9?} z3cD1mcRnBd)HsJ1zygbN04b*UOF0ZWNaT<5lQ=YrtE^FDh(n(&y)|*{+!#(QD{5$tpM za_$lK1-kOaxOJHt==pSz<|R*TE$;Z{gVM(`&B47-#Hjy5X?D*C(;XA$!k_LX!Ee>%>BZvjD68Wel63ms;&1;kZ0n*#;b1Lv?) zkSLl138#^-&hbB@<~&(@L^=P0(xoQ>3W=kqU@ndx^9gP!L*L{qQ8m1u)S7~yV#oni zGoE4vSUBM#m*M$y&hf@R?Szfbs8Uq?fb{ zxoti4h&NGb!)(t0s3bx;qU;~Q%e}muH!7{ YSw3fQ@N9Dy(23rq40?1y*;0}6KX7DW&;S4c diff --git a/Release/x32/TitanEngine_x86.a b/Release/x32/TitanEngine_x86.a index 0b27b262bec38d57cce16f46f149c8ecfceff2cf..3c2c556b73d51c9ca1973bf360ff94166ad2c224 100644 GIT binary patch delta 15136 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 B`ZoXo delta 15136 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 diff --git a/Release/x64/TitanEngine.dll b/Release/x64/TitanEngine.dll index 3c4b4a8ad28366daf2014f1d3995f2311068b5d5..76ec624fc4b9e601216d80c098eec292596a0f53 100644 GIT binary patch delta 58 zcmZpeqSG)%XTk@jEx#H+wSHo3{lwJziMjO?OY0}rt)JL7O#(`^FPqE;#Oy%K0mPi! Kmrdr1Dgyv`f*lV4 delta 58 zcmZpeqSG)%XTk?2miLXHT0b$ieqw6<#N7IcrS%i*)=zAkCIKbdmrZ5^Vs;?r0AkMV K%O-P0l>q=lMH`s_ diff --git a/Release/x64/TitanEngine.exp b/Release/x64/TitanEngine.exp index 31035bc83c1d1bbc522e334200d57f51bf852897..7e7ba951352b2ad5ac43292ae73213c876ac59fa 100644 GIT binary patch delta 23 fcmeC(&fL45nJuM_iDApHiEK$sTYhcKQoaoUZjTA^ delta 23 fcmeC(&fL45nJuM_iGk()M7AU*miHU8ly3t7VSfmF diff --git a/Release/x64/TitanEngine.lib b/Release/x64/TitanEngine.lib index b483798a12f6d6c9bca100cc1973413048678ecd..fc94f007bb316723c26d5edbdeae75f66f536357 100644 GIT binary patch delta 8387 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 delta 8387 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 Pxj=6bh57vpH0S>T@%1hP diff --git a/Release/x64/TitanEngine_x64.a b/Release/x64/TitanEngine_x64.a index 75903b3daf88aa7c2c3c1bc55a6cee2ffa3efc2a..ff10b21bf9d34e6c6b7cd4e20ae2fccacd174379 100644 GIT binary patch delta 15013 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 delta 15013 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.Length != NULL) + if(pObjectTypeInfo->TypeName.Length != NULL) { - WideCharToMultiByte(CP_ACP, NULL, (LPCWSTR)pObjectTypeInfo->Name.Buffer, -1, (LPSTR)HandleNameData, 0x1000, NULL, NULL); + WideCharToMultiByte(CP_ACP, NULL, (LPCWSTR)pObjectTypeInfo->TypeName.Buffer, -1, (LPSTR)HandleNameData, 0x1000, NULL, NULL); ReturnData = (ULONG_PTR)HandleNameData; DontFreeStringMemory = true; } @@ -25536,10 +25536,10 @@ __declspec(dllexport) long long HandlerGetHandleDetails(HANDLE hProcess, DWORD P cZwQueryObject(myHandle, ObjectTypeInformation, HandleFullData, 8, &RequiredSize); cZwQueryObject(myHandle, ObjectTypeInformation, HandleFullData, RequiredSize, &RequiredSize); RtlZeroMemory(HandleNameData, 0x1000); - if(pObjectTypeInfo->Name.Length != NULL) + if(pObjectTypeInfo->TypeName.Length != NULL) { - //WideCharToMultiByte(CP_ACP, NULL, (LPCWSTR)pObjectTypeInfo->Name.Buffer, -1, (LPSTR)HandleNameData, 0x1000, NULL, NULL); - lstrcpyW((wchar_t*)HandleNameData, (wchar_t*)pObjectTypeInfo->Name.Buffer); + //WideCharToMultiByte(CP_ACP, NULL, (LPCWSTR)pObjectTypeInfo->TypeName.Buffer, -1, (LPSTR)HandleNameData, 0x1000, NULL, NULL); + lstrcpyW((wchar_t*)HandleNameData, (wchar_t*)pObjectTypeInfo->TypeName.Buffer); ReturnData = (ULONG_PTR)HandleNameData; DontFreeStringMemory = true; } @@ -26016,9 +26016,9 @@ __declspec(dllexport) long HandlerEnumerateOpenMutexes(HANDLE hProcess, DWORD Pr cZwQueryObject(myHandle, ObjectTypeInformation, HandleFullData, 8, &RequiredSize); cZwQueryObject(myHandle, ObjectTypeInformation, HandleFullData, RequiredSize, &RequiredSize); RtlZeroMemory(HandleNameData, 0x1000); - if(pObjectTypeInfo->Name.Length != NULL) + if(pObjectTypeInfo->TypeName.Length != NULL) { - WideCharToMultiByte(CP_ACP, NULL, (LPCWSTR)pObjectTypeInfo->Name.Buffer, -1, (LPSTR)HandleNameData, 0x1000, NULL, NULL); + WideCharToMultiByte(CP_ACP, NULL, (LPCWSTR)pObjectTypeInfo->TypeName.Buffer, -1, (LPSTR)HandleNameData, 0x1000, NULL, NULL); if(lstrcmpiA((LPCSTR)HandleNameData, "Mutant") == NULL) { copyHandle = (HANDLE)HandleInfo->hHandle; @@ -26170,9 +26170,9 @@ __declspec(dllexport) long HandlerGetProcessIdWhichCreatedMutexW(wchar_t* szMute cZwQueryObject(myHandle, ObjectTypeInformation, HandleFullData, 8, &RequiredSize); cZwQueryObject(myHandle, ObjectTypeInformation, HandleFullData, RequiredSize, &RequiredSize); RtlZeroMemory(HandleNameData, 0x1000); - if(pObjectTypeInfo->Name.Length != NULL) + if(pObjectTypeInfo->TypeName.Length != NULL) { - //WideCharToMultiByte(CP_ACP, NULL, (LPCWSTR)pObjectTypeInfo->Name.Buffer, -1, (LPSTR)HandleNameData, 0x1000, NULL, NULL); + //WideCharToMultiByte(CP_ACP, NULL, (LPCWSTR)pObjectTypeInfo->TypeName.Buffer, -1, (LPSTR)HandleNameData, 0x1000, NULL, NULL); lstrcpyW((wchar_t*)HandleNameData, (wchar_t*)pObjectNameInfo->Name.Buffer); if(lstrcmpiW((LPCWSTR)HandleNameData, L"Mutant") == NULL) { diff --git a/readme.txt b/readme.txt index 201b4fd..761a5af 100644 --- a/readme.txt +++ b/readme.txt @@ -12,4 +12,5 @@ The following things have been fixed/added (list might be incomplete): - added memory breakpoints on execute - added QWORD hardware breakpoints - general code fixes +- smaller and better DLL loaders